package com.smartbear.swagger4j.impl; import com.smartbear.swagger4j.SwaggerVersion; /** * Construct to handle change of property/element names in different Swagger versions */ public class Constants { public static final String SWAGGER_VERSION = "swaggerVersion"; public static final String SWAGGER_V2_VERSION = "swagger"; public static final String API_DOCUMENTATION = "ApiDocumentation"; public static final String AUTHORIZATIONS = "authorizations"; public static final String AUTHORIZATION_TYPE = "type"; public static final String OAUTH_2_TYPE = "oauth2"; public static final String API_KEY_TYPE = "apiKey"; public static final String API_KEY_KEY_NAME = "keyName"; public static final String API_KEY_PASS_AS = "passAs"; public static final String BASIC_AUTH_TYPE = "basicAuth"; public static final String OAUTH2_SCOPES = "scopes"; public static final String OAUTH2_GRANT_TYPES = "grantTypes"; public static final String OAUTH2_IMPLICIT_GRANT = "implicit"; public static final String OAUTH2_IMPLICIT_LOGIN_ENDPOINT = "loginEndpoint"; public static final String OAUTH2_IMPLICIT_LOGIN_ENDPOINT_URL = "url"; public static final String OAUTH2_IMPLICIT_TOKEN_NAME = "tokenName"; public static final String OAUTH2_AUTHORIZATION_CODE_GRANT = "authorization_code"; public static final String OAUTH2_AUTHORIZATION_CODE_TOKEN_REQUEST_ENDPOINT_URL = "url"; public static final String OAUTH2_AUTHORIZATION_CODE_TOKEN_REQUEST_ENDPOINT_CLIENT_ID_NAME = "clientIdName"; public static final String OAUTH2_AUTHORIZATION_CODE_TOKEN_REQUEST_ENDPOINT_CLIENT_SECRET_NAME = "clientSecretName"; public static final String OAUTH2_AUTHORIZATION_CODE_TOKEN_ENDPOINT = "tokenEndpoint"; public static final String OAUTH2_AUTHORIZATION_CODE_TOKEN_ENDPOINT_URL = "url"; public static final String OAUTH2_AUTHORIZATION_CODE_TOKEN_ENDPOINT_TOKEN_NAME = "tokenName"; public static final String OAUTH2_AUTHORIZATION_GRANT_TOKEN_REQUEST_ENDPOINT = "tokenRequestEndpoint"; /** * Constants for the names used in Swagger definitions - these are not final static since they can be overridden * for specific versions */ public static final String API_VERSION = "apiVersion"; public static final String BASE_PATH = "basePath"; public static final String PATH = "path"; public static final String APIS = "apis"; public static final String DESCRIPTION = "description"; public static final String RESOURCE_PATH = "resourcePath"; public static final String OPERATIONS = "operations"; public static final String NICKNAME = "nickname"; public static final String SUMMARY = "summary"; public static final String NOTES = "notes"; public static final String PARAMETERS = "parameters"; public static final String NAME = "name"; public static final String PARAM_TYPE = "paramType"; public static final String ALLOW_MULTIPLE = "allowMultiple"; public static final String REQUIRED = "required"; public static final String CODE = "code"; public static final String PRODUCES = "produces"; public static final String CONSUMES = "consumes"; public static final String INFO = "info"; public static final String INFO_CONTACT = "title"; public static final String INFO_DESCRIPTION = "description"; public static final String INFO_LICENSE = "license"; public static final String INFO_LICENSE_URL = "licenseUrl"; public static final String INFO_TERMSOFSERVICEURL = "termsOfServiceUrl"; public static final String INFO_TITLE = "title"; public static final String RESPONSE_MODEL = "responseModel"; public static final String OAUTH2_SCOPE = "scope"; public static final String OAUTH2_SCOPE_DESCRIPTION = "description"; public static final String HTTP_METHOD = "httpMethod"; public static final String MODELS = "models"; public static final String ID = "id"; public static final String PROPERTIES = "properties"; public static final String $REF = "$ref"; public static final String FORMAT = "format"; public static final String ITEMS = "items"; public static final String ENUM = "enum"; public static final String MINIMUM = "minimum"; public static final String MAXIMUM = "maximum"; public static final String DEFAULT_VALUE = "defaultValue"; public String METHOD = "method"; public String TYPE = "type"; public String MESSAGE = "message"; public String RESPONSE_MESSAGES = "responseMessages"; public String OPERATION_TYPE = "type"; public static final Constants V1_1 = new V1_1Constants(); public static final Constants V1_2 = new Constants(); public static final Constants V2_0 = new Constants(); public static Constants get(SwaggerVersion version) { switch (version) { case V1_0: return V1_1; case V1_1: return V1_1; case V1_2: return V1_2; case V2_0: return V2_0; } throw new RuntimeException("Unknown Swagger version: " + version); } private static class V1_1Constants extends Constants { public V1_1Constants() { METHOD = "httpMethod"; MESSAGE = "reason"; RESPONSE_MESSAGES = "errorResponses"; TYPE = "dataType"; OPERATION_TYPE = "responseClass"; } } }