Package io.swagger.codegen.languages
Class CSharpClientCodegen
- java.lang.Object
-
- io.swagger.codegen.DefaultCodegen
-
- io.swagger.codegen.languages.AbstractCSharpCodegen
-
- io.swagger.codegen.languages.CSharpClientCodegen
-
- All Implemented Interfaces:
CodegenConfig
public class CSharpClientCodegen extends AbstractCSharpCodegen
-
-
Field Summary
Fields Modifier and Type Field Description protected String
apiDocPath
protected String
clientPackage
protected Map<String,String>
frameworks
protected boolean
generatePropertyChanged
protected String
localVariablePrefix
protected String
modelDocPath
protected boolean
netStandard
protected boolean
nonPublicApi
protected String
packageGuid
protected Map<Character,String>
regexModifiers
protected boolean
supportsAsync
protected boolean
supportsUWP
protected io.swagger.models.Swagger
swagger
protected String
targetFramework
protected String
targetFrameworkNuget
protected boolean
validatable
-
Fields inherited from class io.swagger.codegen.languages.AbstractCSharpCodegen
collectionTypes, interfacePrefix, mapTypes, modelPropertyNaming, netCoreProjectFileFlag, optionalAssemblyInfoFlag, optionalEmitDefaultValue, optionalMethodArgumentFlag, optionalProjectFileFlag, packageAuthors, packageCompany, packageCopyright, packageDescription, packageName, packageProductName, packageTitle, packageVersion, preserveNewLines, returnICollection, sourceFolder, testFolder, useCollection, useDateTimeOffsetFlag
-
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, 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 CSharpClientCodegen()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
apiDocFileFolder()
String
apiTestFileFolder()
CodegenModel
fromModel(String name, io.swagger.models.Model model, Map<String,io.swagger.models.Model> allDefinitions)
Convert Swagger Model object to Codegen Model objectString
getHelp()
String
getModelPropertyNaming()
String
getName()
String
getNameUsingModelPropertyNaming(String name)
String
getSwaggerType(io.swagger.models.properties.Property p)
returns the swagger type for the propertyCodegenType
getTag()
boolean
isNonPublicApi()
String
modelDocFileFolder()
String
modelTestFileFolder()
void
postProcessModelProperty(CodegenModel model, CodegenProperty property)
Map<String,Object>
postProcessOperations(Map<String,Object> objs)
void
postProcessParameter(CodegenParameter parameter)
void
postProcessPattern(String pattern, Map<String,Object> vendorExtensions)
void
preprocessSwagger(io.swagger.models.Swagger swagger)
com.samskivert.mustache.Mustache.Compiler
processCompiler(com.samskivert.mustache.Mustache.Compiler compiler)
void
processOpts()
protected void
readRefModelParameter(io.swagger.models.RefModel refModel, CodegenParameter codegenParameter, Set<String> imports)
void
setGeneratePropertyChanged(Boolean generatePropertyChanged)
void
setModelPropertyNaming(String naming)
void
setNetStandard(Boolean netStandard)
void
setNonPublicApi(boolean nonPublicApi)
void
setOptionalAssemblyInfoFlag(boolean flag)
void
setOptionalProjectFileFlag(boolean flag)
void
setPackageGuid(String packageGuid)
void
setPackageName(String packageName)
void
setPackageVersion(String packageVersion)
void
setSupportsAsync(Boolean supportsAsync)
void
setSupportsUWP(Boolean supportsUWP)
void
setTargetFramework(String dotnetFramework)
void
setTargetFrameworkNuget(String targetFrameworkNuget)
void
setValidatable(boolean validatable)
String
toEnumVarName(String value, String datatype)
Return the sanitized variable name for enumString
toModelDocFilename(String name)
Return the capitalized file name of the model documentationString
toVarName(String name)
Return the variable name by removing invalid characters and proper escaping if it's a reserved word.-
Methods inherited from class io.swagger.codegen.languages.AbstractCSharpCodegen
apiFileFolder, escapeQuotationMark, escapeReservedWord, escapeUnsafeCharacters, getInterfacePrefix, getTypeDeclaration, isPreserveNewLines, isReservedWord, modelFileFolder, postProcessAllModels, postProcessModels, preserveNewlines, processOperation, setInterfacePrefix, setNetCoreProjectFileFlag, setOptionalEmitDefaultValue, setOptionalMethodArgumentFlag, setPackageAuthors, setPackageCompany, setPackageCopyright, setPackageDescription, setPackageProductName, setPackageTitle, setPreserveNewLines, setReturnICollection, setSourceFolder, setUseCollection, testPackageName, toApiTestFilename, toDefaultValue, toEnumName, toEnumValue, toExampleValue, toInstantiationType, toModelFilename, toModelName, toModelTestFilename, toOperationId, toParamName, updateCodegenPropertyEnum, useDateTimeOffset
-
Methods inherited from class io.swagger.codegen.DefaultCodegen
addAdditionPropertiesToCodeGenModel, addImport, additionalProperties, addOperationToGroup, addOption, addOption, addParentContainer, addProperties, addRegularExpressionDelimiter, addSwitch, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configureDataForTestTemplate, convertPropertyToBoolean, convertPropertyToBooleanAndWriteBack, dashize, defaultIgnoreImportMappingOption, defaultIncludes, embeddedTemplateDir, ensureUniqueName, escapeText, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fixUpParentAndInterfaces, fromModel, fromOperation, fromOperation, fromParameter, 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, isSkipOverwrite, isUsingFlattenSpec, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelPackage, modelTemplateFiles, modelTestTemplateFiles, needToImport, outputFolder, postProcessModelProperties, postProcessModelsEnum, postProcessOperationsWithModels, postProcessSupportingFileData, processSwagger, 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, setParameterExampleValue, setReleaseNote, setRemoveOperationIdPrefix, setReservedWordsLowerCase, setSkipAliasGeneration, setSkipOverwrite, setSortParamsByRequiredFlag, setTemplateDir, shouldOverwrite, snakeCase, supportedLibraries, supportingFiles, templateDir, testPackage, titleCase, toApiDocFilename, toApiFilename, toApiImport, toApiName, toApiVarName, toBooleanGetter, toDefaultValueWithParam, toEnumDefaultValue, toExamples, toGetter, toModelImport, toRegularExpression, toSetter, typeMapping, underscore, 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, apiTestFilename, apiTestTemplateFiles, cliOptions, defaultIgnoreImportMappingOption, defaultIncludes, embeddedTemplateDir, escapeText, fileSuffix, fromModel, fromOperation, fromOperation, fromSecurity, generateExamplePath, getCodeName, getCommonTemplateDir, getGitRepoBaseURL, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInputSpec, getLibrary, getOutputDir, getPriority, getReleaseNote, getSkipAliasGeneration, getTypeDeclaration, importMapping, instantiationTypes, isHideGenerationTimestamp, isPrivileged, isRemoveOperationIdPrefix, isSkipOverwrite, isUsingFlattenSpec, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelPackage, modelTemplateFiles, modelTestTemplateFiles, outputFolder, postProcessOperationsWithModels, postProcessSupportingFileData, processSwagger, reservedWords, reservedWordsMappings, sanitizeName, sanitizeTag, setGitRepoBaseURL, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setLibrary, setOutputDir, setReleaseNote, setRemoveOperationIdPrefix, setSkipAliasGeneration, setSkipOverwrite, shouldOverwrite, supportedLibraries, supportingFiles, templateDir, testPackage, toApiDocFilename, toApiFilename, toApiImport, toApiName, toApiVarName, toBooleanGetter, toGetter, toModelImport, toSetter, typeMapping, vendorExtensions
-
-
-
-
Field Detail
-
swagger
protected io.swagger.models.Swagger swagger
-
packageGuid
protected String packageGuid
-
clientPackage
protected String clientPackage
-
localVariablePrefix
protected String localVariablePrefix
-
apiDocPath
protected String apiDocPath
-
modelDocPath
protected String modelDocPath
-
targetFramework
protected String targetFramework
-
targetFrameworkNuget
protected String targetFrameworkNuget
-
supportsAsync
protected boolean supportsAsync
-
supportsUWP
protected boolean supportsUWP
-
netStandard
protected boolean netStandard
-
generatePropertyChanged
protected boolean generatePropertyChanged
-
validatable
protected boolean validatable
-
nonPublicApi
protected boolean nonPublicApi
-
-
Method Detail
-
processOpts
public void processOpts()
- Specified by:
processOpts
in interfaceCodegenConfig
- Overrides:
processOpts
in classAbstractCSharpCodegen
-
setModelPropertyNaming
public void setModelPropertyNaming(String naming)
-
getModelPropertyNaming
public String getModelPropertyNaming()
-
postProcessOperations
public Map<String,Object> postProcessOperations(Map<String,Object> objs)
- Specified by:
postProcessOperations
in interfaceCodegenConfig
- Overrides:
postProcessOperations
in classAbstractCSharpCodegen
-
getSwaggerType
public String getSwaggerType(io.swagger.models.properties.Property p)
Description copied from class:DefaultCodegen
returns the swagger type for the property- Overrides:
getSwaggerType
in classAbstractCSharpCodegen
- Parameters:
p
- Swagger property object- Returns:
- string presentation of the type
-
getTag
public CodegenType getTag()
-
getName
public String getName()
-
getHelp
public String getHelp()
-
setOptionalAssemblyInfoFlag
public void setOptionalAssemblyInfoFlag(boolean flag)
-
fromModel
public CodegenModel fromModel(String name, io.swagger.models.Model model, Map<String,io.swagger.models.Model> allDefinitions)
Description copied from class:DefaultCodegen
Convert Swagger Model object to Codegen Model object- Specified by:
fromModel
in interfaceCodegenConfig
- Overrides:
fromModel
in classAbstractCSharpCodegen
- Parameters:
name
- the name of the modelmodel
- Swagger Model objectallDefinitions
- a map of all Swagger models from the spec- Returns:
- Codegen Model object
-
readRefModelParameter
protected void readRefModelParameter(io.swagger.models.RefModel refModel, CodegenParameter codegenParameter, Set<String> imports)
- Overrides:
readRefModelParameter
in classDefaultCodegen
-
setOptionalProjectFileFlag
public void setOptionalProjectFileFlag(boolean flag)
-
setPackageGuid
public void setPackageGuid(String packageGuid)
-
postProcessParameter
public void postProcessParameter(CodegenParameter parameter)
- Specified by:
postProcessParameter
in interfaceCodegenConfig
- Overrides:
postProcessParameter
in classDefaultCodegen
-
postProcessModelProperty
public void postProcessModelProperty(CodegenModel model, CodegenProperty property)
- Specified by:
postProcessModelProperty
in interfaceCodegenConfig
- Overrides:
postProcessModelProperty
in classAbstractCSharpCodegen
-
postProcessPattern
public void postProcessPattern(String pattern, Map<String,Object> vendorExtensions)
-
setTargetFramework
public void setTargetFramework(String dotnetFramework)
-
toEnumVarName
public String toEnumVarName(String value, String datatype)
Description copied from class:DefaultCodegen
Return the sanitized variable name for enum- Overrides:
toEnumVarName
in classAbstractCSharpCodegen
- Parameters:
value
- enum variable namedatatype
- data type- Returns:
- the sanitized variable name for enum
-
toVarName
public String toVarName(String name)
Description copied from class:DefaultCodegen
Return the variable name by removing invalid characters and proper escaping if it's a reserved word.- Overrides:
toVarName
in classAbstractCSharpCodegen
- Parameters:
name
- the variable name- Returns:
- the sanitized variable name
-
setPackageName
public void setPackageName(String packageName)
- Overrides:
setPackageName
in classAbstractCSharpCodegen
-
setPackageVersion
public void setPackageVersion(String packageVersion)
- Overrides:
setPackageVersion
in classAbstractCSharpCodegen
-
setTargetFrameworkNuget
public void setTargetFrameworkNuget(String targetFrameworkNuget)
-
setSupportsAsync
public void setSupportsAsync(Boolean supportsAsync)
-
setSupportsUWP
public void setSupportsUWP(Boolean supportsUWP)
-
setNetStandard
public void setNetStandard(Boolean netStandard)
-
setGeneratePropertyChanged
public void setGeneratePropertyChanged(Boolean generatePropertyChanged)
-
isNonPublicApi
public boolean isNonPublicApi()
-
setNonPublicApi
public void setNonPublicApi(boolean nonPublicApi)
-
setValidatable
public void setValidatable(boolean validatable)
-
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
-
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
-
apiTestFileFolder
public String apiTestFileFolder()
- Specified by:
apiTestFileFolder
in interfaceCodegenConfig
- Overrides:
apiTestFileFolder
in classAbstractCSharpCodegen
-
modelTestFileFolder
public String modelTestFileFolder()
- Specified by:
modelTestFileFolder
in interfaceCodegenConfig
- Overrides:
modelTestFileFolder
in classAbstractCSharpCodegen
-
processCompiler
public com.samskivert.mustache.Mustache.Compiler processCompiler(com.samskivert.mustache.Mustache.Compiler compiler)
- Specified by:
processCompiler
in interfaceCodegenConfig
- Overrides:
processCompiler
in classDefaultCodegen
-
preprocessSwagger
public void preprocessSwagger(io.swagger.models.Swagger swagger)
- Specified by:
preprocessSwagger
in interfaceCodegenConfig
- Overrides:
preprocessSwagger
in classAbstractCSharpCodegen
-
-