Class JavaCodeGenerator
java.lang.Object
com.metaobjects.generator.GeneratorBase
com.metaobjects.generator.direct.DirectGeneratorBase
com.metaobjects.generator.direct.MultiFileDirectGeneratorBase<com.metaobjects.object.MetaObject>
com.metaobjects.generator.direct.object.BaseObjectCodeGenerator
com.metaobjects.generator.direct.object.javacode.JavaCodeGenerator
- All Implemented Interfaces:
Generator
Java-specific implementation of Object Code Generator
-
Field Summary
FieldsFields inherited from class com.metaobjects.generator.direct.object.BaseObjectCodeGenerator
ARG_DEBUG, ARG_NAMEPREFIX, ARG_NAMESUFFIX, ARG_OPTARRAYS, ARG_OPTKEYS, ARG_PKGPREFIX, ARG_PKGSUFFIX, ARG_TYPE, currentLoader, ERROR_FINALOUTPUTDIR_REQUIRED, ERROR_TYPE_INVALID, ERROR_TYPE_REQUIRED, globalContext, objectNameMapFields inherited from class com.metaobjects.generator.direct.MultiFileDirectGeneratorBase
ARG_FINALOUTPUTDIR, finalOutDir, outDirFields inherited from class com.metaobjects.generator.direct.DirectGeneratorBase
logFields inherited from class com.metaobjects.generator.GeneratorBase
ARG_OUTPUTDIR, ARG_OUTPUTFILENAME -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected StringConvert name to language-specific naming conventions (e.g., PascalCase, camelCase, snake_case)protected BaseObjectCodeWritercreateWriter(com.metaobjects.loader.MetaDataLoader loader, com.metaobjects.object.MetaObject md, PrintWriter pw, GenerationContext context) Create a language-specific writer instanceprotected StringGet the default type for this languageprotected StringGet the file extension for this language (e.g., ".java", ".cs", ".ts", ".py")protected GeneratorIOWritergetFinalWriter(com.metaobjects.loader.MetaDataLoader loader, OutputStream out) protected StringGet the name of the target language for logging purposesprotected String[]Get the supported object types for this language (e.g., "interface", "class", "struct")protected voidwriteFinalFile(Collection<com.metaobjects.object.MetaObject> metadata, GeneratorIOWriter<?> writer) Methods inherited from class com.metaobjects.generator.direct.object.BaseObjectCodeGenerator
addArrayMethods, addKeyMethods, configureGlobalContext, copyContextSettings, getFilterClass, getNamePrefix, getNameSuffix, getPathSeparator, getPkgPrefix, getPkgSuffix, getSingleOutputFilename, getSingleOutputFilePath, getSingleWriter, getType, isNotBlank, parseArgs, toString, withGlobalContext, writeSingleFileMethods inherited from class com.metaobjects.generator.direct.MultiFileDirectGeneratorBase
execute, getFinalOutputDirMethods inherited from class com.metaobjects.generator.direct.DirectGeneratorBase
setScriptsMethods inherited from class com.metaobjects.generator.GeneratorBase
getAndCreateDir, getArg, getArg, getArg, getArgs, getFilters, getMetaDataFilters, getOutputDir, getOutputFilename, getScripts, hasArg, setArgs, setFilters
-
Field Details
-
TYPE_INTERFACE
- See Also:
-
TYPE_CLASS
- See Also:
-
-
Constructor Details
-
JavaCodeGenerator
public JavaCodeGenerator()
-
-
Method Details
-
getSupportedTypes
Description copied from class:BaseObjectCodeGeneratorGet the supported object types for this language (e.g., "interface", "class", "struct")- Specified by:
getSupportedTypesin classBaseObjectCodeGenerator
-
getDefaultType
Description copied from class:BaseObjectCodeGeneratorGet the default type for this language- Specified by:
getDefaultTypein classBaseObjectCodeGenerator
-
createWriter
protected BaseObjectCodeWriter createWriter(com.metaobjects.loader.MetaDataLoader loader, com.metaobjects.object.MetaObject md, PrintWriter pw, GenerationContext context) Description copied from class:BaseObjectCodeGeneratorCreate a language-specific writer instance- Specified by:
createWriterin classBaseObjectCodeGenerator
-
getFileExtension
Description copied from class:BaseObjectCodeGeneratorGet the file extension for this language (e.g., ".java", ".cs", ".ts", ".py")- Specified by:
getFileExtensionin classBaseObjectCodeGenerator
-
getLanguageName
Description copied from class:BaseObjectCodeGeneratorGet the name of the target language for logging purposes- Specified by:
getLanguageNamein classBaseObjectCodeGenerator
-
convertToLanguageNaming
Description copied from class:BaseObjectCodeGeneratorConvert name to language-specific naming conventions (e.g., PascalCase, camelCase, snake_case)- Specified by:
convertToLanguageNamingin classBaseObjectCodeGenerator
-
getFinalWriter
protected GeneratorIOWriter getFinalWriter(com.metaobjects.loader.MetaDataLoader loader, OutputStream out) throws GeneratorIOException - Specified by:
getFinalWriterin classMultiFileDirectGeneratorBase<com.metaobjects.object.MetaObject>- Throws:
GeneratorIOException
-
writeFinalFile
protected void writeFinalFile(Collection<com.metaobjects.object.MetaObject> metadata, GeneratorIOWriter<?> writer) throws GeneratorIOException - Specified by:
writeFinalFilein classMultiFileDirectGeneratorBase<com.metaobjects.object.MetaObject>- Throws:
GeneratorIOException
-