Class GenericAwareJavaCodegen

java.lang.Object
org.openapitools.codegen.DefaultCodegen
org.openapitools.codegen.languages.AbstractJavaCodegen
org.openapitools.codegen.languages.JavaClientCodegen
io.github.blueprintplatform.openapi.generics.codegen.GenericAwareJavaCodegen
All Implemented Interfaces:
org.openapitools.codegen.CodegenConfig, org.openapitools.codegen.languages.features.BeanValidationFeatures, org.openapitools.codegen.languages.features.DocumentationProviderFeatures, org.openapitools.codegen.languages.features.GzipFeatures, org.openapitools.codegen.languages.features.PerformBeanValidationFeatures

public class GenericAwareJavaCodegen extends org.openapitools.codegen.languages.JavaClientCodegen
Custom Java generator that integrates external contract models and generic response wrappers into OpenAPI generation.

Responsibilities:

  • Register externally provided models (contract-first approach)
  • Exclude those models from generation
  • Inject required imports into wrapper models via vendor extensions
  • Keep generated code free of invalid/self imports

Design note: This class only orchestrates the flow. Actual decisions (ignore, import resolution) are delegated to dedicated components.

  • Nested Class Summary

    Nested classes/interfaces inherited from class org.openapitools.codegen.languages.AbstractJavaCodegen

    org.openapitools.codegen.languages.AbstractJavaCodegen.ENUM_PROPERTY_NAMING_TYPE

    Nested classes/interfaces inherited from interface org.openapitools.codegen.languages.features.DocumentationProviderFeatures

    org.openapitools.codegen.languages.features.DocumentationProviderFeatures.AnnotationLibrary, org.openapitools.codegen.languages.features.DocumentationProviderFeatures.DocumentationProvider
  • Field Summary

    Fields inherited from class org.openapitools.codegen.languages.JavaClientCodegen

    APACHE, ASYNC_NATIVE, asyncNative, authFolder, CASE_INSENSITIVE_RESPONSE_HEADERS, caseInsensitiveResponseHeaders, CONFIG_KEY, CONFIG_KEY_FROM_CLASS_NAME, configKey, configKeyFromClassName, DO_NOT_USE_RX, doNotUseRx, DYNAMIC_OPERATIONS, dynamicOperations, ERROR_OBJECT_TYPE, errorObjectType, FAIL_ON_UNKNOWN_PROPERTIES, failOnUnknownProperties, FEIGN, FEIGN_HC5, GENERATE_CLIENT_AS_BEAN, generateClientAsBean, GOOGLE_API_CLIENT, GRADLE_PROPERTIES, gradleProperties, gradleWrapperPackage, JAVA_17, JERSEY2, JERSEY3, maxAttemptsForRetry, MICROPROFILE, MICROPROFILE_DEFAULT, MICROPROFILE_FRAMEWORK, MICROPROFILE_GLOBAL_EXCEPTION_MAPPER, MICROPROFILE_KUMULUZEE, MICROPROFILE_MUTINY, MICROPROFILE_REGISTER_EXCEPTION_MAPPER, MICROPROFILE_REST_CLIENT_DEFAULT_ROOT_PACKAGE, MICROPROFILE_REST_CLIENT_DEFAULT_VERSION, MICROPROFILE_REST_CLIENT_VERSION, microprofileFramework, microProfileGlobalExceptionMapper, microprofileMutiny, microProfileRegisterExceptionMapper, microprofileRestClientVersion, mpRestClientVersions, NATIVE, OKHTTP_GSON, PARCELABLE_MODEL, parcelableModel, performBeanValidation, REST_ASSURED, RESTCLIENT, RESTEASY, RESTTEMPLATE, RETROFIT_2, rootJavaEEPackage, SERIALIZATION_LIBRARY_GSON, SERIALIZATION_LIBRARY_JACKSON, SERIALIZATION_LIBRARY_JSONB, serializationLibrary, SINGLE_REQUEST_PARAMETER, STATIC_REQUEST, SUPPORT_STREAMING, SUPPORT_URL_QUERY, SUPPORT_VERTX_FUTURE, supportStreaming, supportVertxFuture, USE_ABSTRACTION_FOR_FILES, USE_ENUM_CASE_INSENSITIVE, USE_JACKSON_3, USE_PLAY_WS, USE_REFLECTION_EQUALS_HASHCODE, USE_RUNTIME_EXCEPTION, USE_RX_JAVA2, USE_RX_JAVA3, USE_SEALED_ONE_OF_INTERFACES, USE_SPRING_BOOT4, USE_UNARY_INTERCEPTOR, useAbstractionForFiles, useEnumCaseInsensitive, useGzipFeature, useJackson3, useOneOfDiscriminatorLookup, usePlayWS, useReflectionEqualsHashCode, useRuntimeException, useRxJava, useRxJava2, useRxJava3, useSealedOneOfInterfaces, useSingleRequestParameter, useSpringBoot4, useUnaryInterceptor, VERTX, waitTimeMillis, WEBCLIENT, WEBCLIENT_BLOCKING_OPERATIONS, webclientBlockingOperations, withAWSV4Signature

    Fields inherited from class org.openapitools.codegen.languages.AbstractJavaCodegen

    ADDITIONAL_ENUM_TYPE_ANNOTATIONS, ADDITIONAL_MODEL_TYPE_ANNOTATIONS, ADDITIONAL_ONE_OF_TYPE_ANNOTATIONS, additionalEnumTypeAnnotations, additionalModelTypeAnnotations, additionalOneOfTypeAnnotations, annotationLibrary, apiDocPath, artifactDescription, artifactId, artifactUrl, artifactVersion, BOOLEAN_GETTER_PREFIX, booleanGetterPrefix, CAMEL_CASE_DOLLAR_SIGN, camelCaseDollarSign, CONTAINER_DEFAULT_TO_NULL, containerDefaultToNull, DATE_LIBRARY, dateLibrary, DEFAULT_LIBRARY, DEFAULT_TEST_FOLDER, developerEmail, developerName, developerOrganization, developerOrganizationUrl, DISABLE_DISCRIMINATOR_JSON_IGNORE_PROPERTIES, DISABLE_HTML_ESCAPING, disableDiscriminatorJsonIgnoreProperties, disableHtmlEscaping, DISCRIMINATOR_CASE_SENSITIVE, discriminatorCaseSensitive, documentationProvider, ENUM_PROPERTY_NAMING_DESC, enumPropertyNaming, GENERATE_BUILDERS, GENERATE_CONSTRUCTOR_WITH_ALL_ARGS, generateBuilders, generateConstructorWithAllArgs, groupId, IGNORE_ANYOF_IN_ENUM, ignoreAnyOfInEnum, IMPLICIT_HEADERS, IMPLICIT_HEADERS_REGEX, implicitHeaders, implicitHeadersRegex, invokerPackage, jackson, JACKSON, JAVAX_PACKAGE, licenseName, licenseUrl, LOMBOK, lombokAnnotations, modelDocPath, OPENAPI_NULLABLE, openApiNullable, outputTestFolder, parentArtifactId, parentGroupId, parentOverridden, parentVersion, projectFolder, projectTestFolder, SCHEMA_IMPLEMENTS, schemaImplements, scmConnection, scmDeveloperConnection, scmUrl, serializableModel, serializeBigDecimalAsString, sourceFolder, SUPPORT_ASYNC, supportAsync, TEST_OUTPUT, testFolder, USE_JAKARTA_EE, USE_ONE_OF_INTERFACES, useBeanValidation, useJakartaEe, WITH_XML, withXml, X_IMPLEMENTS_SKIP, xImplementsSkip

    Fields inherited from class org.openapitools.codegen.DefaultCodegen

    additionalProperties, addOneOfInterfaceImports, addOneOfInterfaces, addSuffixToDuplicateOperationNicknames, allowUnicodeIdentifiers, apiDocTemplateFiles, apiNamePrefix, apiNameSuffix, apiPackage, apiTemplateFiles, apiTestTemplateFiles, autosetConstants, cliOptions, DefaultFeatureSet, defaultIncludes, defaultToEmptyContainer, disallowAdditionalPropertiesIfNotPresent, docExtension, embeddedTemplateDir, enableMinimalUpdate, enablePostProcessFile, ensureUniqueParams, enumNameMapping, enumUnknownDefaultCase, enumUnknownDefaultCaseName, falseSchema, filesMetadataFilename, fileSuffix, generatorMetadata, gitHost, gitRepoId, gitUserId, hideGenerationTimestamp, httpUserAgent, ignoreFilePathOverride, importBaseType, importContainerType, importMapping, inlineSchemaNameMapping, inlineSchemaOption, inputSpec, instantiationTypes, JSON_MIME_PATTERN, JSON_VENDOR_MIME_PATTERN, languageSpecificPrimitives, legacyDiscriminatorBehavior, library, loadDeepObjectIntoItems, modelDocTemplateFiles, modelNameMapping, modelNamePrefix, modelNameSuffix, modelPackage, modelTemplateFiles, modelTestTemplateFiles, nameMapping, openAPI, openapiGeneratorIgnoreList, openapiNormalizer, operationIdNameMapping, outputFolder, parameterNameMapping, prependFormOrBodyParameters, releaseNote, removeEnumValuePrefix, removeOperationIdPrefix, removeOperationIdPrefixCount, removeOperationIdPrefixDelimiter, reservedWords, reservedWordsMappings, schemaMapping, serverVariables, skipOperationExample, skipOverwrite, skipSortingOperations, sortModelPropertiesByRequiredFlag, sortParamsByRequiredFlag, specialCharReplacements, SPLIT_ON_SEMICOLON_OR_NEWLINE_REGEX, strictSpecBehavior, supportedLibraries, supportingFiles, supportsAdditionalPropertiesWithComposedSchema, supportsInheritance, supportsMixins, supportsMultipleInheritance, templateDir, templateOutputDirs, testPackage, trueSchema, typeAliases, typeMapping, useOneOfInterfaces, vendorExtensions, versionMetadataFilename, XML_MIME_PATTERN

    Fields inherited from interface org.openapitools.codegen.languages.features.BeanValidationFeatures

    USE_BEANVALIDATION

    Fields inherited from interface org.openapitools.codegen.languages.features.DocumentationProviderFeatures

    ANNOTATION_LIBRARY, DOCUMENTATION_PROVIDER

    Fields inherited from interface org.openapitools.codegen.languages.features.GzipFeatures

    USE_GZIP_FEATURE

    Fields inherited from interface org.openapitools.codegen.languages.features.PerformBeanValidationFeatures

    PERFORM_BEANVALIDATION
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.openapitools.codegen.CodegenModel
    fromModel(String name, io.swagger.v3.oas.models.media.Schema model)
    Marks models that should be ignored and cleans their imports.
     
    Map<String,org.openapitools.codegen.model.ModelsMap>
    postProcessAllModels(Map<String,org.openapitools.codegen.model.ModelsMap> allModels)
    Ensures ignored models are fully removed from the generation graph.
    org.openapitools.codegen.model.ModelsMap
    postProcessModels(org.openapitools.codegen.model.ModelsMap modelsMap)
    Removes ignored models and injects external imports into wrapper models.
    void
    Registers external model mappings from additionalProperties.

    Methods inherited from class org.openapitools.codegen.languages.JavaClientCodegen

    addImportsToOneOfInterface, addOperationToGroup, apiFilename, applyJackson2Package, applyJackson3Package, defaultDocumentationProvider, forceSerializationLibrary, getHelp, getSerializationLibrary, getSingleRequestParameter, getStaticRequest, getSupportedVendorExtensions, getTag, getUseOneOfDiscriminatorLookup, isConstructorWithAllArgsAllowed, isFailOnUnknownProperties, isUseJackson3, isUseSpringBoot4, postProcessModelProperty, postProcessModelsEnum, postProcessOperationsWithModels, postProcessSupportingFileData, setAsyncNative, setCaseInsensitiveResponseHeaders, setConfigKey, setDoNotUseRx, setDynamicOperations, setErrorObjectType, setFailOnUnknownProperties, setGenerateClientAsBean, setGradleProperties, setMaxAttemptsForRetry, setMicroprofileFramework, setMicroProfileGlobalExceptionMapper, setMicroprofileMutiny, setMicroProfileRegisterExceptionMapper, setMicroprofileRestClientVersion, setParcelableModel, setPerformBeanValidation, setSerializationLibrary, setSupportStreaming, setSupportVertxFuture, setUseAbstractionForFiles, setUseEnumCaseInsensitive, setUseGzipFeature, setUseJackson3, setUseOneOfDiscriminatorLookup, setUsePlayWS, setUseReflectionEqualsHashCode, setUseRuntimeException, setUseRxJava, setUseRxJava2, setUseRxJava3, setUseSealedOneOfInterfaces, setUseSpringBoot4, setUseUnaryInterceptor, setWaitTimeMillis, setWithAWSV4Signature, supportedAnnotationLibraries, supportedDocumentationProvider, toApiVarName

    Methods inherited from class org.openapitools.codegen.languages.AbstractJavaCodegen

    addAdditionPropertiesToCodeGenModel, addImports, apiDocFileFolder, apiFileFolder, apiTestFileFolder, applyJakartaPackage, applyJavaxPackage, escapeQuotationMark, escapeReservedWord, escapeUnsafeCharacters, findByName, fromOperation, getAdditionalModelTypeAnnotations, getAdditionalOneOfTypeAnnotations, getAnnotationLibrary, getArtifactDescription, getArtifactId, getArtifactUrl, getArtifactVersion, getBooleanGetterPrefix, getDateLibrary, getDeveloperEmail, getDeveloperName, getDeveloperOrganization, getDeveloperOrganizationUrl, getDocumentationProvider, getEnumPropertyNaming, getGroupId, getInvokerPackage, getLicenseName, getLicenseUrl, getOutputTestFolder, getSchemaImplements, getSchemaType, getScmConnection, getScmDeveloperConnection, getScmUrl, getSerializableModel, getSourceFolder, getterAndSetterCapitalize, getTestFolder, getTypeDeclaration, getXImplementsSkip, handleImplicitHeaders, isAddNullableImports, isDisableDiscriminatorJsonIgnoreProperties, isGenerateBuilders, isGenerateConstructorWithAllArgs, isJackson, isOpenApiNullable, isTypeErasedGenerics, isUseBeanValidation, modelDocFileFolder, modelFileFolder, modelTestFileFolder, needToImport, postProcessFile, postProcessResponseWithProperty, preprocessOpenAPI, removeAnnotations, sanitizeDataType, sanitizeTag, setAdditionalEnumTypeAnnotations, setAdditionalModelTypeAnnotations, setAdditionalOneOfTypeAnnotations, setAnnotationLibrary, setArtifactDescription, setArtifactId, setArtifactUrl, setArtifactVersion, setBooleanGetterPrefix, setCamelCaseDollarSign, setContainerDefaultToNull, setDateLibrary, setDeveloperEmail, setDeveloperName, setDeveloperOrganization, setDeveloperOrganizationUrl, setDisableDiscriminatorJsonIgnoreProperties, setDisableHtmlEscaping, setDiscriminatorCaseSensitive, setDocumentationProvider, setEnumPropertyNaming, setGenerateBuilders, setGenerateConstructorWithAllArgs, setGroupId, setIgnoreAnyOfInEnum, setImplicitHeaders, setImplicitHeadersRegex, setInvokerPackage, setJackson, setLicenseName, setLicenseUrl, setOpenApiNullable, setOutputDir, setOutputTestFolder, setParameterExampleValue, setParameterExampleValue, setParameterExampleValue, setParentArtifactId, setParentGroupId, setParentOverridden, setParentVersion, setSchemaImplements, setScmConnection, setScmDeveloperConnection, setScmUrl, setSerializableModel, setSerializeBigDecimalAsString, setSourceFolder, setSupportAsync, setTestFolder, setUseBeanValidation, setUseJakartaEe, setWithXml, setXImplementsSkip, toApiDocFilename, toApiFilename, toApiTestFilename, toArrayDefaultValue, toBooleanGetter, toDefaultParameterValue, toDefaultValue, toEnumName, toEnumValue, toEnumVarName, toExampleValue, toModelDocFilename, toModelFilename, toModelName, toModelTestFilename, toOperationId, toParamName, toRegularExpression, toVarName

    Methods inherited from class org.openapitools.codegen.DefaultCodegen

    addBodyModelSchema, addHeaders, addImport, addImport, addImport, addImports, addImports, addImports, addImportsForPropertyType, additionalProperties, addMustacheLambdas, addOneOfInterfaceModel, addOneOfNameExtension, addOption, addOption, addParentContainer, addParentFromContainer, addProperties, addRegularExpressionDelimiter, addRequiredVarsMap, addSwitch, addVars, addVars, addVarsRequiredVarsAdditionalProps, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFilename, apiTestTemplateFiles, buildEnumVars, buildLibraryCliOption, cliOptions, convertPropertyToBoolean, convertPropertyToBooleanAndWriteBack, convertPropertyToBooleanAndWriteBack, convertPropertyToStringAndWriteBack, convertPropertyToTypeAndWriteBack, createDiscriminator, defaultIncludes, defaultTemplatingEngine, embeddedTemplateDir, encodePath, enumNameMapping, escapeText, escapeTextInSingleQuotes, escapeTextWhileAllowingNewLines, executePostProcessor, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fromCallback, fromFormProperty, fromParameter, fromProperty, fromProperty, fromProperty, fromRequestBody, fromRequestBodyToFormParameters, fromResponse, fromSecurity, fromServers, fromServerVariables, generateExamplePath, generateJSONSpecFile, generateYAMLSpecFile, generatorLanguage, generatorLanguageVersion, getAdditionalPropertiesName, getAddSuffixToDuplicateOperationNicknames, getAlias, getAllModels, getAllOfDescendants, getAllowUnicodeIdentifiers, getApiNamePrefix, getApiNameSuffix, getCollectionFormat, getCollectionFormat, getConsumesInfo, getContent, getContentType, getDisallowAdditionalPropertiesIfNotPresent, getDiscriminatorPropertyType, getDiscriminatorSchema, getDocExtension, getEnsureUniqueParams, getEnumDefaultValue, getEnumUnknownDefaultCase, getEnumValueForProperty, getFeatureSet, getFilesMetadataFilename, getGeneratorMetadata, getGitHost, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getInnerEnumAllowableValues, getInputSpec, getItemsName, getLegacyDiscriminatorBehavior, getLibrary, getModelNamePrefix, getModelNameSuffix, getModelNameToSchemaCache, getMostInnerItems, getObjectAsStringList, getObjectAsStringListMap, getObjectAsStringMap, getOneOfAnyOfDescendants, getOpenapiGeneratorIgnoreList, getOrGenerateOperationId, getOutputDir, getParameterDataType, getPrependFormOrBodyParameters, getProducesInfo, getPropertyAsStringList, getPropertyAsStringListMap, getPropertyAsStringMap, getReleaseNote, getRemoveOperationIdPrefixCount, getRemoveOperationIdPrefixDelimiter, getSchemaAdditionalProperties, getSchemaFromBooleanOrSchema, getSingleSchemaType, getSortModelPropertiesByRequiredFlag, getSortParamsByRequiredFlag, getSymbolName, getTemplatingEngine, getTypeDeclaration, getUseInlineModelResolver, getUseOneOfInterfaces, getUseOpenapiNormalizer, getVersionMetadataFilename, handleConstantParams, handleMethodResponse, handleMethodResponse, handleSpecialCharacters, hasBodyParameter, hasFormParameter, importMapping, initializeSpecialCharacterMapping, inlineSchemaNameMapping, inlineSchemaOption, instantiationTypes, isArrayDefaultToEmpty, isArrayNullableDefaultToEmpty, isArrayOptionalDefaultToEmpty, isArrayOptionalNullableDefaultToEmpty, isDataTypeBinary, isDataTypeFile, isDataTypeString, isDefaultToEmptyContainer, isEnableMinimalUpdate, isEnablePostProcessFile, isHideGenerationTimestamp, isJsonMimeType, isJsonVendorMimeType, isLibrary, isMapDefaultToEmpty, isMapNullableDefaultToEmpty, isMapOptionalDefaultToEmpty, isMapOptionalNullableDefaultToEmpty, isParameterNameUnique, isPropertyInnerMostEnum, isRemoveEnumValuePrefix, isRemoveOperationIdPrefix, isReservedWord, isSkipOperationExample, isSkipOverwrite, isSkipSortingOperations, isStrictSpecBehavior, isXmlMimeType, languageSpecificPrimitives, lowerCamelCase, modelDocTemplateFiles, modelFilename, modelFilename, modelNameMapping, modelPackage, modelTemplateFiles, modelTestTemplateFiles, modifyFeatureSet, nameMapping, openapiGeneratorIgnoreList, openapiNormalizer, operationIdNameMapping, outputFolder, parameterNameMapping, postProcess, postProcessEnumVars, postProcessParameter, postProcessWebhooksWithModels, processCompiler, processOpenAPI, processTemplatingEngine, processTestExampleData, removeImport, removeNonNameElementToCamelCase, removeNonNameElementToCamelCase, removeOption, removeSelfReferenceImports, reservedWords, reservedWordsMappings, sanitizeName, sanitizeName, sanitizeName, schemaMapping, serverVariableOverrides, setAddProps, setAllowUnicodeIdentifiers, setApiNamePrefix, setApiNameSuffix, setApiPackage, setArrayDefaultToEmpty, setArrayNullableDefaultToEmpty, setArrayOptionalDefaultToEmpty, setArrayOptionalNullableDefaultToEmpty, setAutosetConstants, setCircularReferences, setDefaultToEmptyContainer, setDisallowAdditionalPropertiesIfNotPresent, setDocExtension, setEnableMinimalUpdate, setEnablePostProcessFile, setEnsureUniqueParams, setEnumDiscriminatorDefaultValue, setEnumUnknownDefaultCase, setFilesMetadataFilename, setGitHost, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setInputSpec, setLegacyDiscriminatorBehavior, setLibrary, setMapDefaultToEmpty, setMapNullableDefaultToEmpty, setMapOptionalDefaultToEmpty, setMapOptionalNullableDefaultToEmpty, setModelNamePrefix, setModelNameSuffix, setModelPackage, setNonArrayMapProperty, setOpenAPI, setParameterBooleanFlagWithCodegenProperty, setParameterEncodingValues, setParameterExamples, setParameterNullable, setPrependFormOrBodyParameters, setReleaseNote, setRemoveEnumValuePrefix, setRemoveOperationIdPrefix, setRemoveOperationIdPrefixCount, setRemoveOperationIdPrefixDelimiter, setReservedWordsLowerCase, setSkipOperationExample, setSkipOverwrite, setSkipSortingOperations, setSortModelPropertiesByRequiredFlag, setSortParamsByRequiredFlag, setStrictSpecBehavior, setTemplateDir, setTemplatingEngine, setUseOneOfInterfaces, setVersionMetadataFilename, shouldAddImport, shouldOverwrite, SortModelPropertiesByRequiredFlag, SortParametersByRequiredFlag, specVersionGreaterThanOrEqualTo310, supportedLibraries, supportingFiles, templateDir, templateOutputDirs, testPackage, toAllOfName, toAnyOfName, toApiImport, toApiName, toArrayModelParamName, toDefaultParameterValue, toDefaultValue, toDefaultValueWithParam, toEnumDefaultValue, toEnumDefaultValue, toExamples, toGetter, toInstantiationType, toMediaTypeSchemaName, toModelImport, toModelImportMap, toOneOfName, toSetter, toTestCaseName, typeMapping, unaliasPropertySchema, unaliasSchema, updateAllModels, updateCodegenPropertyEnum, updateDataTypeWithEnumForArray, updateDataTypeWithEnumForMap, updateEnumVarsWithExtensions, updateModelForAnyType, updateModelForComposedSchema, updateModelForInteger, updateModelForNumber, updateModelForObject, updateModelForString, updateOption, updateParameterForString, updatePropertyForAnyType, updatePropertyForArray, updatePropertyForInteger, updatePropertyForMap, updatePropertyForMap, updatePropertyForNumber, updatePropertyForObject, updatePropertyForString, updateRequestBodyForArray, updateRequestBodyForMap, updateRequestBodyForObject, updateRequestBodyForPrimitiveType, updateRequestBodyForString, useCodegenAsMustacheParentContext, vendorExtensions, writePropertyBack

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.openapitools.codegen.languages.features.BeanValidationFeatures

    setUseBeanValidation

    Methods inherited from interface org.openapitools.codegen.CodegenConfig

    additionalProperties, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFilename, apiTestTemplateFiles, cliOptions, defaultIncludes, defaultTemplatingEngine, embeddedTemplateDir, encodePath, enumNameMapping, escapeText, escapeTextWhileAllowingNewLines, fileSuffix, fromSecurity, fromServers, fromServerVariables, generateExamplePath, generatorLanguage, generatorLanguageVersion, getAddSuffixToDuplicateOperationNicknames, getDocExtension, getFeatureSet, getFilesMetadataFilename, getGeneratorMetadata, getGitHost, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getInputSpec, getLibrary, getOpenapiGeneratorIgnoreList, getOutputDir, getReleaseNote, getTemplatingEngine, getTypeDeclaration, getUseInlineModelResolver, getUseOpenapiNormalizer, getVersionMetadataFilename, importMapping, inlineSchemaNameMapping, inlineSchemaOption, instantiationTypes, isEnableMinimalUpdate, isEnablePostProcessFile, isHideGenerationTimestamp, isRemoveEnumValuePrefix, isRemoveOperationIdPrefix, isSkipOperationExample, isSkipOverwrite, isSkipSortingOperations, isStrictSpecBehavior, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelFilename, modelNameMapping, modelPackage, modelTemplateFiles, modelTestTemplateFiles, nameMapping, openapiGeneratorIgnoreList, openapiNormalizer, operationIdNameMapping, outputFolder, parameterNameMapping, postProcess, postProcessParameter, postProcessWebhooksWithModels, processCompiler, processOpenAPI, processTemplatingEngine, reservedWords, reservedWordsMappings, sanitizeName, schemaMapping, serverVariableOverrides, setDocExtension, setEnableMinimalUpdate, setEnablePostProcessFile, setGitHost, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setInputSpec, setLibrary, setOpenAPI, setReleaseNote, setRemoveEnumValuePrefix, setRemoveOperationIdPrefix, setSkipOperationExample, setSkipOverwrite, setSkipSortingOperations, setStrictSpecBehavior, setTemplatingEngine, shouldOverwrite, supportedLibraries, supportingFiles, templateDir, templateOutputDirs, testPackage, toApiImport, toApiName, toGetter, toModelImport, toModelImportMap, toSetter, typeMapping, unaliasSchema, updateAllModels, vendorExtensions
  • Constructor Details

    • GenericAwareJavaCodegen

      public GenericAwareJavaCodegen()
  • Method Details

    • processOpts

      public void processOpts()
      Registers external model mappings from additionalProperties.
      Specified by:
      processOpts in interface org.openapitools.codegen.CodegenConfig
      Overrides:
      processOpts in class org.openapitools.codegen.languages.JavaClientCodegen
    • fromModel

      public org.openapitools.codegen.CodegenModel fromModel(String name, io.swagger.v3.oas.models.media.Schema model)
      Marks models that should be ignored and cleans their imports.
      Specified by:
      fromModel in interface org.openapitools.codegen.CodegenConfig
      Overrides:
      fromModel in class org.openapitools.codegen.languages.JavaClientCodegen
    • postProcessModels

      public org.openapitools.codegen.model.ModelsMap postProcessModels(org.openapitools.codegen.model.ModelsMap modelsMap)
      Removes ignored models and injects external imports into wrapper models.
      Specified by:
      postProcessModels in interface org.openapitools.codegen.CodegenConfig
      Overrides:
      postProcessModels in class org.openapitools.codegen.languages.JavaClientCodegen
    • postProcessAllModels

      public Map<String,org.openapitools.codegen.model.ModelsMap> postProcessAllModels(Map<String,org.openapitools.codegen.model.ModelsMap> allModels)
      Ensures ignored models are fully removed from the generation graph.
      Specified by:
      postProcessAllModels in interface org.openapitools.codegen.CodegenConfig
      Overrides:
      postProcessAllModels in class org.openapitools.codegen.languages.AbstractJavaCodegen
    • getName

      public String getName()
      Specified by:
      getName in interface org.openapitools.codegen.CodegenConfig
      Overrides:
      getName in class org.openapitools.codegen.languages.JavaClientCodegen