You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Configuration entries for the 'Grpc Coroutines' code generator.
ExtendableMessagesGenOptions
Configuration used by the 'Extendable Messages' code generator.
Since this code generator relies on the protoc insertion point API,
its outputDir must match that of the protoc java plugin.
The FQ name of the class that the pseudo companion object should extend. Currently limited to classes with at least one no-args contructor. Referencing the current message type, use the value '{{message_type}}'. This is useful when you want to use the current message as a generic type param. ie. com.krotoplus.example.MyCompanionInterface<{{message_type}}, {{message_type}}.Builder>
The FQ name of an interface the pseudo companion object should implement. Referencing the current message type, use the value '{{message_type}}'. This is useful when you want to use the current message as a generic type param. ie. com.krotoplus.example.MyCompanionInterface<{{message_type}}, {{message_type}}.Builder>
FileFilter
Represent a filter used for including and excluding source files from
being processed by a code generator. It is inclusive by default, so
all paths compared against its default instance will be included as
input to a generator and processed.
List of file paths to include as inputs for a code generator. A valid value starts from the root package directory of the source file. Globs are supported ie. krotoplus/compiler/config.proto krotoplus/** */compiler/con.proto
List of file paths to exclude as inputs for a code generator. a valid value start from the root package directory of the source file. Globs are supported ie. google/*
GeneratorScriptsGenOptions
Configuration used by the 'Generator Scripts' code generator.
List of paths to kotlin script files to execute for this configuration. The scripts are compile at runtime by an embedded kotlin compiler. This comes at the cost of performance. Paths for scripts compiled at run time must be relative to the path of the configuration file. ie. 'kp-scripts/src/main/kotlin/sampleInsertionScript.kts' For a more performant option for script execution, precompiled scripts are supported. Paths for precompile scripts need to match their location in the supplied jar. ie. 'sampleInsertionScript.kts'
Enable code generation for coroutine supporting service stub extensions. This options generates code that relies on the artifact 'kroto-plus-coroutines'
InsertionsGenOptions
Configuration used by the 'Protoc Insertions' code generator.
Since this code generator relies on the protoc insertion point API,
its outputDir must match that of the protoc java plugin.
String literal of content to be set at the insertion point. Referencing the current message type, use the value '{{message_type}}'. This is useful when you want to use the current message as a generic type param. ie. com.krotoplus.example.MyCompanionInterface<{{message_type}}, {{message_type}}.Builder>
List of paths to kotlin script files to execute for this configuration. The scripts are compile at runtime by an embedded kotlin compiler. This comes at the cost of performance.Paths for scripts compiled at run time must be relative to the path of the configuration file. ie. 'kp-scripts/src/main/kotlin/sampleInsertionScript.kts' For a more performant option for script execution, precompiled scripts are supported. Paths for precompile scripts need to match their location in the supplied jar. ie. 'sampleInsertionScript.kts'
By default the generated utility methods for building messages are wrapped in an object similar to a proto outer class. For better ergonomics with code generated using 'java_multiple_files = false' the builders can be unwrapped and generated at the root scope of the output file. This option is not compatible with 'java_multiple_files = true' and nested messages since the generated code would produce class name collisions
Tag java builder classes with a kotlin interface annotated with @DslMarker. This requires the kroto-plus output directory to match the generated java classes directory. Using @DslMarker provides safer and predictable dsl usage.