Class KiotaCodeGen

java.lang.Object
io.kiota.quarkus.deployment.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 Details

    • KiotaCodeGen

      public KiotaCodeGen()
  • Method Details

    • 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