Class ConfigKeyGenerator


  • public class ConfigKeyGenerator
    extends Object
    Generates ConfNGKey enum classes from YAML, JSON, or Properties schema files.

    This tool reads configuration schema files and generates type-safe enum classes that implement ConfNGKey interface.

    Example Usage:

    
     // Generate from YAML schema
     ConfigKeyGenerator generator = new ConfigKeyGenerator();
     generator.setPackageName("com.myapp.config");
     generator.setEnumName("AppConfig");
     generator.generateFromYaml("config-schema.yaml", "src/main/java");
     
     // Generate from existing properties file
     generator.generateFromProperties("application.properties", "src/main/java");
     

    Schema Format (YAML):

     app:
       name:
         type: String
         required: true
         description: Application name
       port:
         type: Integer
         default: 8080
         description: Server port
     
    Since:
    1.1.0
    Author:
    Bharat Kumar Malviya, GitHub: github.com/imBharatMalviya
    • Constructor Detail

      • ConfigKeyGenerator

        public ConfigKeyGenerator()
    • Method Detail

      • setPackageName

        public void setPackageName​(String packageName)
      • setEnumName

        public void setEnumName​(String enumName)
      • setGenerateJavadoc

        public void setGenerateJavadoc​(boolean generateJavadoc)
      • setGenerateDefaultValues

        public void setGenerateDefaultValues​(boolean generateDefaultValues)
      • generateFromYaml

        public void generateFromYaml​(String schemaPath,
                                     String outputDir)
                              throws IOException
        Generates a ConfNGKey enum from a YAML schema file.
        Throws:
        IOException
      • generateFromJson

        public void generateFromJson​(String schemaPath,
                                     String outputDir)
                              throws IOException
        Generates a ConfNGKey enum from a JSON schema file.
        Throws:
        IOException
      • generateFromProperties

        public void generateFromProperties​(String propertiesPath,
                                           String outputDir)
                                    throws IOException
        Generates a ConfNGKey enum from an existing properties file.
        Throws:
        IOException