Package com.hedera.pbj.compiler
Class PbjCompilerTask
java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
org.gradle.api.internal.ConventionTask
org.gradle.api.tasks.SourceTask
com.hedera.pbj.compiler.PbjCompilerTask
- All Implemented Interfaces:
Comparable<org.gradle.api.Task>,org.gradle.api.internal.DynamicObjectAware,org.gradle.api.internal.IConventionAware,org.gradle.api.internal.TaskInternal,org.gradle.api.Named,org.gradle.api.plugins.ExtensionAware,org.gradle.api.Task,org.gradle.api.tasks.util.PatternFilterable,org.gradle.util.Configurable<org.gradle.api.Task>
public abstract class PbjCompilerTask
extends org.gradle.api.tasks.SourceTask
Gradle Task that generates java src code from protobuf proto schema files.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.gradle.api.Task
org.gradle.api.Task.Namer -
Field Summary
Fields inherited from interface org.gradle.api.Task
TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidcompileFilesIn(Iterable<File> sourceFiles, File mainOutputDir, File testOutputDir) Compile all the proto files in the given source directoriesprotected abstract org.gradle.api.internal.file.FileOperationsabstract org.gradle.api.file.DirectoryPropertySet the java main directory that we write generated code intoabstract org.gradle.api.file.DirectoryPropertySet the java test directory that we write generated code intovoidperform()Perform task action - Generates all the PBJ java source filesMethods inherited from class org.gradle.api.tasks.SourceTask
exclude, exclude, exclude, exclude, getExcludes, getIncludes, getPatternSet, getPatternSetFactory, getSource, include, include, include, include, setExcludes, setIncludes, setSource, setSource, sourceMethods inherited from class org.gradle.api.internal.ConventionTask
conventionMapping, conventionMapping, getConventionMappingMethods inherited from class org.gradle.api.DefaultTask
compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesServiceMethods inherited from class org.gradle.api.internal.AbstractTask
acceptServiceReferences, appendParallelSafeAction, doNotTrackState, getAsDynamicObject, getConvention, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getOnlyIf, getReasonNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, setImpliesSubProjectsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.gradle.api.Task
doNotTrackState, getConvention, notCompatibleWithConfigurationCache
-
Constructor Details
-
PbjCompilerTask
public PbjCompilerTask()
-
-
Method Details
-
getJavaMainOutputDirectory
@OutputDirectory public abstract org.gradle.api.file.DirectoryProperty getJavaMainOutputDirectory()Set the java main directory that we write generated code into- Returns:
- The java main directory that we write generated code into
-
getJavaTestOutputDirectory
@OutputDirectory public abstract org.gradle.api.file.DirectoryProperty getJavaTestOutputDirectory()Set the java test directory that we write generated code into- Returns:
- The java test directory that we write generated code into
-
getFileOperations
@Inject protected abstract org.gradle.api.internal.file.FileOperations getFileOperations()- Returns:
- Gradle's FileOperations service to use for file deletion
-
perform
Perform task action - Generates all the PBJ java source files- Throws:
Exception- If there was a problem performing action
-
compileFilesIn
public static void compileFilesIn(Iterable<File> sourceFiles, File mainOutputDir, File testOutputDir) throws Exception Compile all the proto files in the given source directories- Parameters:
sourceFiles- The source files to compilemainOutputDir- The main output directorytestOutputDir- The test output directory- Throws:
Exception
-