Package org.eolang.maven
Class ParseMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.eolang.maven.ParseMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
@Mojo(name="parse", defaultPhase=GENERATE_SOURCES, threadSafe=true, requiresDependencyResolution=COMPILE) public final class ParseMojo extends org.apache.maven.plugin.AbstractMojo
Parse EO to XML.- Since:
- 0.1
-
-
Field Summary
Fields Modifier and Type Field Description protected File
cache
EO cache directory.static String
CACHE
Subdirectory for parsed cache.protected File
classesDir
Directory where classes are stored in target.static String
DIR
The directory where to parse to.protected File
foreign
File with foreign "tojos".protected String
foreignFormat
Format of "foreign" file ("json" or "csv").protected Map<String,? extends CommitHash>
hashes
Commit hashes.protected org.apache.maven.plugin.BuildPluginManager
manager
Maven plugin manager.protected boolean
offline
If we are offline and not able to download anything from the internet.protected File
placed
The path to a text file where paths of all added .class (and maybe others) files are placed.protected String
placedFormat
Format of "placed" file ("json" or "csv").protected PlacedTojos
placedTojos
Placed tojos.protected org.apache.maven.project.MavenProject
project
Maven project.protected boolean
rewriteBinaries
Rewrite binaries in output directory or not.protected String
scope
Current scope (either "compile" or "test").protected org.apache.maven.execution.MavenSession
session
Maven session.protected File
targetDir
Target directory.protected Integer
timeout
Mojo execution timeout in seconds.protected File
transpiled
The path to a text file where paths of generated java files per EO program.protected String
transpiledFormat
Format of "transpiled" file ("json" or "csv").protected TranspiledTojos
transpiledTojos
Cached transpiled tojos.protected boolean
unrollExitError
If set to TRUE, the exception on exit will be printed in details to the log.protected boolean
withVersions
Used for object versioning implementation.protected File
xslMeasures
The path of the file where XSL measurements (time of execution in milliseconds) will be stored.static String
ZERO
Zero version.
-
Constructor Summary
Constructors Constructor Description ParseMojo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
exec()
void
execute()
Execute it.protected com.yegor256.xsline.Train<com.yegor256.xsline.Shift>
measured(com.yegor256.xsline.Train<com.yegor256.xsline.Shift> train)
Make a measured train from another train.protected ForeignTojos
scopedTojos()
Tojos to use, in my scope only.
-
-
-
Field Detail
-
ZERO
public static final String ZERO
Zero version.- See Also:
- Constant Field Values
-
DIR
public static final String DIR
The directory where to parse to.- See Also:
- Constant Field Values
-
CACHE
public static final String CACHE
Subdirectory for parsed cache.- See Also:
- Constant Field Values
-
project
@Parameter(defaultValue="${project}", readonly=true) protected org.apache.maven.project.MavenProject project
Maven project.
-
session
@Parameter(defaultValue="${session}", readonly=true) protected org.apache.maven.execution.MavenSession session
Maven session.
-
manager
@Component protected org.apache.maven.plugin.BuildPluginManager manager
Maven plugin manager.
-
classesDir
@Parameter(defaultValue="${project.build.directory}/classes", readonly=true, required=true) protected File classesDir
Directory where classes are stored in target.
-
foreign
@Parameter(property="eo.foreign", required=true, defaultValue="${project.build.directory}/eo-foreign.csv") protected File foreign
File with foreign "tojos".
-
foreignFormat
@Parameter(property="eo.foreignFormat", required=true, defaultValue="csv") protected String foreignFormat
Format of "foreign" file ("json" or "csv").
-
targetDir
@Parameter(property="eo.targetDir", required=true, defaultValue="${project.build.directory}/eo") protected File targetDir
Target directory.
-
scope
@Parameter(property="eo.scope") protected String scope
Current scope (either "compile" or "test").
-
placed
@Parameter(property="eo.placed", required=true, defaultValue="${project.build.directory}/eo-placed.csv") protected File placed
The path to a text file where paths of all added .class (and maybe others) files are placed.- Since:
- 0.11.0
-
placedFormat
@Parameter(property="eo.placedFormat", required=true, defaultValue="json") protected String placedFormat
Format of "placed" file ("json" or "csv").
-
transpiled
@Parameter(property="eo.transpiled", required=true, defaultValue="${project.build.directory}/eo-transpiled.csv") protected File transpiled
The path to a text file where paths of generated java files per EO program.- Since:
- 0.11.0
-
xslMeasures
@Parameter(property="eo.xslMeasuresFile", required=true, defaultValue="${project.build.directory}/eo/xsl-measures.csv") protected File xslMeasures
The path of the file where XSL measurements (time of execution in milliseconds) will be stored.- Since:
- 0.41.0
-
timeout
@Parameter(property="eo.timeout") protected Integer timeout
Mojo execution timeout in seconds.- Since:
- 0.28.12
-
transpiledFormat
@Parameter(property="eo.transpiledFormat", required=true, defaultValue="csv") protected String transpiledFormat
Format of "transpiled" file ("json" or "csv").
-
unrollExitError
@Parameter(property="eo.unrollExitError") protected boolean unrollExitError
If set to TRUE, the exception on exit will be printed in details to the log.- Since:
- 0.29.0
-
cache
@Parameter(property="eo.cache") protected File cache
EO cache directory.
-
withVersions
@Parameter(property="eo.withVersions", defaultValue="false") protected boolean withVersions
Used for object versioning implementation. If set to TRUE - objects are parsed, stored in tojos and processed as versioned.
-
rewriteBinaries
@Parameter(property="eo.rewriteBinaries", defaultValue="true") protected boolean rewriteBinaries
Rewrite binaries in output directory or not.- Since:
- 0.32.0
-
offline
@Parameter(property="eo.offline", required=true, defaultValue="false") protected boolean offline
If we are offline and not able to download anything from the internet.- Since:
- 0.32.0
-
hashes
protected final Map<String,? extends CommitHash> hashes
Commit hashes.
-
placedTojos
protected final PlacedTojos placedTojos
Placed tojos.
-
transpiledTojos
protected final TranspiledTojos transpiledTojos
Cached transpiled tojos.
-
-
Method Detail
-
exec
public void exec()
-
execute
public final void execute() throws org.apache.maven.plugin.MojoFailureException
Execute it.- Throws:
org.apache.maven.plugin.MojoFailureException
- If fails during build
-
scopedTojos
protected final ForeignTojos scopedTojos()
Tojos to use, in my scope only.- Returns:
- Tojos to use
-
measured
protected final com.yegor256.xsline.Train<com.yegor256.xsline.Shift> measured(com.yegor256.xsline.Train<com.yegor256.xsline.Shift> train)
Make a measured train from another train.- Parameters:
train
- The train- Returns:
- Measured train
-
-