Package io.swagger.codegen.languages
Class BashClientCodegen
- java.lang.Object
-
- io.swagger.codegen.DefaultCodegen
-
- io.swagger.codegen.languages.BashClientCodegen
-
- All Implemented Interfaces:
CodegenConfig
public class BashClientCodegen extends DefaultCodegen implements CodegenConfig
-
-
Field Summary
Fields Modifier and Type Field Description protected String
apiDocPath
static String
APIKEY_AUTH_ENVIRONMENT_VARIABLE_NAME
protected String
apiKeyAuthEnvironmentVariable
protected String
apiVersion
static String
BASIC_AUTH_ENVIRONMENT_VARIABLE_NAME
protected String
basicAuthEnvironmentVariable
static String
CURL_OPTIONS
protected String
curlOptions
static String
GENERATE_BASH_COMPLETION
static String
GENERATE_ZSH_COMPLETION
protected boolean
generateBashCompletion
protected boolean
generateZshCompletion
static String
HOST_ENVIRONMENT_VARIABLE_NAME
protected String
hostEnvironmentVariable
protected String
modelDocPath
static String
PROCESS_MARKDOWN
protected boolean
processMarkdown
static String
SCRIPT_NAME
protected String
scriptName
-
Fields inherited from class io.swagger.codegen.DefaultCodegen
additionalProperties, allowUnicodeIdentifiers, apiDocTemplateFiles, apiPackage, apiTemplateFiles, apiTestTemplateFiles, cliOptions, commonTemplateDir, defaultIncludes, embeddedTemplateDir, ensureUniqueParams, fileSuffix, gitRepoBaseURL, gitRepoId, gitUserId, hideGenerationTimestamp, httpUserAgent, ignoreFilePathOverride, ignoreImportMapping, importMapping, inputSpec, instantiationTypes, languageSpecificPrimitives, library, LOGGER, modelDocTemplateFiles, modelNamePrefix, modelNameSuffix, modelPackage, modelTemplateFiles, modelTestTemplateFiles, outputFolder, releaseNote, removeOperationIdPrefix, reservedWords, reservedWordsMappings, skipAliasGeneration, skipOverwrite, sortParamsByRequiredFlag, specialCharReplacements, supportedLibraries, supportingFiles, supportsInheritance, supportsMixins, templateDir, testPackage, typeAliases, typeMapping, vendorExtensions
-
-
Constructor Summary
Constructors Constructor Description BashClientCodegen()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
apiDocFileFolder()
String
apiFileFolder()
Location to write api files.String
escapeQuotationMark(String input)
Escape single and/or double quote to avoid code injectionString
escapeReservedWord(String name)
Escapes a reserved word as defined in the `reservedWords` array.String
escapeText(String input)
Override with any special text escaping logicString
escapeUnsafeCharacters(String input)
Override with any special text escaping logic to handle unsafe characters so as to avoid code injection.CodegenOperation
fromOperation(String path, String httpMethod, io.swagger.models.Operation operation, Map<String,io.swagger.models.Model> definitions, io.swagger.models.Swagger swagger)
Convert Swagger Operation object to Codegen Operation objectCodegenParameter
fromParameter(io.swagger.models.parameters.Parameter param, Set<String> imports)
Convert Swagger Parameter object to Codegen Parameter objectString
getHelp()
Returns human-friendly help for the generator.String
getName()
Configures a friendly name for the generator.String
getSwaggerType(io.swagger.models.properties.Property p)
Optional - swagger type conversion.CodegenType
getTag()
Configures the type of generator.String
getTypeDeclaration(io.swagger.models.properties.Property p)
Optional - type declaration.String
modelDocFileFolder()
String
modelFileFolder()
Location to write model files.void
preprocessSwagger(io.swagger.models.Swagger swagger)
Preprocess original properties from the Swagger definition where necessary.void
processOpts()
void
setApiKeyAuthEnvironmentVariable(String apiKeyAuthEnvironmentVariable)
void
setBasicAuthEnvironmentVariable(String basicAuthEnvironmentVariable)
void
setCurlOptions(String curlOptions)
void
setGenerateBashCompletion(boolean generateBashCompletion)
void
setGenerateZshCompletion(boolean generateZshCompletion)
void
setHostEnvironmentVariable(String hostEnvironmentVariable)
void
setParameterExampleValue(CodegenParameter p)
Return the example value of the parameter.void
setProcessMarkdown(boolean processMarkdown)
void
setScriptName(String scriptName)
String
toApiDocFilename(String name)
Return the file name of the Api DocumentationString
toModelDocFilename(String name)
Return the capitalized file name of the model documentation-
Methods inherited from class io.swagger.codegen.DefaultCodegen
addAdditionPropertiesToCodeGenModel, addImport, additionalProperties, addOperationToGroup, addOption, addOption, addParentContainer, addProperties, addRegularExpressionDelimiter, addSwitch, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFileFolder, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configureDataForTestTemplate, convertPropertyToBoolean, convertPropertyToBooleanAndWriteBack, dashize, defaultIgnoreImportMappingOption, defaultIncludes, embeddedTemplateDir, ensureUniqueName, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fixUpParentAndInterfaces, fromModel, fromModel, fromOperation, fromProperty, fromResponse, fromSecurity, generateExamplePath, getAlias, getAllAliases, getCommonTemplateDir, getExamples, getGitRepoBaseURL, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInnerEnumAllowableValues, getInputSpec, getLibrary, getOrGenerateOperationId, getOutputDir, getParameterDataType, getReleaseNote, getSkipAliasGeneration, getSymbolName, getterAndSetterCapitalize, getTypeDeclaration, importMapping, initalizeSpecialCharacterMapping, initialCaps, instantiationTypes, isDataTypeBinary, isDataTypeFile, isHideGenerationTimestamp, isModelObject, isPrimivite, isPropertyInnerMostEnum, isRemoveOperationIdPrefix, isReservedWord, isSkipOverwrite, isUsingFlattenSpec, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, needToImport, outputFolder, postProcessAllModels, postProcessModelProperties, postProcessModelProperty, postProcessModels, postProcessModelsEnum, postProcessOperations, postProcessOperationsWithModels, postProcessParameter, postProcessSupportingFileData, processCompiler, processSwagger, readRefModelParameter, removeNonNameElementToCamelCase, removeNonNameElementToCamelCase, reservedWords, reservedWordsMappings, sanitizeName, sanitizeTag, setAllowUnicodeIdentifiers, setApiPackage, setCommonTemplateDir, setEnsureUniqueParams, setGitRepoBaseURL, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setLibrary, setModelNamePrefix, setModelNameSuffix, setModelPackage, setNonArrayMapProperty, setOutputDir, setParameterBooleanFlagWithCodegenProperty, setReleaseNote, setRemoveOperationIdPrefix, setReservedWordsLowerCase, setSkipAliasGeneration, setSkipOverwrite, setSortParamsByRequiredFlag, setTemplateDir, shouldOverwrite, snakeCase, supportedLibraries, supportingFiles, templateDir, testPackage, titleCase, toApiFilename, toApiImport, toApiName, toApiTestFilename, toApiVarName, toBooleanGetter, toDefaultValue, toDefaultValueWithParam, toEnumDefaultValue, toEnumName, toEnumValue, toEnumVarName, toExamples, toExampleValue, toGetter, toInstantiationType, toModelFilename, toModelImport, toModelName, toModelTestFilename, toOperationId, toParamName, toRegularExpression, toSetter, toVarName, typeMapping, underscore, updateCodegenPropertyEnum, updateDataTypeWithEnumForArray, updateDataTypeWithEnumForMap, updatePropertyForArray, updatePropertyForMap, vendorExtensions, writeOptional, writePropertyBack
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.swagger.codegen.CodegenConfig
additionalProperties, addOperationToGroup, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFileFolder, apiTestFilename, apiTestTemplateFiles, cliOptions, defaultIgnoreImportMappingOption, defaultIncludes, embeddedTemplateDir, fileSuffix, fromModel, fromModel, fromOperation, fromSecurity, generateExamplePath, getCommonTemplateDir, getGitRepoBaseURL, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInputSpec, getLibrary, getOutputDir, getReleaseNote, getSkipAliasGeneration, getTypeDeclaration, importMapping, instantiationTypes, isHideGenerationTimestamp, isRemoveOperationIdPrefix, isSkipOverwrite, isUsingFlattenSpec, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, outputFolder, postProcessAllModels, postProcessModelProperty, postProcessModels, postProcessOperations, postProcessOperationsWithModels, postProcessParameter, postProcessSupportingFileData, processCompiler, processSwagger, reservedWords, reservedWordsMappings, sanitizeName, sanitizeTag, setGitRepoBaseURL, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setLibrary, setOutputDir, setReleaseNote, setRemoveOperationIdPrefix, setSkipAliasGeneration, setSkipOverwrite, shouldOverwrite, supportedLibraries, supportingFiles, templateDir, testPackage, toApiFilename, toApiImport, toApiName, toApiTestFilename, toApiVarName, toBooleanGetter, toGetter, toModelFilename, toModelImport, toModelName, toModelTestFilename, toParamName, toSetter, typeMapping, vendorExtensions
-
-
-
-
Field Detail
-
apiVersion
protected String apiVersion
-
curlOptions
protected String curlOptions
-
processMarkdown
protected boolean processMarkdown
-
scriptName
protected String scriptName
-
generateBashCompletion
protected boolean generateBashCompletion
-
generateZshCompletion
protected boolean generateZshCompletion
-
hostEnvironmentVariable
protected String hostEnvironmentVariable
-
basicAuthEnvironmentVariable
protected String basicAuthEnvironmentVariable
-
apiKeyAuthEnvironmentVariable
protected String apiKeyAuthEnvironmentVariable
-
apiDocPath
protected String apiDocPath
-
modelDocPath
protected String modelDocPath
-
CURL_OPTIONS
public static final String CURL_OPTIONS
- See Also:
- Constant Field Values
-
PROCESS_MARKDOWN
public static final String PROCESS_MARKDOWN
- See Also:
- Constant Field Values
-
SCRIPT_NAME
public static final String SCRIPT_NAME
- See Also:
- Constant Field Values
-
GENERATE_BASH_COMPLETION
public static final String GENERATE_BASH_COMPLETION
- See Also:
- Constant Field Values
-
GENERATE_ZSH_COMPLETION
public static final String GENERATE_ZSH_COMPLETION
- See Also:
- Constant Field Values
-
HOST_ENVIRONMENT_VARIABLE_NAME
public static final String HOST_ENVIRONMENT_VARIABLE_NAME
- See Also:
- Constant Field Values
-
BASIC_AUTH_ENVIRONMENT_VARIABLE_NAME
public static final String BASIC_AUTH_ENVIRONMENT_VARIABLE_NAME
- See Also:
- Constant Field Values
-
APIKEY_AUTH_ENVIRONMENT_VARIABLE_NAME
public static final String APIKEY_AUTH_ENVIRONMENT_VARIABLE_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getTag
public CodegenType getTag()
Configures the type of generator.- Specified by:
getTag
in interfaceCodegenConfig
- Returns:
- the CodegenType for this generator
- See Also:
CodegenType
-
getName
public String getName()
Configures a friendly name for the generator. This will be used by the generator to select the library with the -l flag.- Specified by:
getName
in interfaceCodegenConfig
- Returns:
- the friendly name for the generator
-
getHelp
public String getHelp()
Returns human-friendly help for the generator. Provide the consumer with help tips, parameters here- Specified by:
getHelp
in interfaceCodegenConfig
- Returns:
- A string value for the help message
-
processOpts
public void processOpts()
- Specified by:
processOpts
in interfaceCodegenConfig
- Overrides:
processOpts
in classDefaultCodegen
-
setCurlOptions
public void setCurlOptions(String curlOptions)
-
setProcessMarkdown
public void setProcessMarkdown(boolean processMarkdown)
-
setScriptName
public void setScriptName(String scriptName)
-
setGenerateBashCompletion
public void setGenerateBashCompletion(boolean generateBashCompletion)
-
setGenerateZshCompletion
public void setGenerateZshCompletion(boolean generateZshCompletion)
-
setHostEnvironmentVariable
public void setHostEnvironmentVariable(String hostEnvironmentVariable)
-
setBasicAuthEnvironmentVariable
public void setBasicAuthEnvironmentVariable(String basicAuthEnvironmentVariable)
-
setApiKeyAuthEnvironmentVariable
public void setApiKeyAuthEnvironmentVariable(String apiKeyAuthEnvironmentVariable)
-
escapeReservedWord
public String escapeReservedWord(String name)
Escapes a reserved word as defined in the `reservedWords` array. Handle escaping those terms here. This logic is only called if a variable matches the reserved words.- Specified by:
escapeReservedWord
in interfaceCodegenConfig
- Overrides:
escapeReservedWord
in classDefaultCodegen
- Parameters:
name
- the name to be escaped- Returns:
- the escaped term
-
modelFileFolder
public String modelFileFolder()
Location to write model files. You can use the modelPackage() as defined when the class is instantiated.- Specified by:
modelFileFolder
in interfaceCodegenConfig
- Overrides:
modelFileFolder
in classDefaultCodegen
-
apiFileFolder
public String apiFileFolder()
Location to write api files. You can use the apiPackage() as defined when the class is instantiated.- Specified by:
apiFileFolder
in interfaceCodegenConfig
- Overrides:
apiFileFolder
in classDefaultCodegen
-
apiDocFileFolder
public String apiDocFileFolder()
- Specified by:
apiDocFileFolder
in interfaceCodegenConfig
- Overrides:
apiDocFileFolder
in classDefaultCodegen
-
modelDocFileFolder
public String modelDocFileFolder()
- Specified by:
modelDocFileFolder
in interfaceCodegenConfig
- Overrides:
modelDocFileFolder
in classDefaultCodegen
-
toModelDocFilename
public String toModelDocFilename(String name)
Description copied from class:DefaultCodegen
Return the capitalized file name of the model documentation- Specified by:
toModelDocFilename
in interfaceCodegenConfig
- Overrides:
toModelDocFilename
in classDefaultCodegen
- Parameters:
name
- the model name- Returns:
- the file name of the model
-
toApiDocFilename
public String toApiDocFilename(String name)
Description copied from class:DefaultCodegen
Return the file name of the Api Documentation- Specified by:
toApiDocFilename
in interfaceCodegenConfig
- Overrides:
toApiDocFilename
in classDefaultCodegen
- Parameters:
name
- the file name of the Api- Returns:
- the file name of the Api
-
getTypeDeclaration
public String getTypeDeclaration(io.swagger.models.properties.Property p)
Optional - type declaration. This is a String which is used by the templates to instantiate your types. There is typically special handling for different property types- Specified by:
getTypeDeclaration
in interfaceCodegenConfig
- Overrides:
getTypeDeclaration
in classDefaultCodegen
- Parameters:
p
- Swagger Property object- Returns:
- a string value used as the `dataType` field for model templates, `returnType` for api templates
-
getSwaggerType
public String getSwaggerType(io.swagger.models.properties.Property p)
Optional - swagger type conversion. This is used to map swagger types in a `Property` into either language specific types via `typeMapping` or into complex models if there is not a mapping.- Overrides:
getSwaggerType
in classDefaultCodegen
- Parameters:
p
- Swagger property object- Returns:
- a string value of the type or complex model for this property
- See Also:
Property
-
fromParameter
public CodegenParameter fromParameter(io.swagger.models.parameters.Parameter param, Set<String> imports)
Convert Swagger Parameter object to Codegen Parameter object- Overrides:
fromParameter
in classDefaultCodegen
- Parameters:
param
- Swagger parameter objectimports
- set of imports for library/package/module- Returns:
- Codegen Parameter object
-
escapeText
public String escapeText(String input)
Override with any special text escaping logic- Specified by:
escapeText
in interfaceCodegenConfig
- Overrides:
escapeText
in classDefaultCodegen
-
escapeQuotationMark
public String escapeQuotationMark(String input)
Description copied from class:DefaultCodegen
Escape single and/or double quote to avoid code injection- Specified by:
escapeQuotationMark
in interfaceCodegenConfig
- Overrides:
escapeQuotationMark
in classDefaultCodegen
- Parameters:
input
- String to be cleaned up- Returns:
- string with quotation mark removed or escaped
-
escapeUnsafeCharacters
public String escapeUnsafeCharacters(String input)
Override with any special text escaping logic to handle unsafe characters so as to avoid code injection.- Specified by:
escapeUnsafeCharacters
in interfaceCodegenConfig
- Overrides:
escapeUnsafeCharacters
in classDefaultCodegen
- Parameters:
input
- String to be cleaned up- Returns:
- string with unsafe characters removed or escaped
-
fromOperation
public CodegenOperation fromOperation(String path, String httpMethod, io.swagger.models.Operation operation, Map<String,io.swagger.models.Model> definitions, io.swagger.models.Swagger swagger)
Description copied from class:DefaultCodegen
Convert Swagger Operation object to Codegen Operation object- Specified by:
fromOperation
in interfaceCodegenConfig
- Overrides:
fromOperation
in classDefaultCodegen
- Parameters:
path
- the path of the operationhttpMethod
- HTTP methodoperation
- Swagger operation objectdefinitions
- a map of Swagger modelsswagger
- a Swagger object representing the spec- Returns:
- Codegen Operation object
-
preprocessSwagger
public void preprocessSwagger(io.swagger.models.Swagger swagger)
Preprocess original properties from the Swagger definition where necessary.- Specified by:
preprocessSwagger
in interfaceCodegenConfig
- Overrides:
preprocessSwagger
in classDefaultCodegen
- Parameters:
swagger
- [description]
-
setParameterExampleValue
public void setParameterExampleValue(CodegenParameter p)
Description copied from class:DefaultCodegen
Return the example value of the parameter.- Overrides:
setParameterExampleValue
in classDefaultCodegen
- Parameters:
p
- Swagger property object
-
-