Class KiotaCodeGen

  • All Implemented Interfaces:
    io.quarkus.deployment.CodeGenProvider
    Direct Known Subclasses:
    KiotaJsonCodeGen, KiotaYamlCodeGen, KiotaYmlCodeGen

    public abstract class KiotaCodeGen
    extends Object
    implements io.quarkus.deployment.CodeGenProvider
    Code generation for Kiota. Generates java classes from OpenAPI files placed in either src/main/openapi or src/test/openapi Implementation inspired by: https://github.com/quarkusio/quarkus/blob/f0841e02edbc2a1c1fc5b18c8b6cfecadff42a51/extensions/grpc/codegen/src/main/java/io/quarkus/grpc/deployment/GrpcCodeGen.java Kiota does implement a Json RPC protocol, eventually we can use it as a long-running process: https://github.com/microsoft/kiota/blob/main/vscode/microsoft-kiota/src/kiotaInterop.ts
    • Constructor Detail

      • KiotaCodeGen

        public KiotaCodeGen()
    • Method Detail

      • providerId

        public String providerId()
        Specified by:
        providerId in interface io.quarkus.deployment.CodeGenProvider
      • inputExtension

        public abstract String inputExtension()
        Specified by:
        inputExtension in interface io.quarkus.deployment.CodeGenProvider
      • inputDirectory

        public String inputDirectory()
        Specified by:
        inputDirectory in interface io.quarkus.deployment.CodeGenProvider
      • trigger

        public boolean trigger​(io.quarkus.deployment.CodeGenContext context)
                        throws io.quarkus.bootstrap.prebuild.CodeGenException
        Specified by:
        trigger in interface io.quarkus.deployment.CodeGenProvider
        Throws:
        io.quarkus.bootstrap.prebuild.CodeGenException
      • shouldRun

        public boolean shouldRun​(Path sourceDir,
                                 org.eclipse.microprofile.config.Config config)
        Specified by:
        shouldRun in interface io.quarkus.deployment.CodeGenProvider