From 52257775caa8775bba1f9dda522c46b671067fcf Mon Sep 17 00:00:00 2001 From: Jon Schoning Date: Sat, 7 Oct 2017 04:12:48 -0500 Subject: [PATCH] [haskell-http-client] add support for auth methods (#6622) * add support for auth methods * use newtypes for required params * fix duplicate operationId issues * prevent aliasing of vendorextension references in fromOperation * add --fast to stack ci build --- .../languages/HaskellHttpClientCodegen.java | 148 +- .../haskell-http-client/API.mustache | 107 +- .../haskell-http-client/Client.mustache | 23 +- .../haskell-http-client/Model.mustache | 12 +- .../haskell-http-client/README.mustache | 51 +- .../haskell-http-client.cabal.mustache | 1 + .../tests/Instances.mustache | 34 +- .../haskell-http-client/tests/Test.mustache | 9 +- .../petstore/haskell-http-client/Makefile | 10 +- .../petstore/haskell-http-client/README.md | 51 +- .../docs/SwaggerPetstore-API.html | 2 +- .../docs/SwaggerPetstore-Client.html | 2 +- .../docs/SwaggerPetstore-MimeTypes.html | 2 +- .../docs/SwaggerPetstore-Model.html | 6 +- .../docs/doc-index-95.html | 2 +- .../haskell-http-client/docs/doc-index-A.html | 2 +- .../docs/doc-index-All.html | 2 +- .../haskell-http-client/docs/doc-index-B.html | 4 + .../haskell-http-client/docs/doc-index-C.html | 2 +- .../haskell-http-client/docs/doc-index-E.html | 4 + .../haskell-http-client/docs/doc-index-N.html | 2 +- .../haskell-http-client/docs/doc-index-O.html | 2 +- .../haskell-http-client/docs/doc-index-P.html | 2 +- .../haskell-http-client/docs/doc-index-R.html | 2 +- .../haskell-http-client/docs/doc-index-S.html | 2 +- .../haskell-http-client/docs/doc-index-T.html | 2 +- .../haskell-http-client/docs/doc-index-U.html | 2 +- .../docs/mini_SwaggerPetstore-API.html | 2 +- .../docs/mini_SwaggerPetstore-Client.html | 2 +- .../docs/src/Paths_swagger_petstore.html | 8 +- .../docs/src/SwaggerPetstore.API.html | 2500 +++++++------- .../docs/src/SwaggerPetstore.Client.html | 549 ++-- .../docs/src/SwaggerPetstore.Lens.html | 1094 +++---- .../docs/src/SwaggerPetstore.Logging.html | 206 +- .../docs/src/SwaggerPetstore.MimeTypes.html | 427 +-- .../docs/src/SwaggerPetstore.Model.html | 2880 +++++++++-------- .../docs/src/SwaggerPetstore.html | 46 +- .../haskell-http-client/example-app/Main.hs | 45 +- .../lib/SwaggerPetstore/API.hs | 378 ++- .../lib/SwaggerPetstore/Client.hs | 23 +- .../lib/SwaggerPetstore/Model.hs | 185 +- .../petstore/haskell-http-client/pom.xml | 2 + .../swagger-petstore.cabal | 1 + .../petstore/haskell-http-client/swagger.json | 16 +- .../tests-integration/tests/Test.hs | 47 +- .../haskell-http-client/tests/Instances.hs | 34 +- .../haskell-http-client/tests/Test.hs | 79 +- 47 files changed, 4919 insertions(+), 4093 deletions(-) create mode 100644 samples/client/petstore/haskell-http-client/docs/doc-index-B.html create mode 100644 samples/client/petstore/haskell-http-client/docs/doc-index-E.html diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/HaskellHttpClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/HaskellHttpClientCodegen.java index 157c4adfa1df..08b009815e21 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/HaskellHttpClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/HaskellHttpClientCodegen.java @@ -5,15 +5,14 @@ import io.swagger.models.ModelImpl; import io.swagger.models.Operation; import io.swagger.models.Swagger; -import io.swagger.models.properties.ArrayProperty; -import io.swagger.models.properties.MapProperty; -import io.swagger.models.properties.Property; +import io.swagger.models.properties.*; import java.util.*; import java.util.regex.Pattern; import org.apache.commons.io.FileUtils; +import io.swagger.models.auth.SecuritySchemeDefinition; import io.swagger.codegen.CliOption; import io.swagger.codegen.CodegenConstants; import io.swagger.codegen.CodegenModel; @@ -26,6 +25,7 @@ import java.io.File; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.StringEscapeUtils; import org.apache.commons.lang3.text.WordUtils; import java.util.regex.Matcher; @@ -65,8 +65,8 @@ public class HaskellHttpClientCodegen extends DefaultCodegen implements CodegenC static final String MEDIA_IS_JSON = "x-mediaIsJson"; - protected Map uniqueOptionalParamsByName = new HashMap(); - protected Map modelNames = new HashMap(); + protected Map uniqueParamsByName = new HashMap(); + protected Set typeNames = new HashSet(); protected Map> allMimeTypes = new HashMap>(); protected Map knownMimeDataTypes = new HashMap(); protected Map> modelMimeTypes = new HashMap>(); @@ -466,42 +466,49 @@ public String toInstantiationType(Property p) { public CodegenOperation fromOperation(String resourcePath, String httpMethod, Operation operation, Map definitions, Swagger swagger) { CodegenOperation op = super.fromOperation(resourcePath, httpMethod, operation, definitions, swagger); - op.vendorExtensions.put("x-baseOperationId", op.operationId); + // prevent aliasing/sharing of operation.vendorExtensions reference + op.vendorExtensions = new LinkedHashMap(); + + String operationType = toTypeName("Op", op.operationId); + op.vendorExtensions.put("x-operationType", operationType); + typeNames.add(operationType); + op.vendorExtensions.put("x-haddockPath", String.format("%s %s", op.httpMethod, op.path.replace("/", "\\/"))); - op.operationId = toVarName(op.operationId); - op.vendorExtensions.put("x-operationType", toTypeName("Op", op.operationId)); op.vendorExtensions.put("x-hasBodyOrFormParam", op.getHasBodyParam() || op.getHasFormParams()); for (CodegenParameter param : op.allParams) { - param.vendorExtensions.put("x-operationType", WordUtils.capitalize(op.operationId)); + param.vendorExtensions = new LinkedHashMap(); // prevent aliasing/sharing + param.vendorExtensions.put("x-operationType", operationType); param.vendorExtensions.put("x-isBodyOrFormParam", param.isBodyParam || param.isFormParam); if (!StringUtils.isBlank(param.collectionFormat)) { param.vendorExtensions.put("x-collectionFormat", mapCollectionFormat(param.collectionFormat)); } - if (!param.required) { + if(!param.required) { op.vendorExtensions.put("x-hasOptionalParams", true); - + } + if (typeMapping.containsKey(param.dataType) || param.isPrimitiveType || param.isListContainer || param.isMapContainer || param.isFile) { String paramNameType = toTypeName("Param", param.paramName); - if (uniqueOptionalParamsByName.containsKey(paramNameType)) { - CodegenParameter lastParam = this.uniqueOptionalParamsByName.get(paramNameType); + if (uniqueParamsByName.containsKey(paramNameType)) { + CodegenParameter lastParam = this.uniqueParamsByName.get(paramNameType); if (lastParam.dataType != null && lastParam.dataType.equals(param.dataType)) { param.vendorExtensions.put("x-duplicate", true); } else { paramNameType = paramNameType + param.dataType; - while (modelNames.containsKey(paramNameType)) { + while (typeNames.contains(paramNameType)) { paramNameType = generateNextName(paramNameType); } + uniqueParamsByName.put(paramNameType, param); } } else { - while (modelNames.containsKey(paramNameType)) { + while (typeNames.contains(paramNameType)) { paramNameType = generateNextName(paramNameType); } - uniqueOptionalParamsByName.put(paramNameType, param); + uniqueParamsByName.put(paramNameType, param); } param.vendorExtensions.put("x-paramNameType", paramNameType); - op.vendorExtensions.put("x-hasBodyOrFormParam", op.getHasBodyParam() || op.getHasFormParams()); + typeNames.add(paramNameType); } } if (op.getHasPathParams()) { @@ -572,7 +579,18 @@ public CodegenOperation fromOperation(String resourcePath, String httpMethod, Op return op; } - + + public List fromSecurity(Map schemes) { + List secs = super.fromSecurity(schemes); + for(CodegenSecurity sec : secs) { + String prefix = ""; + if(sec.isBasic) prefix = "AuthBasic"; + if(sec.isApiKey) prefix = "AuthApiKey"; + if(sec.isOAuth) prefix = "AuthOAuth"; + sec.name = prefix + toTypeName("",sec.name); + } + return secs; + } @Override public Map postProcessOperations(Map objs) { @@ -586,6 +604,7 @@ public Map postProcessOperations(Map objs) { additionalProperties.put("x-hasUnknownMimeTypes", !unknownMimeTypes.isEmpty()); additionalProperties.put("x-unknownMimeTypes", unknownMimeTypes); + additionalProperties.put("x-allUniqueParams", uniqueParamsByName.values()); return ret; } @@ -619,12 +638,13 @@ public Map postProcessOperationsWithModels(Map o public CodegenModel fromModel(String name, Model mod, Map allDefinitions) { CodegenModel model = super.fromModel(name, mod, allDefinitions); - while (uniqueOptionalParamsByName.containsKey(model.classname)) { + while (typeNames.contains(model.classname)) { model.classname = generateNextName(model.classname); } + typeNames.add(model.classname); // From the model name, compute the prefix for the fields. - String prefix = WordUtils.uncapitalize(model.classname); + String prefix = StringUtils.uncapitalize(model.classname); for (CodegenProperty prop : model.vars) { prop.name = toVarName(prefix, prop.name); } @@ -635,7 +655,6 @@ public CodegenModel fromModel(String name, Model mod, Map allDefi return model; } - modelNames.put(model.classname, model); return model; } @@ -674,6 +693,7 @@ private void processMediaType(CodegenOperation op, Map m) { if(StringUtils.isBlank(mediaType)) return; String mimeType = getMimeDataType(mediaType); + typeNames.add(mimeType); m.put(MEDIA_DATA_TYPE, mimeType); if (isJsonMimeType(mediaType)) { m.put(MEDIA_IS_JSON, "true"); @@ -761,6 +781,7 @@ private static boolean isMultipartOperation(List> consumes) } return false; } + @Override public String toVarName(String name) { return toVarName("", name); @@ -794,8 +815,28 @@ public String toModelFilename(String name) { return toTypeName("Model", name); } public String toTypeName(String prefix, String name) { - name = camelize(underscore(sanitizeName(name))); - + name = escapeIdentifier(prefix, camelize(sanitizeName(name))); + return name; + } + @Override + public String toOperationId(String operationId) { + if (StringUtils.isEmpty(operationId)) { + throw new RuntimeException("Empty method/operation name (operationId) not allowed"); + } + operationId = escapeIdentifier("op",camelize(sanitizeName(operationId), true)); + String uniqueName = operationId; + String uniqueNameType = toTypeName("Op", operationId); + while (typeNames.contains(uniqueNameType)) { + uniqueName = generateNextName(uniqueName); + uniqueNameType = toTypeName("Op", uniqueName); + } + typeNames.add(uniqueNameType); + if(!operationId.equals(uniqueName)) { + LOGGER.warn("generated unique operationId `" + uniqueName + "`"); + } + return uniqueName; + } + public String escapeIdentifier(String prefix, String name) { if(StringUtils.isBlank(prefix)) return name; if (isReservedWord(name)) { @@ -815,4 +856,65 @@ public String toTypeName(String prefix, String name) { static boolean isJsonMimeType(String mime) { return mime != null && JSON_MIME_PATTERN.matcher(mime).matches(); } + + @Override + public String toDefaultValue(Property p) { + if (p instanceof StringProperty) { + StringProperty dp = (StringProperty) p; + if (dp.getDefault() != null) { + return "\"" + escapeText(dp.getDefault()) + "\""; + } + } else if (p instanceof BooleanProperty) { + BooleanProperty dp = (BooleanProperty) p; + if (dp.getDefault() != null) { + if (dp.getDefault().toString().equalsIgnoreCase("false")) + return "False"; + else + return "True"; + } + } else if (p instanceof DoubleProperty) { + DoubleProperty dp = (DoubleProperty) p; + if (dp.getDefault() != null) { + return dp.getDefault().toString(); + } + } else if (p instanceof FloatProperty) { + FloatProperty dp = (FloatProperty) p; + if (dp.getDefault() != null) { + return dp.getDefault().toString(); + } + } else if (p instanceof IntegerProperty) { + IntegerProperty dp = (IntegerProperty) p; + if (dp.getDefault() != null) { + return dp.getDefault().toString(); + } + } else if (p instanceof LongProperty) { + LongProperty dp = (LongProperty) p; + if (dp.getDefault() != null) { + return dp.getDefault().toString(); + } + } + + return null; + } + + // override with any special text escaping logic + @SuppressWarnings("static-method") + public String escapeText(String input) { + if (input == null) { + return input; + } + + // remove \t, \n, \r + // replace \ with \\ + // replace " with \" + // outter unescape to retain the original multi-byte characters + // finally escalate characters avoiding code injection + return escapeUnsafeCharacters( + StringEscapeUtils.unescapeJava( + StringEscapeUtils.escapeJava(input) + .replace("\\/", "/")) + .replaceAll("[\\t\\n\\r]"," ") + .replace("\\", "\\\\") + .replace("\"", "\\\"")); + } } diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/API.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/API.mustache index 06cad2f8d0c8..e9208e5cc524 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/API.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/API.mustache @@ -3,16 +3,17 @@ Module : {{title}}.API -} -{-# LANGUAGE RecordWildCards #-} - -{-# LANGUAGE MultiParamTypeClasses #-} -{-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE ScopedTypeVariables #-} -{-# LANGUAGE FlexibleInstances #-} -{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE ConstraintKinds #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE InstanceSigs #-} +{-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE NamedFieldPuns #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RecordWildCards #-} +{-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE ExistentialQuantification #-} {-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-} module {{title}}.API where @@ -31,6 +32,7 @@ import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Builder as BB import qualified Data.ByteString.Char8 as BC import qualified Data.ByteString.Lazy.Char8 as BCL +import qualified Data.ByteString.Base64 as B64 import qualified Network.HTTP.Client.MultipartFormData as NH import qualified Network.HTTP.Media as ME @@ -40,7 +42,7 @@ import qualified Web.HttpApiData as WH import qualified Web.FormUrlEncoded as WH import qualified Data.CaseInsensitive as CI -import qualified Data.Data as P (Typeable) +import qualified Data.Data as P (Typeable, TypeRep, typeOf, typeRep) import qualified Data.Foldable as P import qualified Data.Map as Map import qualified Data.Set as Set @@ -76,30 +78,31 @@ import qualified Prelude as P -- {{/summary}}{{#notes}} -- {{{.}}} -- {{/notes}}{{#hasAuthMethods}} --- AuthMethod: {{#authMethods}}{{{name}}}{{#hasMore}}, {{/hasMore}}{{/authMethods}} +-- AuthMethod: {{#authMethods}}'{{{name}}}'{{#hasMore}}, {{/hasMore}}{{/authMethods}} -- {{/hasAuthMethods}}{{#vendorExtensions.x-hasUnknownReturn}} -- Note: Has 'Produces' instances, but no response schema -- {{/vendorExtensions.x-hasUnknownReturn}} {{operationId}} - :: {{#vendorExtensions.x-hasBodyOrFormParam}}(Consumes {{{vendorExtensions.x-operationType}}} contentType{{#allParams}}{{#isBodyParam}}{{#required}}, MimeRender contentType {{dataType}}{{/required}}{{/isBodyParam}}{{/allParams}}) + :: {{#vendorExtensions.x-hasBodyOrFormParam}}(Consumes {{{vendorExtensions.x-operationType}}} contentType{{#allParams}}{{#isBodyParam}}{{#required}}, MimeRender contentType {{#vendorExtensions.x-paramNameType}}{{{.}}}{{/vendorExtensions.x-paramNameType}}{{^vendorExtensions.x-paramNameType}}{{{dataType}}}{{/vendorExtensions.x-paramNameType}}{{/required}}{{/isBodyParam}}{{/allParams}}) => contentType -- ^ request content-type ('MimeType') - -> {{/vendorExtensions.x-hasBodyOrFormParam}}{{#allParams}}{{#required}}{{dataType}} -- ^ "{{{paramName}}}"{{#description}} - {{/description}} {{{description}}} + -> {{/vendorExtensions.x-hasBodyOrFormParam}}{{#allParams}}{{#required}}{{#vendorExtensions.x-paramNameType}}{{{.}}}{{/vendorExtensions.x-paramNameType}}{{^vendorExtensions.x-paramNameType}}{{{dataType}}}{{/vendorExtensions.x-paramNameType}} -- ^ "{{{paramName}}}"{{#description}} - {{/description}} {{{description}}} -> {{/required}}{{/allParams}}{{requestType}} {{{vendorExtensions.x-operationType}}} {{#vendorExtensions.x-hasBodyOrFormParam}}contentType{{/vendorExtensions.x-hasBodyOrFormParam}}{{^vendorExtensions.x-hasBodyOrFormParam}}MimeNoContent{{/vendorExtensions.x-hasBodyOrFormParam}} {{vendorExtensions.x-returnType}} -{{operationId}} {{#vendorExtensions.x-hasBodyOrFormParam}}_ {{/vendorExtensions.x-hasBodyOrFormParam}}{{#allParams}}{{#required}}{{{paramName}}} {{/required}}{{/allParams}}= +{{operationId}} {{#vendorExtensions.x-hasBodyOrFormParam}}_ {{/vendorExtensions.x-hasBodyOrFormParam}}{{#allParams}}{{#required}}{{#isBodyParam}}{{{paramName}}}{{/isBodyParam}}{{^isBodyParam}}({{{vendorExtensions.x-paramNameType}}} {{{paramName}}}){{/isBodyParam}} {{/required}}{{/allParams}}= _mkRequest "{{httpMethod}}" [{{#pathParams}}{{#vendorExtensions.x-pathPrefix}}"{{.}}",{{/vendorExtensions.x-pathPrefix}}toPath {{{paramName}}}{{#hasMore}},{{/hasMore}}{{/pathParams}}{{#vendorExtensions.x-pathSuffix}}{{#vendorExtensions.x-hasPathParams}},{{/vendorExtensions.x-hasPathParams}}"{{.}}"{{/vendorExtensions.x-pathSuffix}}]{{#allParams}}{{#required}} - {{#isHeaderParam}}`setHeader` {{>_headerColl}} ("{{{baseName}}}", {{{paramName}}}){{/isHeaderParam}}{{#isQueryParam}}`_setQuery` {{>_queryColl}} ("{{{baseName}}}", Just {{{paramName}}}){{/isQueryParam}}{{#isFormParam}}{{#isFile}}`_addMultiFormPart` NH.partFileSource "{{{baseName}}}" {{{paramName}}}{{/isFile}}{{^isFile}}{{#isMultipart}}`_addMultiFormPart` NH.partLBS "{{{baseName}}}" (mimeRender' MimeMultipartFormData {{{paramName}}}){{/isMultipart}}{{^isMultipart}}`_addForm` {{>_formColl}} ("{{{baseName}}}", {{{paramName}}}){{/isMultipart}}{{/isFile}}{{/isFormParam}}{{#isBodyParam}}`setBodyParam` {{{paramName}}}{{/isBodyParam}}{{/required}}{{/allParams}}{{#isDeprecated}} + {{#isHeaderParam}}`setHeader` {{>_headerColl}} ("{{{baseName}}}", {{{paramName}}}){{/isHeaderParam}}{{#isQueryParam}}`setQuery` {{>_queryColl}} ("{{{baseName}}}", Just {{{paramName}}}){{/isQueryParam}}{{#isFormParam}}{{#isFile}}`_addMultiFormPart` NH.partFileSource "{{{baseName}}}" {{{paramName}}}{{/isFile}}{{^isFile}}{{#isMultipart}}`_addMultiFormPart` NH.partLBS "{{{baseName}}}" (mimeRender' MimeMultipartFormData {{{paramName}}}){{/isMultipart}}{{^isMultipart}}`addForm` {{>_formColl}} ("{{{baseName}}}", {{{paramName}}}){{/isMultipart}}{{/isFile}}{{/isFormParam}}{{#isBodyParam}}`setBodyParam` {{{paramName}}}{{/isBodyParam}}{{/required}}{{/allParams}}{{#authMethods}} + `_hasAuthType` (P.Proxy :: P.Proxy {{name}}){{/authMethods}}{{#isDeprecated}} {-# DEPRECATED {{operationId}} "" #-}{{/isDeprecated}} data {{{vendorExtensions.x-operationType}}} {{#allParams}}{{#isBodyParam}}{{#description}} -- | /Body Param/ "{{{baseName}}}" - {{{description}}}{{/description}} -instance HasBodyParam {{{vendorExtensions.x-operationType}}} {{{dataType}}}{{/isBodyParam}}{{/allParams}} {{#vendorExtensions.x-hasOptionalParams}}{{#allParams}}{{^isBodyParam}}{{^required}}{{#description}} +instance HasBodyParam {{{vendorExtensions.x-operationType}}} {{#vendorExtensions.x-paramNameType}}{{{.}}}{{/vendorExtensions.x-paramNameType}}{{^vendorExtensions.x-paramNameType}}{{{dataType}}}{{/vendorExtensions.x-paramNameType}}{{/isBodyParam}}{{/allParams}} {{#vendorExtensions.x-hasOptionalParams}}{{#allParams}}{{^isBodyParam}}{{^required}}{{#description}} -- | /Optional Param/ "{{{baseName}}}" - {{{description}}}{{/description}} instance HasOptionalParam {{{vendorExtensions.x-operationType}}} {{{vendorExtensions.x-paramNameType}}} where applyOptionalParam req ({{{vendorExtensions.x-paramNameType}}} xs) = - {{#isHeaderParam}}req `setHeader` {{>_headerColl}} ("{{{baseName}}}", xs){{/isHeaderParam}}{{#isQueryParam}}req `_setQuery` {{>_queryColl}} ("{{{baseName}}}", Just xs){{/isQueryParam}}{{#isFormParam}}{{#isFile}}req `_addMultiFormPart` NH.partFileSource "{{{baseName}}}" xs{{/isFile}}{{^isFile}}{{#isMultipart}}req `_addMultiFormPart` NH.partLBS "{{{baseName}}}" (mimeRender' MimeMultipartFormData xs){{/isMultipart}}{{^isMultipart}}req `_addForm` {{>_formColl}} ("{{{baseName}}}", xs){{/isMultipart}}{{/isFile}}{{/isFormParam}}{{/required}}{{/isBodyParam}}{{/allParams}}{{/vendorExtensions.x-hasOptionalParams}}{{#hasConsumes}} + {{#isHeaderParam}}req `setHeader` {{>_headerColl}} ("{{{baseName}}}", xs){{/isHeaderParam}}{{#isQueryParam}}req `setQuery` {{>_queryColl}} ("{{{baseName}}}", Just xs){{/isQueryParam}}{{#isFormParam}}{{#isFile}}req `_addMultiFormPart` NH.partFileSource "{{{baseName}}}" xs{{/isFile}}{{^isFile}}{{#isMultipart}}req `_addMultiFormPart` NH.partLBS "{{{baseName}}}" (mimeRender' MimeMultipartFormData xs){{/isMultipart}}{{^isMultipart}}req `addForm` {{>_formColl}} ("{{{baseName}}}", xs){{/isMultipart}}{{/isFile}}{{/isFormParam}}{{/required}}{{/isBodyParam}}{{/allParams}}{{/vendorExtensions.x-hasOptionalParams}}{{#hasConsumes}} {{#consumes}}-- | @{{{mediaType}}}@ instance Consumes {{{vendorExtensions.x-operationType}}} {{{x-mediaDataType}}} @@ -135,11 +138,12 @@ class HasOptionalParam req param where infixl 2 -&- --- * Optional Request Parameter Types +-- * Request Parameter Types -{{#apiInfo}}{{#apis}}{{#operations}}{{#operation}}{{#vendorExtensions.x-hasOptionalParams}}{{#allParams}}{{^required}}{{^vendorExtensions.x-duplicate}} -newtype {{{vendorExtensions.x-paramNameType}}} = {{{vendorExtensions.x-paramNameType}}} { un{{{vendorExtensions.x-paramNameType}}} :: {{{dataType}}} } deriving (P.Eq, P.Show) -{{/vendorExtensions.x-duplicate}}{{/required}}{{/allParams}}{{/vendorExtensions.x-hasOptionalParams}}{{/operation}}{{/operations}}{{/apis}}{{/apiInfo}} +{{#x-allUniqueParams}} +-- | {{{vendorExtensions.x-paramNameType}}} +newtype {{{vendorExtensions.x-paramNameType}}} = {{{vendorExtensions.x-paramNameType}}} { un{{{vendorExtensions.x-paramNameType}}} :: {{{dataType}}} } deriving (P.Eq, P.Show{{#isBodyParam}}, A.ToJSON{{/isBodyParam}}) +{{/x-allUniqueParams}} -- * {{requestType}} @@ -148,6 +152,7 @@ data {{requestType}} req contentType res = {{requestType}} { rMethod :: NH.Method -- ^ Method of {{requestType}} , rUrlPath :: [BCL.ByteString] -- ^ Endpoint of {{requestType}} , rParams :: Params -- ^ params of {{requestType}} + , rAuthTypes :: [P.TypeRep] -- ^ types of auth methods } deriving (P.Show) @@ -166,6 +171,11 @@ rParamsL :: Lens_' ({{requestType}} req contentType res) Params rParamsL f {{requestType}}{..} = (\rParams -> {{requestType}} { rParams, ..} ) <$> f rParams {-# INLINE rParamsL #-} +-- | 'rParams' Lens +rAuthTypesL :: Lens_' ({{requestType}} req contentType res) [P.TypeRep] +rAuthTypesL f {{requestType}}{..} = (\rAuthTypes -> {{requestType}} { rAuthTypes, ..} ) <$> f rAuthTypes +{-# INLINE rAuthTypesL #-} + -- | Request Params data Params = Params { paramsQuery :: NH.Query @@ -203,7 +213,7 @@ data ParamBody _mkRequest :: NH.Method -- ^ Method -> [BCL.ByteString] -- ^ Endpoint -> {{requestType}} req contentType res -- ^ req: Request Type, res: Response Type -_mkRequest m u = {{requestType}} m u _mkParams +_mkRequest m u = {{requestType}} m u _mkParams [] _mkParams :: Params _mkParams = Params [] [] ParamBodyNone @@ -235,8 +245,8 @@ _setAcceptHeader req accept = Just m -> req `setHeader` [("accept", BC.pack $ P.show m)] Nothing -> req `removeHeader` ["accept"] -_setQuery :: {{requestType}} req contentType res -> [NH.QueryItem] -> {{requestType}} req contentType res -_setQuery req query = +setQuery :: {{requestType}} req contentType res -> [NH.QueryItem] -> {{requestType}} req contentType res +setQuery req query = req & L.over (rParamsL . paramsQueryL) @@ -244,8 +254,8 @@ _setQuery req query = where cifst = CI.mk . P.fst -_addForm :: {{requestType}} req contentType res -> WH.Form -> {{requestType}} req contentType res -_addForm req newform = +addForm :: {{requestType}} req contentType res -> WH.Form -> {{requestType}} req contentType res +addForm req newform = let form = case paramsBody (rParams req) of ParamBodyFormUrlEncoded _form -> _form _ -> mempty @@ -266,6 +276,9 @@ _setBodyLBS :: {{requestType}} req contentType res -> BL.ByteString -> {{request _setBodyLBS req body = req & L.set (rParamsL . paramsBodyL) (ParamBodyBL body) +_hasAuthType :: AuthMethod authMethod => {{requestType}} req contentType res -> P.Proxy authMethod -> {{requestType}} req contentType res +_hasAuthType req proxy = + req & L.over rAuthTypesL (P.typeRep proxy :) -- ** Params Utils @@ -330,3 +343,49 @@ _toCollA' c encode one xs = case c of {-# INLINE expandList #-} {-# INLINE combine #-} +-- * AuthMethods + +-- | Provides a method to apply auth methods to requests +class P.Typeable a => AuthMethod a where + applyAuthMethod :: {{requestType}} req contentType res -> a -> {{requestType}} req contentType res + +-- | An existential wrapper for any AuthMethod +data AnyAuthMethod = forall a. AuthMethod a => AnyAuthMethod a deriving (P.Typeable) + +instance AuthMethod AnyAuthMethod where applyAuthMethod req (AnyAuthMethod a) = applyAuthMethod req a + +{{#authMethods}}{{#isBasic}}-- ** {{name}} +data {{name}} = + {{name}} B.ByteString B.ByteString -- ^ username password + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod {{name}} where + applyAuthMethod req a@({{name}} user pw) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("Authorization", T.decodeUtf8 cred) + else req + where cred = BC.append "Basic " (B64.encode $ BC.concat [ user, ":", pw ]) + +{{/isBasic}}{{#isApiKey}}-- ** {{name}} +data {{name}} = + {{name}} Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod {{name}} where + applyAuthMethod req a@({{name}} secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req {{#isKeyInHeader}}`setHeader` toHeader ("{{keyParamName}}", secret){{/isKeyInHeader}}{{^isKeyInHeader}}`setQuery` toQuery ("{{keyParamName}}", Just secret){{/isKeyInHeader}} + else req + +{{/isApiKey}}{{#isOAuth}}-- ** {{name}} +data {{name}} = + {{name}} Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod {{name}} where + applyAuthMethod req a@({{name}} secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("Authorization", "Bearer " <> secret) + else req + +{{/isOAuth}}{{/authMethods}} diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/Client.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/Client.mustache index c2e6655e7903..5e787e7c4a12 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/Client.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/Client.mustache @@ -59,6 +59,7 @@ data {{configType}} = {{configType}} , configUserAgent :: Text -- ^ user-agent supplied in the Request , configLogExecWithContext :: LogExecWithContext -- ^ Run a block using a Logger instance , configLogContext :: LogContext -- ^ Configures the logger + , configAuthMethods :: [AnyAuthMethod] -- ^ List of configured auth methods } -- | display the config @@ -87,13 +88,21 @@ newConfig = do , configUserAgent = "{{#httpUserAgent}}{{{.}}}{{/httpUserAgent}}{{^httpUserAgent}}{{{artifactId}}}/{{{artifactVersion}}}{{/httpUserAgent}}" , configLogExecWithContext = runDefaultLogExecWithContext , configLogContext = logCxt + , configAuthMethods = [] } +-- | updates config use AuthMethod on matching requests +addAuthMethod :: AuthMethod auth => {{configType}} -> auth -> {{configType}} +addAuthMethod config@{{configType}} {configAuthMethods = as} a = + config { configAuthMethods = AnyAuthMethod a : as} + +-- | updates the config to use stdout logging withStdoutLogging :: {{configType}} -> IO {{configType}} withStdoutLogging p = do logCxt <- stdoutLoggingContext (configLogContext p) return $ p { configLogExecWithContext = stdoutLoggingExec, configLogContext = logCxt } +-- | updates the config to use stderr logging withStderrLogging :: {{configType}} -> IO {{configType}} withStderrLogging p = do logCxt <- stderrLoggingContext (configLogContext p) @@ -226,7 +235,9 @@ _toInitRequest -> IO (InitRequest req contentType res accept) -- ^ initialized request _toInitRequest config req0 accept = do parsedReq <- NH.parseRequest $ BCL.unpack $ BCL.append (configHost config) (BCL.concat (rUrlPath req0)) - let req1 = _setAcceptHeader req0 accept & _setContentTypeHeader + let req1 = _applyAuthMethods req0 config + & _setContentTypeHeader + & flip _setAcceptHeader accept reqHeaders = ("User-Agent", WH.toHeader (configUserAgent config)) : paramsHeaders (rParams req1) reqQuery = NH.renderQuery True (paramsQuery (rParams req1)) pReq = parsedReq { NH.method = (rMethod req1) @@ -242,6 +253,16 @@ _toInitRequest config req0 accept = do pure (InitRequest outReq) +-- | apply all matching AuthMethods in config to request +_applyAuthMethods + :: {{requestType}} req contentType res + -> {{configType}} + -> {{requestType}} req contentType res +_applyAuthMethods req {{configType}} {configAuthMethods = as} = + foldl go req as + where + go r (AnyAuthMethod a) = r `applyAuthMethod` a + -- | modify the underlying Request modifyInitRequest :: InitRequest req contentType res accept -> (NH.Request -> NH.Request) -> InitRequest req contentType res accept modifyInitRequest (InitRequest req) f = InitRequest (f req) diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/Model.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/Model.mustache index 3cf877fd2cef..ff7cf6a575ee 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/Model.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/Model.mustache @@ -56,7 +56,7 @@ import qualified Prelude as P {{#model}} -- ** {{classname}} --- |{{#title}} +-- | {{classname}}{{#title}} -- {{{.}}} -- {{/title}}{{#description}} -- {{{.}}}{{/description}} @@ -65,12 +65,15 @@ data {{classname}} = {{classname}} , {{/hasMore}}{{/vars}} } deriving (P.Show,P.Eq,P.Typeable{{#modelDeriving}},{{modelDeriving}}{{/modelDeriving}}) + +-- | FromJSON {{classname}} instance A.FromJSON {{classname}} where parseJSON = A.withObject "{{classname}}" $ \o -> {{^hasVars}}pure {{/hasVars}}{{classname}} {{#hasVars}}<$>{{/hasVars}}{{#vars}} (o {{#required}}.: {{/required}}{{^required}}{{^allowFromJsonNulls}}.:!{{/allowFromJsonNulls}}{{#allowFromJsonNulls}}.:?{{/allowFromJsonNulls}}{{/required}} "{{baseName}}"){{#hasMore}} <*>{{/hasMore}}{{/vars}} +-- | ToJSON {{classname}} instance A.ToJSON {{classname}} where toJSON {{classname}} {{#hasVars}}{..}{{/hasVars}} = {{^allowToJsonNulls}}_omitNulls{{/allowToJsonNulls}}{{#allowToJsonNulls}}A.object{{/allowToJsonNulls}} @@ -79,12 +82,14 @@ instance A.ToJSON {{classname}} where ] {{#vendorExtensions.x-hasMimeFormUrlEncoded}} +-- | FromForm {{classname}} instance WH.FromForm {{classname}} where fromForm f = {{^hasVars}}pure {{/hasVars}}{{classname}} {{#hasVars}}<$>{{/hasVars}}{{#vars}} ({{#required}}WH.parseUnique {{/required}}{{^required}}WH.parseMaybe {{/required}}"{{baseName}}" f){{#hasMore}} <*>{{/hasMore}}{{/vars}} +-- | ToForm {{classname}} instance WH.ToForm {{classname}} where toForm {{classname}} {{#hasVars}}{..}{{/hasVars}} = WH.Form $ HM.fromList $ P.catMaybes $ @@ -111,21 +116,23 @@ mk{{classname}} {{#requiredVars}}{{name}} {{/requiredVars}}= -- * Utils -- | Removes Null fields. (OpenAPI-Specification 2.0 does not allow Null in JSON) - _omitNulls :: [(Text, A.Value)] -> A.Value _omitNulls = A.object . P.filter notNull where notNull (_, A.Null) = False notNull _ = True +-- | Encodes fields using WH.toQueryParam _toFormItem :: (WH.ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text]) _toFormItem name x = (name,) . (:[]) . WH.toQueryParam <$> x +-- | Collapse (Just "") to Nothing _emptyToNothing :: Maybe String -> Maybe String _emptyToNothing (Just "") = Nothing _emptyToNothing x = x {-# INLINE _emptyToNothing #-} +-- | Collapse (Just mempty) to Nothing _memptyToNothing :: (P.Monoid a, P.Eq a) => Maybe a -> Maybe a _memptyToNothing (Just x) | x P.== P.mempty = Nothing _memptyToNothing x = x @@ -158,6 +165,7 @@ _showDateTime = {{^dateTimeFormat}}TI.formatISO8601Millis{{/dateTimeFormat}}{{#dateTimeFormat}}TI.formatTime TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}} {-# INLINE _showDateTime #-} +-- | parse an ISO8601 date-time string _parseISO8601 :: (TI.ParseTime t, Monad m, Alternative m) => String -> m t _parseISO8601 t = P.asum $ diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/README.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/README.mustache index 1b1db613a2d2..938a16c1ae5a 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/README.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/README.mustache @@ -46,10 +46,6 @@ haskell-http-client ### Unsupported Swagger Features -* Auth Methods (https://swagger.io/docs/specification/2-0/authentication/) - - - use `setHeader` to add any required headers to requests - * Model Inheritance * Default Parameter Values @@ -92,6 +88,7 @@ View the full list of Codegen "config option" parameters with the command: java -jar swagger-codegen-cli.jar config-help -l haskell-http-client ``` +## Usage Notes ### Example SwaggerPetstore Haddock documentation @@ -103,12 +100,12 @@ An example of the generated haddock documentation targeting the server http://pe An example application using the auto-generated haskell-http-client bindings for the server http://petstore.swagger.io/ can be found [here][3] -[3]: https://github.com/swagger-api/swagger-codegen/tree/c7d145a4ba3c0627e04ece9eb97e354ac91be821/samples/client/petstore/haskell-http-client/example-app - -### Usage Notes +[3]: https://github.com/swagger-api/swagger-codegen/tree/master/samples/client/petstore/haskell-http-client/example-app This library is intended to be imported qualified. +### Modules + | MODULE | NOTES | | ------------------- | --------------------------------------------------- | | {{title}}.Client | use the "dispatch" functions to send requests | @@ -118,6 +115,9 @@ This library is intended to be imported qualified. | {{title}}.Lens | lenses for model fields | | {{title}}.Logging | logging functions and utils | + +### MimeTypes + This library adds type safety around what swagger specifies as Produces and Consumes for each Operation (e.g. the list of MIME types an Operation can Produce (using 'accept' headers) and Consume (using 'content-type' headers). @@ -151,16 +151,6 @@ this would indicate that: * the _addFoo_ operation can set it's body param of _FooModel_ via `setBodyParam` * the _addFoo_ operation can set 2 different optional parameters via `applyOptionalParam` -putting this together: - -```haskell -let addFooRequest = addFoo MimeJSON foomodel requiredparam1 requiredparam2 - `applyOptionalParam` FooId 1 - `applyOptionalParam` FooName "name" - `setHeader` [("api_key","xxyy")] -addFooResult <- dispatchMime mgr config addFooRequest MimeXML -``` - If the swagger spec doesn't declare it can accept or produce a certain MIME type for a given Operation, you should either add a Produces or Consumes instance for the desired MIME types (assuming the server @@ -174,4 +164,29 @@ x-www-form-urlencoded instances (FromFrom, ToForm) will also be generated if the model fields are primitive types, and there are Operations using x-www-form-urlencoded which use those models. -See the example app and the haddocks for details. +### Authentication + +A haskell data type will be generated for each swagger authentication type. + +If for example the AuthMethod `AuthOAuthFoo` is generated for OAuth operations, then +`addAuthMethod` should be used to add the AuthMethod config. + +When a request is dispatched, if a matching auth method is found in +the config, it will be applied to the request. + +### Example + +```haskell +mgr <- newManager defaultManagerSettings +config0 <- withStdoutLogging =<< newConfig +let config = config0 + `addAuthMethod` AuthOAuthFoo "secret-key" + +let addFooRequest = addFoo MimeJSON foomodel requiredparam1 requiredparam2 + `applyOptionalParam` FooId 1 + `applyOptionalParam` FooName "name" + `setHeader` [("qux_header","xxyy")] +addFooResult <- dispatchMime mgr config addFooRequest MimeXML +``` + +See the example app and the haddocks for details. \ No newline at end of file diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/haskell-http-client.cabal.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/haskell-http-client.cabal.mustache index 97638e2afa8d..1a347068d2b9 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/haskell-http-client.cabal.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/haskell-http-client.cabal.mustache @@ -94,6 +94,7 @@ test-suite tests , time , iso8601-time , aeson + , vector , semigroups , QuickCheck other-modules: diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Instances.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Instances.mustache index bf3e087d3cdc..c1752cc16447 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Instances.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Instances.mustache @@ -2,20 +2,23 @@ module Instances where -import Data.Text (Text, pack) +import Control.Monad import Data.Char (isSpace) import Data.List (sort) -import qualified Data.Time as TI import Test.QuickCheck +import qualified Data.Aeson as A +import qualified Data.ByteString.Lazy as BL import qualified Data.HashMap.Strict as HM import qualified Data.Set as Set -import qualified Data.ByteString.Lazy as BL +import qualified Data.Text as T +import qualified Data.Time as TI +import qualified Data.Vector as V import ApproxEq import {{title}}.Model -instance Arbitrary Text where - arbitrary = pack <$> arbitrary +instance Arbitrary T.Text where + arbitrary = T.pack <$> arbitrary instance Arbitrary TI.Day where arbitrary = TI.ModifiedJulianDay . (2000 +) <$> arbitrary @@ -45,6 +48,27 @@ instance Arbitrary Date where arbitrary = Date <$> arbitrary shrink (Date xs) = Date <$> shrink xs +-- | A naive Arbitrary instance for A.Value: +instance Arbitrary A.Value where + arbitrary = frequency [(3, simpleTypes), (1, arrayTypes), (1, objectTypes)] + where + simpleTypes :: Gen A.Value + simpleTypes = + frequency + [ (1, return A.Null) + , (2, liftM A.Bool (arbitrary :: Gen Bool)) + , (2, liftM (A.Number . fromIntegral) (arbitrary :: Gen Int)) + , (2, liftM (A.String . T.pack) (arbitrary :: Gen String)) + ] + mapF (k, v) = (T.pack k, v) + simpleAndArrays = frequency [(1, sized sizedArray), (4, simpleTypes)] + arrayTypes = sized sizedArray + objectTypes = sized sizedObject + sizedArray n = liftM (A.Array . V.fromList) $ replicateM n simpleTypes + sizedObject n = + liftM (A.object . map mapF) $ + replicateM n $ (,) <$> (arbitrary :: Gen String) <*> simpleAndArrays + -- | Checks if a given list has no duplicates in _O(n log n)_. hasNoDups :: (Ord a) diff --git a/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Test.mustache b/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Test.mustache index e829e013040c..bc82ad90638f 100644 --- a/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Test.mustache +++ b/modules/swagger-codegen/src/main/resources/haskell-http-client/tests/Test.mustache @@ -17,7 +17,8 @@ import {{title}}.MimeTypes main :: IO () main = - hspec $ modifyMaxSize (const 10) $ - do describe "JSON instances" $ - do {{#models}}{{#model}}propMimeEq MimeJSON (Proxy :: Proxy {{classname}}) - {{/model}}{{/models}} + hspec $ modifyMaxSize (const 10) $ do + describe "JSON instances" $ do + pure () + {{#models}}{{#model}}propMimeEq MimeJSON (Proxy :: Proxy {{classname}}) + {{/model}}{{/models}} diff --git a/samples/client/petstore/haskell-http-client/Makefile b/samples/client/petstore/haskell-http-client/Makefile index 7d74a839ec94..f80576419427 100644 --- a/samples/client/petstore/haskell-http-client/Makefile +++ b/samples/client/petstore/haskell-http-client/Makefile @@ -2,9 +2,9 @@ STACKCMD := stack --install-ghc .PHONY: all clean build test test-integration build-example build-integration all: clean build test build-example build-integration clean: ; (rm -Rf ./.stack-work ./example-app/.stack-work ./tests-integration/.stack-work); -build: ; ($(STACKCMD) haddock); -test: ; ($(STACKCMD) test); -build-example: build ; (cd ./example-app; $(STACKCMD) build); +build: ; ($(STACKCMD) haddock --fast); +test: ; ($(STACKCMD) test --fast); +build-example: build ; (cd ./example-app; $(STACKCMD) build --fast); # a test-only project may exit with ExitFailure, despite building successfully -build-integration: build ; (cd ./tests-integration; $(STACKCMD) build --no-run-tests); -test-integration: build-integration ; (cd ./tests-integration; $(STACKCMD) test); +build-integration: build ; (cd ./tests-integration; $(STACKCMD) build --no-run-tests --fast); +test-integration: build-integration ; (cd ./tests-integration; $(STACKCMD) test --fast); diff --git a/samples/client/petstore/haskell-http-client/README.md b/samples/client/petstore/haskell-http-client/README.md index cfbe72747d82..6bad5f064124 100644 --- a/samples/client/petstore/haskell-http-client/README.md +++ b/samples/client/petstore/haskell-http-client/README.md @@ -46,10 +46,6 @@ haskell-http-client ### Unsupported Swagger Features -* Auth Methods (https://swagger.io/docs/specification/2-0/authentication/) - - - use `setHeader` to add any required headers to requests - * Model Inheritance * Default Parameter Values @@ -92,6 +88,7 @@ View the full list of Codegen "config option" parameters with the command: java -jar swagger-codegen-cli.jar config-help -l haskell-http-client ``` +## Usage Notes ### Example SwaggerPetstore Haddock documentation @@ -103,12 +100,12 @@ An example of the generated haddock documentation targeting the server http://pe An example application using the auto-generated haskell-http-client bindings for the server http://petstore.swagger.io/ can be found [here][3] -[3]: https://github.com/swagger-api/swagger-codegen/tree/c7d145a4ba3c0627e04ece9eb97e354ac91be821/samples/client/petstore/haskell-http-client/example-app - -### Usage Notes +[3]: https://github.com/swagger-api/swagger-codegen/tree/master/samples/client/petstore/haskell-http-client/example-app This library is intended to be imported qualified. +### Modules + | MODULE | NOTES | | ------------------- | --------------------------------------------------- | | SwaggerPetstore.Client | use the "dispatch" functions to send requests | @@ -118,6 +115,9 @@ This library is intended to be imported qualified. | SwaggerPetstore.Lens | lenses for model fields | | SwaggerPetstore.Logging | logging functions and utils | + +### MimeTypes + This library adds type safety around what swagger specifies as Produces and Consumes for each Operation (e.g. the list of MIME types an Operation can Produce (using 'accept' headers) and Consume (using 'content-type' headers). @@ -151,16 +151,6 @@ this would indicate that: * the _addFoo_ operation can set it's body param of _FooModel_ via `setBodyParam` * the _addFoo_ operation can set 2 different optional parameters via `applyOptionalParam` -putting this together: - -```haskell -let addFooRequest = addFoo MimeJSON foomodel requiredparam1 requiredparam2 - `applyOptionalParam` FooId 1 - `applyOptionalParam` FooName "name" - `setHeader` [("api_key","xxyy")] -addFooResult <- dispatchMime mgr config addFooRequest MimeXML -``` - If the swagger spec doesn't declare it can accept or produce a certain MIME type for a given Operation, you should either add a Produces or Consumes instance for the desired MIME types (assuming the server @@ -174,4 +164,29 @@ x-www-form-urlencoded instances (FromFrom, ToForm) will also be generated if the model fields are primitive types, and there are Operations using x-www-form-urlencoded which use those models. -See the example app and the haddocks for details. +### Authentication + +A haskell data type will be generated for each swagger authentication type. + +If for example the AuthMethod `AuthOAuthFoo` is generated for OAuth operations, then +`addAuthMethod` should be used to add the AuthMethod config. + +When a request is dispatched, if a matching auth method is found in +the config, it will be applied to the request. + +### Example + +```haskell +mgr <- newManager defaultManagerSettings +config0 <- withStdoutLogging =<< newConfig +let config = config0 + `addAuthMethod` AuthOAuthFoo "secret-key" + +let addFooRequest = addFoo MimeJSON foomodel requiredparam1 requiredparam2 + `applyOptionalParam` FooId 1 + `applyOptionalParam` FooName "name" + `setHeader` [("qux_header","xxyy")] +addFooResult <- dispatchMime mgr config addFooRequest MimeXML +``` + +See the example app and the haddocks for details. \ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-API.html b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-API.html index a12cfceb1ae2..4fe2d43c872a 100644 --- a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-API.html +++ b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-API.html @@ -1,4 +1,4 @@ SwaggerPetstore.API

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.API

Description

 

Synopsis

Operations

AnotherFake

testSpecialTags

testSpecialTags Source #

Arguments

:: (Consumes TestSpecialTags contentType, MimeRender contentType Client) 
=> contentType

request content-type (MimeType)

-> Client

"body" - client model

-> SwaggerPetstoreRequest TestSpecialTags contentType Client 
PATCH /another-fake/dummy

To test special tags

To test special tags

data TestSpecialTags Source #

Instances

Fake

fakeOuterBooleanSerialize

fakeOuterBooleanSerialize Source #

Arguments

:: Consumes FakeOuterBooleanSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterBooleanSerialize contentType OuterBoolean 
POST /fake/outer/boolean

Test serialization of outer boolean types

fakeOuterCompositeSerialize

fakeOuterCompositeSerialize Source #

Arguments

:: Consumes FakeOuterCompositeSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterCompositeSerialize contentType OuterComposite 
POST /fake/outer/composite

Test serialization of object with outer number type

fakeOuterNumberSerialize

fakeOuterNumberSerialize Source #

Arguments

:: Consumes FakeOuterNumberSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterNumberSerialize contentType OuterNumber 
POST /fake/outer/number

Test serialization of outer number types

fakeOuterStringSerialize

fakeOuterStringSerialize Source #

Arguments

:: Consumes FakeOuterStringSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterStringSerialize contentType OuterString 
POST /fake/outer/string

Test serialization of outer string types

testClientModel

testClientModel Source #

Arguments

:: (Consumes TestClientModel contentType, MimeRender contentType Client) 
=> contentType

request content-type (MimeType)

-> Client

"body" - client model

-> SwaggerPetstoreRequest TestClientModel contentType Client 
PATCH /fake

To test "client" model

To test "client" model

data TestClientModel Source #

Instances

testEndpointParameters

testEndpointParameters Source #

Arguments

:: Consumes TestEndpointParameters contentType 
=> contentType

request content-type (MimeType)

-> Double

"number" - None

-> Double

"double" - None

-> Text

"patternWithoutDelimiter" - None

-> ByteArray

"byte" - None

-> SwaggerPetstoreRequest TestEndpointParameters contentType res 
POST /fake

Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트

Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트

AuthMethod: http_basic_test

Note: Has Produces instances, but no response schema

data TestEndpointParameters Source #

Instances

Produces TestEndpointParameters MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
Produces TestEndpointParameters MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
Consumes TestEndpointParameters MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
Consumes TestEndpointParameters MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
HasOptionalParam TestEndpointParameters Callback Source #

Optional Param "callback" - None

HasOptionalParam TestEndpointParameters Password Source #

Optional Param "password" - None

HasOptionalParam TestEndpointParameters ParamDateTime Source #

Optional Param "dateTime" - None

HasOptionalParam TestEndpointParameters ParamDate Source #

Optional Param "date" - None

HasOptionalParam TestEndpointParameters ParamBinary Source #

Optional Param "binary" - None

HasOptionalParam TestEndpointParameters ParamString Source #

Optional Param "string" - None

HasOptionalParam TestEndpointParameters ParamFloat Source #

Optional Param "float" - None

HasOptionalParam TestEndpointParameters Int64 Source #

Optional Param "int64" - None

HasOptionalParam TestEndpointParameters Int32 Source #

Optional Param "int32" - None

HasOptionalParam TestEndpointParameters ParamInteger Source #

Optional Param "integer" - None

testEnumParameters

testEnumParameters Source #

Arguments

:: Consumes TestEnumParameters contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest TestEnumParameters contentType res 
GET /fake

To test enum parameters

To test enum parameters

Note: Has Produces instances, but no response schema

data TestEnumParameters Source #

Instances

Produces TestEnumParameters MimeAny Source #
*/*
Consumes TestEnumParameters MimeAny Source #
*/*
HasOptionalParam TestEnumParameters EnumQueryDouble Source #

Optional Param "enum_query_double" - Query parameter enum test (double)

HasOptionalParam TestEnumParameters EnumQueryInteger Source #

Optional Param "enum_query_integer" - Query parameter enum test (double)

HasOptionalParam TestEnumParameters EnumQueryString Source #

Optional Param "enum_query_string" - Query parameter enum test (string)

HasOptionalParam TestEnumParameters EnumQueryStringArray Source #

Optional Param "enum_query_string_array" - Query parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumHeaderString Source #

Optional Param "enum_header_string" - Header parameter enum test (string)

HasOptionalParam TestEnumParameters EnumHeaderStringArray Source #

Optional Param "enum_header_string_array" - Header parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumFormString Source #

Optional Param "enum_form_string" - Form parameter enum test (string)

HasOptionalParam TestEnumParameters EnumFormStringArray Source #

Optional Param "enum_form_string_array" - Form parameter enum test (string array)

testJsonFormData

testJsonFormData Source #

Arguments

:: Consumes TestJsonFormData contentType 
=> contentType

request content-type (MimeType)

-> Text

"param" - field1

-> Text

"param2" - field2

-> SwaggerPetstoreRequest TestJsonFormData contentType NoContent 
GET /fake/jsonFormData

test json serialization of form data

FakeClassnameTags123

testClassname

testClassname Source #

Arguments

:: (Consumes TestClassname contentType, MimeRender contentType Client) 
=> contentType

request content-type (MimeType)

-> Client

"body" - client model

-> SwaggerPetstoreRequest TestClassname contentType Client 
PATCH /fake_classname_test

To test class name in snake case

AuthMethod: api_key_query

data TestClassname Source #

Instances

Produces TestClassname MimeJSON Source #
application/json
Consumes TestClassname MimeJSON Source #
application/json
HasBodyParam TestClassname Client Source #

Body Param "body" - client model

Methods

setBodyParam :: (Consumes TestClassname contentType, MimeRender contentType Client) => SwaggerPetstoreRequest TestClassname contentType res -> Client -> SwaggerPetstoreRequest TestClassname contentType res Source #

Pet

addPet

addPet Source #

Arguments

:: (Consumes AddPet contentType, MimeRender contentType Pet) 
=> contentType

request content-type (MimeType)

-> Pet

"body" - Pet object that needs to be added to the store

-> SwaggerPetstoreRequest AddPet contentType res 
POST /pet

Add a new pet to the store

AuthMethod: petstore_auth

Note: Has Produces instances, but no response schema

data AddPet Source #

Instances

Produces AddPet MimeXML Source #
application/xml
Produces AddPet MimeJSON Source #
application/json
Consumes AddPet MimeXML Source #
application/xml
Consumes AddPet MimeJSON Source #
application/json
HasBodyParam AddPet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes AddPet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest AddPet contentType res -> Pet -> SwaggerPetstoreRequest AddPet contentType res Source #

deletePet

deletePet Source #

Arguments

:: Integer

"petId" - Pet id to delete

-> SwaggerPetstoreRequest DeletePet MimeNoContent res 
DELETE /pet/{petId}

Deletes a pet

AuthMethod: petstore_auth

Note: Has Produces instances, but no response schema

findPetsByStatus

findPetsByStatus Source #

Arguments

:: [Text]

"status" - Status values that need to be considered for filter

-> SwaggerPetstoreRequest FindPetsByStatus MimeNoContent [Pet] 
GET /pet/findByStatus

Finds Pets by status

Multiple status values can be provided with comma separated strings

AuthMethod: petstore_auth

findPetsByTags

findPetsByTags Source #

Arguments

:: [Text]

"tags" - Tags to filter by

-> SwaggerPetstoreRequest FindPetsByTags MimeNoContent [Pet] 

Deprecated:

GET /pet/findByTags

Finds Pets by tags

Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.

AuthMethod: petstore_auth

getPetById

getPetById Source #

Arguments

:: Integer

"petId" - ID of pet to return

-> SwaggerPetstoreRequest GetPetById MimeNoContent Pet 
GET /pet/{petId}

Find pet by ID

Returns a single pet

AuthMethod: api_key

data GetPetById Source #

Instances

updatePet

updatePet Source #

Arguments

:: (Consumes UpdatePet contentType, MimeRender contentType Pet) 
=> contentType

request content-type (MimeType)

-> Pet

"body" - Pet object that needs to be added to the store

-> SwaggerPetstoreRequest UpdatePet contentType res 
PUT /pet

Update an existing pet

AuthMethod: petstore_auth

Note: Has Produces instances, but no response schema

data UpdatePet Source #

Instances

Produces UpdatePet MimeXML Source #
application/xml
Produces UpdatePet MimeJSON Source #
application/json
Consumes UpdatePet MimeXML Source #
application/xml
Consumes UpdatePet MimeJSON Source #
application/json
HasBodyParam UpdatePet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest UpdatePet contentType res -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res Source #

updatePetWithForm

updatePetWithForm Source #

Arguments

:: Consumes UpdatePetWithForm contentType 
=> contentType

request content-type (MimeType)

-> Integer

"petId" - ID of pet that needs to be updated

-> SwaggerPetstoreRequest UpdatePetWithForm contentType res 
POST /pet/{petId}

Updates a pet in the store with form data

AuthMethod: petstore_auth

Note: Has Produces instances, but no response schema

uploadFile

uploadFile Source #

Arguments

:: Consumes UploadFile contentType 
=> contentType

request content-type (MimeType)

-> Integer

"petId" - ID of pet to update

-> SwaggerPetstoreRequest UploadFile contentType ApiResponse 
POST /pet/{petId}/uploadImage

uploads an image

AuthMethod: petstore_auth

data UploadFile Source #

Instances

Produces UploadFile MimeJSON Source #
application/json
Consumes UploadFile MimeMultipartFormData Source #
multipart/form-data
HasOptionalParam UploadFile File Source #

Optional Param "file" - file to upload

HasOptionalParam UploadFile AdditionalMetadata Source #

Optional Param "additionalMetadata" - Additional data to pass to server

Store

deleteOrder

deleteOrder Source #

Arguments

:: Text

"orderId" - ID of the order that needs to be deleted

-> SwaggerPetstoreRequest DeleteOrder MimeNoContent res 
DELETE /store/order/{order_id}

Delete purchase order by ID

For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors

Note: Has Produces instances, but no response schema

data DeleteOrder Source #

Instances

getInventory

getInventory :: SwaggerPetstoreRequest GetInventory MimeNoContent (Map String Int) Source #

GET /store/inventory

Returns pet inventories by status

Returns a map of status codes to quantities

AuthMethod: api_key

data GetInventory Source #

Instances

getOrderById

getOrderById Source #

Arguments

:: Integer

"orderId" - ID of pet that needs to be fetched

-> SwaggerPetstoreRequest GetOrderById MimeNoContent Order 
GET /store/order/{order_id}

Find purchase order by ID

For valid response try integer IDs with value 5 or 10. Other values will generated exceptions

placeOrder

placeOrder Source #

Arguments

:: (Consumes PlaceOrder contentType, MimeRender contentType Order) 
=> contentType

request content-type (MimeType)

-> Order

"body" - order placed for purchasing the pet

-> SwaggerPetstoreRequest PlaceOrder contentType Order 
POST /store/order

Place an order for a pet

data PlaceOrder Source #

Instances

Produces PlaceOrder MimeXML Source #
application/xml
Produces PlaceOrder MimeJSON Source #
application/json
HasBodyParam PlaceOrder Order Source #

Body Param "body" - order placed for purchasing the pet

Methods

setBodyParam :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => SwaggerPetstoreRequest PlaceOrder contentType res -> Order -> SwaggerPetstoreRequest PlaceOrder contentType res Source #

User

createUser

createUser Source #

Arguments

:: (Consumes CreateUser contentType, MimeRender contentType User) 
=> contentType

request content-type (MimeType)

-> User

"body" - Created user object

-> SwaggerPetstoreRequest CreateUser contentType res 
POST /user

Create user

This can only be done by the logged in user.

Note: Has Produces instances, but no response schema

data CreateUser Source #

Instances

Produces CreateUser MimeXML Source #
application/xml
Produces CreateUser MimeJSON Source #
application/json
HasBodyParam CreateUser User Source #

Body Param "body" - Created user object

Methods

setBodyParam :: (Consumes CreateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest CreateUser contentType res -> User -> SwaggerPetstoreRequest CreateUser contentType res Source #

createUsersWithArrayInput

createUsersWithArrayInput Source #

Arguments

:: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType [User]) 
=> contentType

request content-type (MimeType)

-> [User]

"body" - List of user object

-> SwaggerPetstoreRequest CreateUsersWithArrayInput contentType res 
POST /user/createWithArray

Creates list of users with given input array

Note: Has Produces instances, but no response schema

createUsersWithListInput

createUsersWithListInput Source #

Arguments

:: (Consumes CreateUsersWithListInput contentType, MimeRender contentType [User]) 
=> contentType

request content-type (MimeType)

-> [User]

"body" - List of user object

-> SwaggerPetstoreRequest CreateUsersWithListInput contentType res 
POST /user/createWithList

Creates list of users with given input array

Note: Has Produces instances, but no response schema

deleteUser

deleteUser Source #

Arguments

:: Text

"username" - The name that needs to be deleted

-> SwaggerPetstoreRequest DeleteUser MimeNoContent res 
DELETE /user/{username}

Delete user

This can only be done by the logged in user.

Note: Has Produces instances, but no response schema

data DeleteUser Source #

Instances

getUserByName

getUserByName Source #

Arguments

:: Text

"username" - The name that needs to be fetched. Use user1 for testing.

-> SwaggerPetstoreRequest GetUserByName MimeNoContent User 
GET /user/{username}

Get user by user name

loginUser

loginUser Source #

Arguments

:: Text

"username" - The user name for login

-> Text

"password" - The password for login in clear text

-> SwaggerPetstoreRequest LoginUser MimeNoContent Text 
GET /user/login

Logs user into the system

data LoginUser Source #

Instances

logoutUser

logoutUser :: SwaggerPetstoreRequest LogoutUser MimeNoContent res Source #

GET /user/logout

Logs out current logged in user session

Note: Has Produces instances, but no response schema

data LogoutUser Source #

Instances

updateUser

updateUser Source #

Arguments

:: (Consumes UpdateUser contentType, MimeRender contentType User) 
=> contentType

request content-type (MimeType)

-> Text

"username" - name that need to be deleted

-> User

"body" - Updated user object

-> SwaggerPetstoreRequest UpdateUser contentType res 
PUT /user/{username}

Updated user

This can only be done by the logged in user.

Note: Has Produces instances, but no response schema

data UpdateUser Source #

Instances

Produces UpdateUser MimeXML Source #
application/xml
Produces UpdateUser MimeJSON Source #
application/json
HasBodyParam UpdateUser User Source #

Body Param "body" - Updated user object

Methods

setBodyParam :: (Consumes UpdateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest UpdateUser contentType res -> User -> SwaggerPetstoreRequest UpdateUser contentType res Source #

HasBodyParam

class HasBodyParam req param where Source #

Designates the body parameter of a request

Methods

setBodyParam :: forall contentType res. (Consumes req contentType, MimeRender contentType param) => SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res Source #

Instances

HasBodyParam UpdateUser User Source #

Body Param "body" - Updated user object

Methods

setBodyParam :: (Consumes UpdateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest UpdateUser contentType res -> User -> SwaggerPetstoreRequest UpdateUser contentType res Source #

HasBodyParam CreateUser User Source #

Body Param "body" - Created user object

Methods

setBodyParam :: (Consumes CreateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest CreateUser contentType res -> User -> SwaggerPetstoreRequest CreateUser contentType res Source #

HasBodyParam PlaceOrder Order Source #

Body Param "body" - order placed for purchasing the pet

Methods

setBodyParam :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => SwaggerPetstoreRequest PlaceOrder contentType res -> Order -> SwaggerPetstoreRequest PlaceOrder contentType res Source #

HasBodyParam UpdatePet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest UpdatePet contentType res -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res Source #

HasBodyParam AddPet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes AddPet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest AddPet contentType res -> Pet -> SwaggerPetstoreRequest AddPet contentType res Source #

HasBodyParam TestClassname Client Source #

Body Param "body" - client model

Methods

setBodyParam :: (Consumes TestClassname contentType, MimeRender contentType Client) => SwaggerPetstoreRequest TestClassname contentType res -> Client -> SwaggerPetstoreRequest TestClassname contentType res Source #

HasBodyParam TestClientModel Client Source #

Body Param "body" - client model

HasBodyParam FakeOuterStringSerialize OuterString Source #

Body Param "body" - Input string as post body

HasBodyParam FakeOuterNumberSerialize OuterNumber Source #

Body Param "body" - Input number as post body

HasBodyParam FakeOuterCompositeSerialize OuterComposite Source #

Body Param "body" - Input composite as post body

HasBodyParam FakeOuterBooleanSerialize OuterBoolean Source #

Body Param "body" - Input boolean as post body

HasBodyParam TestSpecialTags Client Source #

Body Param "body" - client model

HasBodyParam CreateUsersWithListInput [User] Source #

Body Param "body" - List of user object

HasBodyParam CreateUsersWithArrayInput [User] Source #

Body Param "body" - List of user object

HasOptionalParam

class HasOptionalParam req param where Source #

Designates the optional parameters of a request

Minimal complete definition

applyOptionalParam | (-&-)

Methods

applyOptionalParam :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res Source #

Apply an optional parameter to a request

(-&-) :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res infixl 2 Source #

infix operator / alias for addOptionalParam

Instances

HasOptionalParam UploadFile File Source #

Optional Param "file" - file to upload

HasOptionalParam UploadFile AdditionalMetadata Source #

Optional Param "additionalMetadata" - Additional data to pass to server

HasOptionalParam UpdatePetWithForm Status Source #

Optional Param "status" - Updated status of the pet

HasOptionalParam UpdatePetWithForm Name2 Source #

Optional Param "name" - Updated name of the pet

HasOptionalParam DeletePet ApiKey Source # 
HasOptionalParam TestEnumParameters EnumQueryDouble Source #

Optional Param "enum_query_double" - Query parameter enum test (double)

HasOptionalParam TestEnumParameters EnumQueryInteger Source #

Optional Param "enum_query_integer" - Query parameter enum test (double)

HasOptionalParam TestEnumParameters EnumQueryString Source #

Optional Param "enum_query_string" - Query parameter enum test (string)

HasOptionalParam TestEnumParameters EnumQueryStringArray Source #

Optional Param "enum_query_string_array" - Query parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumHeaderString Source #

Optional Param "enum_header_string" - Header parameter enum test (string)

HasOptionalParam TestEnumParameters EnumHeaderStringArray Source #

Optional Param "enum_header_string_array" - Header parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumFormString Source #

Optional Param "enum_form_string" - Form parameter enum test (string)

HasOptionalParam TestEnumParameters EnumFormStringArray Source #

Optional Param "enum_form_string_array" - Form parameter enum test (string array)

HasOptionalParam TestEndpointParameters Callback Source #

Optional Param "callback" - None

HasOptionalParam TestEndpointParameters Password Source #

Optional Param "password" - None

HasOptionalParam TestEndpointParameters ParamDateTime Source #

Optional Param "dateTime" - None

HasOptionalParam TestEndpointParameters ParamDate Source #

Optional Param "date" - None

HasOptionalParam TestEndpointParameters ParamBinary Source #

Optional Param "binary" - None

HasOptionalParam TestEndpointParameters ParamString Source #

Optional Param "string" - None

HasOptionalParam TestEndpointParameters ParamFloat Source #

Optional Param "float" - None

HasOptionalParam TestEndpointParameters Int64 Source #

Optional Param "int64" - None

HasOptionalParam TestEndpointParameters Int32 Source #

Optional Param "int32" - None

HasOptionalParam TestEndpointParameters ParamInteger Source #

Optional Param "integer" - None

Optional Request Parameter Types

newtype Body Source #

Constructors

Body 

Fields

Instances

Eq Body Source # 

Methods

(==) :: Body -> Body -> Bool #

(/=) :: Body -> Body -> Bool #

Show Body Source # 

Methods

showsPrec :: Int -> Body -> ShowS #

show :: Body -> String #

showList :: [Body] -> ShowS #

newtype Name2 Source #

Constructors

Name2 

Fields

newtype Status Source #

Constructors

Status 

Fields

newtype File Source #

Constructors

File 

Fields

Instances

Eq File Source # 

Methods

(==) :: File -> File -> Bool #

(/=) :: File -> File -> Bool #

Show File Source # 

Methods

showsPrec :: Int -> File -> ShowS #

show :: File -> String #

showList :: [File] -> ShowS #

HasOptionalParam UploadFile File Source #

Optional Param "file" - file to upload

SwaggerPetstoreRequest

data SwaggerPetstoreRequest req contentType res Source #

Represents a request. The "req" type variable is the request type. The "res" type variable is the response type.

Constructors

SwaggerPetstoreRequest 

Fields

Instances

Show (SwaggerPetstoreRequest req contentType res) Source # 

Methods

showsPrec :: Int -> SwaggerPetstoreRequest req contentType res -> ShowS #

show :: SwaggerPetstoreRequest req contentType res -> String #

showList :: [SwaggerPetstoreRequest req contentType res] -> ShowS #

data Params Source #

Request Params

Instances

SwaggerPetstoreRequest Utils

_mkRequest Source #

Arguments

:: Method

Method

-> [ByteString]

Endpoint

-> SwaggerPetstoreRequest req contentType res

req: Request Type, res: Response Type

setHeader :: SwaggerPetstoreRequest req contentType res -> [Header] -> SwaggerPetstoreRequest req contentType res Source #

removeHeader :: SwaggerPetstoreRequest req contentType res -> [HeaderName] -> SwaggerPetstoreRequest req contentType res Source #

_setContentTypeHeader :: forall req contentType res. MimeType contentType => SwaggerPetstoreRequest req contentType res -> SwaggerPetstoreRequest req contentType res Source #

_setAcceptHeader :: forall req contentType res accept. MimeType accept => SwaggerPetstoreRequest req contentType res -> accept -> SwaggerPetstoreRequest req contentType res Source #

_setQuery :: SwaggerPetstoreRequest req contentType res -> [QueryItem] -> SwaggerPetstoreRequest req contentType res Source #

_addForm :: SwaggerPetstoreRequest req contentType res -> Form -> SwaggerPetstoreRequest req contentType res Source #

_addMultiFormPart :: SwaggerPetstoreRequest req contentType res -> Part -> SwaggerPetstoreRequest req contentType res Source #

_setBodyBS :: SwaggerPetstoreRequest req contentType res -> ByteString -> SwaggerPetstoreRequest req contentType res Source #

_setBodyLBS :: SwaggerPetstoreRequest req contentType res -> ByteString -> SwaggerPetstoreRequest req contentType res Source #

Params Utils

Swagger CollectionFormat Utils

data CollectionFormat Source #

Determines the format of the array if type array is used.

Constructors

CommaSeparated

CSV format for multiple parameters.

SpaceSeparated

Also called SSV

TabSeparated

Also called TSV

PipeSeparated

`value1|value2|value2`

MultiParamArray

Using multiple GET parameters, e.g. `foo=bar&foo=baz`. This is valid only for parameters in "query" (Query) or "formData" (Form)

_toColl :: Traversable f => CollectionFormat -> (f a -> [(b, ByteString)]) -> f [a] -> [(b, ByteString)] Source #

_toCollA :: (Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t ByteString)]) -> f (t [a]) -> [(b, t ByteString)] Source #

_toCollA' :: (Monoid c, Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t c)]) -> (Char -> c) -> f (t [a]) -> [(b, t c)] Source #

\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.API

Description

 

Synopsis

Operations

AnotherFake

testSpecialTags

testSpecialTags Source #

Arguments

:: (Consumes TestSpecialTags contentType, MimeRender contentType Client) 
=> contentType

request content-type (MimeType)

-> Client

"body" - client model

-> SwaggerPetstoreRequest TestSpecialTags contentType Client 
PATCH /another-fake/dummy

To test special tags

To test special tags

data TestSpecialTags Source #

Instances

Fake

fakeOuterBooleanSerialize

fakeOuterBooleanSerialize Source #

Arguments

:: Consumes FakeOuterBooleanSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterBooleanSerialize contentType OuterBoolean 
POST /fake/outer/boolean

Test serialization of outer boolean types

fakeOuterCompositeSerialize

fakeOuterCompositeSerialize Source #

Arguments

:: Consumes FakeOuterCompositeSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterCompositeSerialize contentType OuterComposite 
POST /fake/outer/composite

Test serialization of object with outer number type

fakeOuterNumberSerialize

fakeOuterNumberSerialize Source #

Arguments

:: Consumes FakeOuterNumberSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterNumberSerialize contentType OuterNumber 
POST /fake/outer/number

Test serialization of outer number types

fakeOuterStringSerialize

fakeOuterStringSerialize Source #

Arguments

:: Consumes FakeOuterStringSerialize contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest FakeOuterStringSerialize contentType OuterString 
POST /fake/outer/string

Test serialization of outer string types

testClientModel

testClientModel Source #

Arguments

:: (Consumes TestClientModel contentType, MimeRender contentType Client) 
=> contentType

request content-type (MimeType)

-> Client

"body" - client model

-> SwaggerPetstoreRequest TestClientModel contentType Client 
PATCH /fake

To test "client" model

To test "client" model

data TestClientModel Source #

Instances

testEndpointParameters

testEndpointParameters Source #

Arguments

:: Consumes TestEndpointParameters contentType 
=> contentType

request content-type (MimeType)

-> Number

"number" - None

-> ParamDouble

"double" - None

-> PatternWithoutDelimiter

"patternWithoutDelimiter" - None

-> Byte

"byte" - None

-> SwaggerPetstoreRequest TestEndpointParameters contentType res 
POST /fake

Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트

Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트

AuthMethod: AuthBasicHttpBasicTest

Note: Has Produces instances, but no response schema

data TestEndpointParameters Source #

Instances

Produces TestEndpointParameters MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
Produces TestEndpointParameters MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
Consumes TestEndpointParameters MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
Consumes TestEndpointParameters MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
HasOptionalParam TestEndpointParameters ParamBinary Source #

Optional Param "binary" - None

HasOptionalParam TestEndpointParameters Int64 Source #

Optional Param "int64" - None

HasOptionalParam TestEndpointParameters Callback Source #

Optional Param "callback" - None

HasOptionalParam TestEndpointParameters ParamDateTime Source #

Optional Param "dateTime" - None

HasOptionalParam TestEndpointParameters Password Source #

Optional Param "password" - None

HasOptionalParam TestEndpointParameters ParamFloat Source #

Optional Param "float" - None

HasOptionalParam TestEndpointParameters ParamDate Source #

Optional Param "date" - None

HasOptionalParam TestEndpointParameters Int32 Source #

Optional Param "int32" - None

HasOptionalParam TestEndpointParameters ParamInteger Source #

Optional Param "integer" - None

HasOptionalParam TestEndpointParameters ParamString Source #

Optional Param "string" - None

testEnumParameters

testEnumParameters Source #

Arguments

:: Consumes TestEnumParameters contentType 
=> contentType

request content-type (MimeType)

-> SwaggerPetstoreRequest TestEnumParameters contentType res 
GET /fake

To test enum parameters

To test enum parameters

Note: Has Produces instances, but no response schema

data TestEnumParameters Source #

Instances

Produces TestEnumParameters MimeAny Source #
*/*
Consumes TestEnumParameters MimeAny Source #
*/*
HasOptionalParam TestEnumParameters EnumHeaderStringArray Source #

Optional Param "enum_header_string_array" - Header parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumFormStringArray Source #

Optional Param "enum_form_string_array" - Form parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumQueryStringArray Source #

Optional Param "enum_query_string_array" - Query parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumQueryString Source #

Optional Param "enum_query_string" - Query parameter enum test (string)

HasOptionalParam TestEnumParameters EnumHeaderString Source #

Optional Param "enum_header_string" - Header parameter enum test (string)

HasOptionalParam TestEnumParameters EnumQueryInteger Source #

Optional Param "enum_query_integer" - Query parameter enum test (double)

HasOptionalParam TestEnumParameters EnumFormString Source #

Optional Param "enum_form_string" - Form parameter enum test (string)

HasOptionalParam TestEnumParameters EnumQueryDouble Source #

Optional Param "enum_query_double" - Query parameter enum test (double)

testJsonFormData

testJsonFormData Source #

Arguments

:: Consumes TestJsonFormData contentType 
=> contentType

request content-type (MimeType)

-> Param

"param" - field1

-> Param2

"param2" - field2

-> SwaggerPetstoreRequest TestJsonFormData contentType NoContent 
GET /fake/jsonFormData

test json serialization of form data

FakeClassnameTags123

testClassname

testClassname Source #

Arguments

:: (Consumes TestClassname contentType, MimeRender contentType Client) 
=> contentType

request content-type (MimeType)

-> Client

"body" - client model

-> SwaggerPetstoreRequest TestClassname contentType Client 
PATCH /fake_classname_test

To test class name in snake case

AuthMethod: AuthApiKeyApiKeyQuery

data TestClassname Source #

Instances

Produces TestClassname MimeJSON Source #
application/json
Consumes TestClassname MimeJSON Source #
application/json
HasBodyParam TestClassname Client Source #

Body Param "body" - client model

Methods

setBodyParam :: (Consumes TestClassname contentType, MimeRender contentType Client) => SwaggerPetstoreRequest TestClassname contentType res -> Client -> SwaggerPetstoreRequest TestClassname contentType res Source #

Pet

addPet

addPet Source #

Arguments

:: (Consumes AddPet contentType, MimeRender contentType Pet) 
=> contentType

request content-type (MimeType)

-> Pet

"body" - Pet object that needs to be added to the store

-> SwaggerPetstoreRequest AddPet contentType res 
POST /pet

Add a new pet to the store

AuthMethod: AuthOAuthPetstoreAuth

Note: Has Produces instances, but no response schema

data AddPet Source #

Instances

Produces AddPet MimeXML Source #
application/xml
Produces AddPet MimeJSON Source #
application/json
Consumes AddPet MimeXML Source #
application/xml
Consumes AddPet MimeJSON Source #
application/json
HasBodyParam AddPet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes AddPet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest AddPet contentType res -> Pet -> SwaggerPetstoreRequest AddPet contentType res Source #

deletePet

deletePet Source #

Arguments

:: PetId

"petId" - Pet id to delete

-> SwaggerPetstoreRequest DeletePet MimeNoContent res 
DELETE /pet/{petId}

Deletes a pet

AuthMethod: AuthOAuthPetstoreAuth

Note: Has Produces instances, but no response schema

findPetsByStatus

findPetsByStatus Source #

Arguments

:: Status

"status" - Status values that need to be considered for filter

-> SwaggerPetstoreRequest FindPetsByStatus MimeNoContent [Pet] 
GET /pet/findByStatus

Finds Pets by status

Multiple status values can be provided with comma separated strings

AuthMethod: AuthOAuthPetstoreAuth

findPetsByTags

findPetsByTags Source #

Arguments

:: Tags

"tags" - Tags to filter by

-> SwaggerPetstoreRequest FindPetsByTags MimeNoContent [Pet] 

Deprecated:

GET /pet/findByTags

Finds Pets by tags

Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.

AuthMethod: AuthOAuthPetstoreAuth

getPetById

getPetById Source #

Arguments

:: PetId

"petId" - ID of pet to return

-> SwaggerPetstoreRequest GetPetById MimeNoContent Pet 
GET /pet/{petId}

Find pet by ID

Returns a single pet

AuthMethod: AuthApiKeyApiKey

data GetPetById Source #

Instances

updatePet

updatePet Source #

Arguments

:: (Consumes UpdatePet contentType, MimeRender contentType Pet) 
=> contentType

request content-type (MimeType)

-> Pet

"body" - Pet object that needs to be added to the store

-> SwaggerPetstoreRequest UpdatePet contentType res 
PUT /pet

Update an existing pet

AuthMethod: AuthOAuthPetstoreAuth

Note: Has Produces instances, but no response schema

data UpdatePet Source #

Instances

Produces UpdatePet MimeXML Source #
application/xml
Produces UpdatePet MimeJSON Source #
application/json
Consumes UpdatePet MimeXML Source #
application/xml
Consumes UpdatePet MimeJSON Source #
application/json
HasBodyParam UpdatePet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest UpdatePet contentType res -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res Source #

updatePetWithForm

updatePetWithForm Source #

Arguments

:: Consumes UpdatePetWithForm contentType 
=> contentType

request content-type (MimeType)

-> PetId

"petId" - ID of pet that needs to be updated

-> SwaggerPetstoreRequest UpdatePetWithForm contentType res 
POST /pet/{petId}

Updates a pet in the store with form data

AuthMethod: AuthOAuthPetstoreAuth

Note: Has Produces instances, but no response schema

uploadFile

uploadFile Source #

Arguments

:: Consumes UploadFile contentType 
=> contentType

request content-type (MimeType)

-> PetId

"petId" - ID of pet to update

-> SwaggerPetstoreRequest UploadFile contentType ApiResponse 
POST /pet/{petId}/uploadImage

uploads an image

AuthMethod: AuthOAuthPetstoreAuth

data UploadFile Source #

Instances

Produces UploadFile MimeJSON Source #
application/json
Consumes UploadFile MimeMultipartFormData Source #
multipart/form-data
HasOptionalParam UploadFile File Source #

Optional Param "file" - file to upload

HasOptionalParam UploadFile AdditionalMetadata Source #

Optional Param "additionalMetadata" - Additional data to pass to server

Store

deleteOrder

deleteOrder Source #

Arguments

:: OrderIdText

"orderId" - ID of the order that needs to be deleted

-> SwaggerPetstoreRequest DeleteOrder MimeNoContent res 
DELETE /store/order/{order_id}

Delete purchase order by ID

For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors

Note: Has Produces instances, but no response schema

data DeleteOrder Source #

Instances

getInventory

getInventory :: SwaggerPetstoreRequest GetInventory MimeNoContent (Map String Int) Source #

GET /store/inventory

Returns pet inventories by status

Returns a map of status codes to quantities

AuthMethod: AuthApiKeyApiKey

data GetInventory Source #

Instances

getOrderById

getOrderById Source #

Arguments

:: OrderId

"orderId" - ID of pet that needs to be fetched

-> SwaggerPetstoreRequest GetOrderById MimeNoContent Order 
GET /store/order/{order_id}

Find purchase order by ID

For valid response try integer IDs with value 5 or 10. Other values will generated exceptions

placeOrder

placeOrder Source #

Arguments

:: (Consumes PlaceOrder contentType, MimeRender contentType Order) 
=> contentType

request content-type (MimeType)

-> Order

"body" - order placed for purchasing the pet

-> SwaggerPetstoreRequest PlaceOrder contentType Order 
POST /store/order

Place an order for a pet

data PlaceOrder Source #

Instances

Produces PlaceOrder MimeXML Source #
application/xml
Produces PlaceOrder MimeJSON Source #
application/json
HasBodyParam PlaceOrder Order Source #

Body Param "body" - order placed for purchasing the pet

Methods

setBodyParam :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => SwaggerPetstoreRequest PlaceOrder contentType res -> Order -> SwaggerPetstoreRequest PlaceOrder contentType res Source #

User

createUser

createUser Source #

Arguments

:: (Consumes CreateUser contentType, MimeRender contentType User) 
=> contentType

request content-type (MimeType)

-> User

"body" - Created user object

-> SwaggerPetstoreRequest CreateUser contentType res 
POST /user

Create user

This can only be done by the logged in user.

Note: Has Produces instances, but no response schema

data CreateUser Source #

Instances

Produces CreateUser MimeXML Source #
application/xml
Produces CreateUser MimeJSON Source #
application/json
HasBodyParam CreateUser User Source #

Body Param "body" - Created user object

Methods

setBodyParam :: (Consumes CreateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest CreateUser contentType res -> User -> SwaggerPetstoreRequest CreateUser contentType res Source #

createUsersWithArrayInput

createUsersWithArrayInput Source #

Arguments

:: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType Body) 
=> contentType

request content-type (MimeType)

-> Body

"body" - List of user object

-> SwaggerPetstoreRequest CreateUsersWithArrayInput contentType res 
POST /user/createWithArray

Creates list of users with given input array

Note: Has Produces instances, but no response schema

createUsersWithListInput

createUsersWithListInput Source #

Arguments

:: (Consumes CreateUsersWithListInput contentType, MimeRender contentType Body) 
=> contentType

request content-type (MimeType)

-> Body

"body" - List of user object

-> SwaggerPetstoreRequest CreateUsersWithListInput contentType res 
POST /user/createWithList

Creates list of users with given input array

Note: Has Produces instances, but no response schema

deleteUser

deleteUser Source #

Arguments

:: Username

"username" - The name that needs to be deleted

-> SwaggerPetstoreRequest DeleteUser MimeNoContent res 
DELETE /user/{username}

Delete user

This can only be done by the logged in user.

Note: Has Produces instances, but no response schema

data DeleteUser Source #

Instances

getUserByName

getUserByName Source #

Arguments

:: Username

"username" - The name that needs to be fetched. Use user1 for testing.

-> SwaggerPetstoreRequest GetUserByName MimeNoContent User 
GET /user/{username}

Get user by user name

loginUser

loginUser Source #

Arguments

:: Username

"username" - The user name for login

-> Password

"password" - The password for login in clear text

-> SwaggerPetstoreRequest LoginUser MimeNoContent Text 
GET /user/login

Logs user into the system

data LoginUser Source #

Instances

logoutUser

logoutUser :: SwaggerPetstoreRequest LogoutUser MimeNoContent res Source #

GET /user/logout

Logs out current logged in user session

Note: Has Produces instances, but no response schema

data LogoutUser Source #

Instances

updateUser

updateUser Source #

Arguments

:: (Consumes UpdateUser contentType, MimeRender contentType User) 
=> contentType

request content-type (MimeType)

-> Username

"username" - name that need to be deleted

-> User

"body" - Updated user object

-> SwaggerPetstoreRequest UpdateUser contentType res 
PUT /user/{username}

Updated user

This can only be done by the logged in user.

Note: Has Produces instances, but no response schema

data UpdateUser Source #

Instances

Produces UpdateUser MimeXML Source #
application/xml
Produces UpdateUser MimeJSON Source #
application/json
HasBodyParam UpdateUser User Source #

Body Param "body" - Updated user object

Methods

setBodyParam :: (Consumes UpdateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest UpdateUser contentType res -> User -> SwaggerPetstoreRequest UpdateUser contentType res Source #

HasBodyParam

class HasBodyParam req param where Source #

Designates the body parameter of a request

Methods

setBodyParam :: forall contentType res. (Consumes req contentType, MimeRender contentType param) => SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res Source #

Instances

HasBodyParam UpdateUser User Source #

Body Param "body" - Updated user object

Methods

setBodyParam :: (Consumes UpdateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest UpdateUser contentType res -> User -> SwaggerPetstoreRequest UpdateUser contentType res Source #

HasBodyParam CreateUsersWithListInput Body Source #

Body Param "body" - List of user object

HasBodyParam CreateUsersWithArrayInput Body Source #

Body Param "body" - List of user object

HasBodyParam CreateUser User Source #

Body Param "body" - Created user object

Methods

setBodyParam :: (Consumes CreateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest CreateUser contentType res -> User -> SwaggerPetstoreRequest CreateUser contentType res Source #

HasBodyParam PlaceOrder Order Source #

Body Param "body" - order placed for purchasing the pet

Methods

setBodyParam :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => SwaggerPetstoreRequest PlaceOrder contentType res -> Order -> SwaggerPetstoreRequest PlaceOrder contentType res Source #

HasBodyParam UpdatePet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest UpdatePet contentType res -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res Source #

HasBodyParam AddPet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes AddPet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest AddPet contentType res -> Pet -> SwaggerPetstoreRequest AddPet contentType res Source #

HasBodyParam TestClassname Client Source #

Body Param "body" - client model

Methods

setBodyParam :: (Consumes TestClassname contentType, MimeRender contentType Client) => SwaggerPetstoreRequest TestClassname contentType res -> Client -> SwaggerPetstoreRequest TestClassname contentType res Source #

HasBodyParam TestClientModel Client Source #

Body Param "body" - client model

HasBodyParam FakeOuterStringSerialize OuterString Source #

Body Param "body" - Input string as post body

HasBodyParam FakeOuterNumberSerialize OuterNumber Source #

Body Param "body" - Input number as post body

HasBodyParam FakeOuterCompositeSerialize OuterComposite Source #

Body Param "body" - Input composite as post body

HasBodyParam FakeOuterBooleanSerialize OuterBoolean Source #

Body Param "body" - Input boolean as post body

HasBodyParam TestSpecialTags Client Source #

Body Param "body" - client model

HasOptionalParam

class HasOptionalParam req param where Source #

Designates the optional parameters of a request

Minimal complete definition

applyOptionalParam | (-&-)

Methods

applyOptionalParam :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res Source #

Apply an optional parameter to a request

(-&-) :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res infixl 2 Source #

infix operator / alias for addOptionalParam

Instances

HasOptionalParam UploadFile File Source #

Optional Param "file" - file to upload

HasOptionalParam UploadFile AdditionalMetadata Source #

Optional Param "additionalMetadata" - Additional data to pass to server

HasOptionalParam UpdatePetWithForm Name2 Source #

Optional Param "name" - Updated name of the pet

HasOptionalParam UpdatePetWithForm StatusText Source #

Optional Param "status" - Updated status of the pet

HasOptionalParam DeletePet ApiKey Source # 
HasOptionalParam TestEnumParameters EnumHeaderStringArray Source #

Optional Param "enum_header_string_array" - Header parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumFormStringArray Source #

Optional Param "enum_form_string_array" - Form parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumQueryStringArray Source #

Optional Param "enum_query_string_array" - Query parameter enum test (string array)

HasOptionalParam TestEnumParameters EnumQueryString Source #

Optional Param "enum_query_string" - Query parameter enum test (string)

HasOptionalParam TestEnumParameters EnumHeaderString Source #

Optional Param "enum_header_string" - Header parameter enum test (string)

HasOptionalParam TestEnumParameters EnumQueryInteger Source #

Optional Param "enum_query_integer" - Query parameter enum test (double)

HasOptionalParam TestEnumParameters EnumFormString Source #

Optional Param "enum_form_string" - Form parameter enum test (string)

HasOptionalParam TestEnumParameters EnumQueryDouble Source #

Optional Param "enum_query_double" - Query parameter enum test (double)

HasOptionalParam TestEndpointParameters ParamBinary Source #

Optional Param "binary" - None

HasOptionalParam TestEndpointParameters Int64 Source #

Optional Param "int64" - None

HasOptionalParam TestEndpointParameters Callback Source #

Optional Param "callback" - None

HasOptionalParam TestEndpointParameters ParamDateTime Source #

Optional Param "dateTime" - None

HasOptionalParam TestEndpointParameters Password Source #

Optional Param "password" - None

HasOptionalParam TestEndpointParameters ParamFloat Source #

Optional Param "float" - None

HasOptionalParam TestEndpointParameters ParamDate Source #

Optional Param "date" - None

HasOptionalParam TestEndpointParameters Int32 Source #

Optional Param "int32" - None

HasOptionalParam TestEndpointParameters ParamInteger Source #

Optional Param "integer" - None

HasOptionalParam TestEndpointParameters ParamString Source #

Optional Param "string" - None

Request Parameter Types

newtype Number Source #

Number

Constructors

Number 

Fields

Instances

newtype Body Source #

Body

Constructors

Body 

Fields

newtype Tags Source #

Tags

Constructors

Tags 

Fields

Instances

Eq Tags Source # 

Methods

(==) :: Tags -> Tags -> Bool #

(/=) :: Tags -> Tags -> Bool #

Show Tags Source # 

Methods

showsPrec :: Int -> Tags -> ShowS #

show :: Tags -> String #

showList :: [Tags] -> ShowS #

newtype Name2 Source #

Name2

Constructors

Name2 

Fields

newtype Status Source #

Status

Constructors

Status 

Fields

Instances

newtype Param2 Source #

Param2

Constructors

Param2 

Fields

Instances

newtype PetId Source #

PetId

Constructors

PetId 

Fields

Instances

Eq PetId Source # 

Methods

(==) :: PetId -> PetId -> Bool #

(/=) :: PetId -> PetId -> Bool #

Show PetId Source # 

Methods

showsPrec :: Int -> PetId -> ShowS #

show :: PetId -> String #

showList :: [PetId] -> ShowS #

newtype OrderId Source #

OrderId

Constructors

OrderId 

Fields

newtype Username Source #

Username

Constructors

Username 

Fields

newtype Byte Source #

Byte

Constructors

Byte 

Fields

Instances

Eq Byte Source # 

Methods

(==) :: Byte -> Byte -> Bool #

(/=) :: Byte -> Byte -> Bool #

Show Byte Source # 

Methods

showsPrec :: Int -> Byte -> ShowS #

show :: Byte -> String #

showList :: [Byte] -> ShowS #

newtype Param Source #

Param

Constructors

Param 

Fields

Instances

Eq Param Source # 

Methods

(==) :: Param -> Param -> Bool #

(/=) :: Param -> Param -> Bool #

Show Param Source # 

Methods

showsPrec :: Int -> Param -> ShowS #

show :: Param -> String #

showList :: [Param] -> ShowS #

newtype File Source #

File

Constructors

File 

Fields

Instances

Eq File Source # 

Methods

(==) :: File -> File -> Bool #

(/=) :: File -> File -> Bool #

Show File Source # 

Methods

showsPrec :: Int -> File -> ShowS #

show :: File -> String #

showList :: [File] -> ShowS #

HasOptionalParam UploadFile File Source #

Optional Param "file" - file to upload

SwaggerPetstoreRequest

data SwaggerPetstoreRequest req contentType res Source #

Represents a request. The "req" type variable is the request type. The "res" type variable is the response type.

Constructors

SwaggerPetstoreRequest 

Fields

Instances

Show (SwaggerPetstoreRequest req contentType res) Source # 

Methods

showsPrec :: Int -> SwaggerPetstoreRequest req contentType res -> ShowS #

show :: SwaggerPetstoreRequest req contentType res -> String #

showList :: [SwaggerPetstoreRequest req contentType res] -> ShowS #

data Params Source #

Request Params

Instances

SwaggerPetstoreRequest Utils

_mkRequest Source #

Arguments

:: Method

Method

-> [ByteString]

Endpoint

-> SwaggerPetstoreRequest req contentType res

req: Request Type, res: Response Type

setHeader :: SwaggerPetstoreRequest req contentType res -> [Header] -> SwaggerPetstoreRequest req contentType res Source #

removeHeader :: SwaggerPetstoreRequest req contentType res -> [HeaderName] -> SwaggerPetstoreRequest req contentType res Source #

_setContentTypeHeader :: forall req contentType res. MimeType contentType => SwaggerPetstoreRequest req contentType res -> SwaggerPetstoreRequest req contentType res Source #

_setAcceptHeader :: forall req contentType res accept. MimeType accept => SwaggerPetstoreRequest req contentType res -> accept -> SwaggerPetstoreRequest req contentType res Source #

setQuery :: SwaggerPetstoreRequest req contentType res -> [QueryItem] -> SwaggerPetstoreRequest req contentType res Source #

addForm :: SwaggerPetstoreRequest req contentType res -> Form -> SwaggerPetstoreRequest req contentType res Source #

_addMultiFormPart :: SwaggerPetstoreRequest req contentType res -> Part -> SwaggerPetstoreRequest req contentType res Source #

_setBodyBS :: SwaggerPetstoreRequest req contentType res -> ByteString -> SwaggerPetstoreRequest req contentType res Source #

_setBodyLBS :: SwaggerPetstoreRequest req contentType res -> ByteString -> SwaggerPetstoreRequest req contentType res Source #

_hasAuthType :: AuthMethod authMethod => SwaggerPetstoreRequest req contentType res -> Proxy authMethod -> SwaggerPetstoreRequest req contentType res Source #

Params Utils

Swagger CollectionFormat Utils

data CollectionFormat Source #

Determines the format of the array if type array is used.

Constructors

CommaSeparated

CSV format for multiple parameters.

SpaceSeparated

Also called SSV

TabSeparated

Also called TSV

PipeSeparated

`value1|value2|value2`

MultiParamArray

Using multiple GET parameters, e.g. `foo=bar&foo=baz`. This is valid only for parameters in "query" (Query) or "formData" (Form)

_toColl :: Traversable f => CollectionFormat -> (f a -> [(b, ByteString)]) -> f [a] -> [(b, ByteString)] Source #

_toCollA :: (Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t ByteString)]) -> f (t [a]) -> [(b, t ByteString)] Source #

_toCollA' :: (Monoid c, Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t c)]) -> (Char -> c) -> f (t [a]) -> [(b, t c)] Source #

AuthMethods

class Typeable a => AuthMethod a where Source #

Provides a method to apply auth methods to requests

Minimal complete definition

applyAuthMethod

Methods

applyAuthMethod :: SwaggerPetstoreRequest req contentType res -> a -> SwaggerPetstoreRequest req contentType res Source #

data AnyAuthMethod Source #

An existential wrapper for any AuthMethod

Constructors

AuthMethod a => AnyAuthMethod a 

Instances

AuthApiKeyApiKey

AuthApiKeyApiKeyQuery

AuthBasicHttpBasicTest

AuthOAuthPetstoreAuth

\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Client.html b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Client.html index 41f6eb8830f3..62e7ba42c1e4 100644 --- a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Client.html +++ b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Client.html @@ -1,4 +1,4 @@ SwaggerPetstore.Client

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.Client

Description

 

Synopsis

Config

data SwaggerPetstoreConfig Source #

Constructors

SwaggerPetstoreConfig 

Fields

newConfig :: IO SwaggerPetstoreConfig Source #

constructs a default SwaggerPetstoreConfig

configHost:

http://petstore.swagger.io:80/v2

configUserAgent:

"swagger-haskell-http-client/1.0.0"

withNoLogging :: SwaggerPetstoreConfig -> SwaggerPetstoreConfig Source #

updates the config to disable logging

Dispatch

Lbs

dispatchLbs Source #

Arguments

:: (Produces req accept, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (Response ByteString)

response

send a request returning the raw http response

Mime

data MimeResult res Source #

pair of decoded http body and http response

Constructors

MimeResult 

Fields

Instances

Functor MimeResult Source # 

Methods

fmap :: (a -> b) -> MimeResult a -> MimeResult b #

(<$) :: a -> MimeResult b -> MimeResult a #

Foldable MimeResult Source # 

Methods

fold :: Monoid m => MimeResult m -> m #

foldMap :: Monoid m => (a -> m) -> MimeResult a -> m #

foldr :: (a -> b -> b) -> b -> MimeResult a -> b #

foldr' :: (a -> b -> b) -> b -> MimeResult a -> b #

foldl :: (b -> a -> b) -> b -> MimeResult a -> b #

foldl' :: (b -> a -> b) -> b -> MimeResult a -> b #

foldr1 :: (a -> a -> a) -> MimeResult a -> a #

foldl1 :: (a -> a -> a) -> MimeResult a -> a #

toList :: MimeResult a -> [a] #

null :: MimeResult a -> Bool #

length :: MimeResult a -> Int #

elem :: Eq a => a -> MimeResult a -> Bool #

maximum :: Ord a => MimeResult a -> a #

minimum :: Ord a => MimeResult a -> a #

sum :: Num a => MimeResult a -> a #

product :: Num a => MimeResult a -> a #

Traversable MimeResult Source # 

Methods

traverse :: Applicative f => (a -> f b) -> MimeResult a -> f (MimeResult b) #

sequenceA :: Applicative f => MimeResult (f a) -> f (MimeResult a) #

mapM :: Monad m => (a -> m b) -> MimeResult a -> m (MimeResult b) #

sequence :: Monad m => MimeResult (m a) -> m (MimeResult a) #

Show res => Show (MimeResult res) Source # 

Methods

showsPrec :: Int -> MimeResult res -> ShowS #

show :: MimeResult res -> String #

showList :: [MimeResult res] -> ShowS #

data MimeError Source #

pair of unrender/parser error and http response

Constructors

MimeError 

Fields

dispatchMime Source #

Arguments

:: (Produces req accept, MimeUnrender accept res, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (MimeResult res)

response

send a request returning the MimeResult

dispatchMime' Source #

Arguments

:: (Produces req accept, MimeUnrender accept res, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (Either MimeError res)

response

like dispatchMime, but only returns the decoded http body

Unsafe

dispatchLbsUnsafe Source #

Arguments

:: (MimeType accept, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (Response ByteString)

response

like dispatchReqLbs, but does not validate the operation is a Producer of the "accept" MimeType. (Useful if the server's response is undocumented)

dispatchInitUnsafe Source #

Arguments

:: Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> InitRequest req contentType res accept

init request

-> IO (Response ByteString)

response

dispatch an InitRequest

InitRequest

newtype InitRequest req contentType res accept Source #

wraps an http-client Request with request/response type parameters

Constructors

InitRequest 

Instances

Show (InitRequest req contentType res accept) Source # 

Methods

showsPrec :: Int -> InitRequest req contentType res accept -> ShowS #

show :: InitRequest req contentType res accept -> String #

showList :: [InitRequest req contentType res accept] -> ShowS #

_toInitRequest Source #

Arguments

:: (MimeType accept, MimeType contentType) 
=> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (InitRequest req contentType res accept)

initialized request

Build an http-client Request record from the supplied config and request

modifyInitRequest :: InitRequest req contentType res accept -> (Request -> Request) -> InitRequest req contentType res accept Source #

modify the underlying Request

modifyInitRequestM :: Monad m => InitRequest req contentType res accept -> (Request -> m Request) -> m (InitRequest req contentType res accept) Source #

modify the underlying Request (monadic)

Logging

runConfigLog :: MonadIO m => SwaggerPetstoreConfig -> LogExec m Source #

Run a block using the configured logger instance

runConfigLogWithExceptions :: (MonadCatch m, MonadIO m) => Text -> SwaggerPetstoreConfig -> LogExec m Source #

Run a block using the configured logger instance (logs exceptions)

\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.Client

Description

 

Synopsis

Config

data SwaggerPetstoreConfig Source #

Constructors

SwaggerPetstoreConfig 

Fields

newConfig :: IO SwaggerPetstoreConfig Source #

constructs a default SwaggerPetstoreConfig

configHost:

http://petstore.swagger.io:80/v2

configUserAgent:

"swagger-haskell-http-client/1.0.0"

addAuthMethod :: AuthMethod auth => SwaggerPetstoreConfig -> auth -> SwaggerPetstoreConfig Source #

updates config use AuthMethod on matching requests

withStdoutLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig Source #

updates the config to use stdout logging

withStderrLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig Source #

updates the config to use stderr logging

withNoLogging :: SwaggerPetstoreConfig -> SwaggerPetstoreConfig Source #

updates the config to disable logging

Dispatch

Lbs

dispatchLbs Source #

Arguments

:: (Produces req accept, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (Response ByteString)

response

send a request returning the raw http response

Mime

data MimeResult res Source #

pair of decoded http body and http response

Constructors

MimeResult 

Fields

Instances

Functor MimeResult Source # 

Methods

fmap :: (a -> b) -> MimeResult a -> MimeResult b #

(<$) :: a -> MimeResult b -> MimeResult a #

Foldable MimeResult Source # 

Methods

fold :: Monoid m => MimeResult m -> m #

foldMap :: Monoid m => (a -> m) -> MimeResult a -> m #

foldr :: (a -> b -> b) -> b -> MimeResult a -> b #

foldr' :: (a -> b -> b) -> b -> MimeResult a -> b #

foldl :: (b -> a -> b) -> b -> MimeResult a -> b #

foldl' :: (b -> a -> b) -> b -> MimeResult a -> b #

foldr1 :: (a -> a -> a) -> MimeResult a -> a #

foldl1 :: (a -> a -> a) -> MimeResult a -> a #

toList :: MimeResult a -> [a] #

null :: MimeResult a -> Bool #

length :: MimeResult a -> Int #

elem :: Eq a => a -> MimeResult a -> Bool #

maximum :: Ord a => MimeResult a -> a #

minimum :: Ord a => MimeResult a -> a #

sum :: Num a => MimeResult a -> a #

product :: Num a => MimeResult a -> a #

Traversable MimeResult Source # 

Methods

traverse :: Applicative f => (a -> f b) -> MimeResult a -> f (MimeResult b) #

sequenceA :: Applicative f => MimeResult (f a) -> f (MimeResult a) #

mapM :: Monad m => (a -> m b) -> MimeResult a -> m (MimeResult b) #

sequence :: Monad m => MimeResult (m a) -> m (MimeResult a) #

Show res => Show (MimeResult res) Source # 

Methods

showsPrec :: Int -> MimeResult res -> ShowS #

show :: MimeResult res -> String #

showList :: [MimeResult res] -> ShowS #

data MimeError Source #

pair of unrender/parser error and http response

Constructors

MimeError 

Fields

dispatchMime Source #

Arguments

:: (Produces req accept, MimeUnrender accept res, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (MimeResult res)

response

send a request returning the MimeResult

dispatchMime' Source #

Arguments

:: (Produces req accept, MimeUnrender accept res, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (Either MimeError res)

response

like dispatchMime, but only returns the decoded http body

Unsafe

dispatchLbsUnsafe Source #

Arguments

:: (MimeType accept, MimeType contentType) 
=> Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (Response ByteString)

response

like dispatchReqLbs, but does not validate the operation is a Producer of the "accept" MimeType. (Useful if the server's response is undocumented)

dispatchInitUnsafe Source #

Arguments

:: Manager

http-client Connection manager

-> SwaggerPetstoreConfig

config

-> InitRequest req contentType res accept

init request

-> IO (Response ByteString)

response

dispatch an InitRequest

InitRequest

newtype InitRequest req contentType res accept Source #

wraps an http-client Request with request/response type parameters

Constructors

InitRequest 

Instances

Show (InitRequest req contentType res accept) Source # 

Methods

showsPrec :: Int -> InitRequest req contentType res accept -> ShowS #

show :: InitRequest req contentType res accept -> String #

showList :: [InitRequest req contentType res accept] -> ShowS #

_toInitRequest Source #

Arguments

:: (MimeType accept, MimeType contentType) 
=> SwaggerPetstoreConfig

config

-> SwaggerPetstoreRequest req contentType res

request

-> accept

"accept" MimeType

-> IO (InitRequest req contentType res accept)

initialized request

Build an http-client Request record from the supplied config and request

_applyAuthMethods :: SwaggerPetstoreRequest req contentType res -> SwaggerPetstoreConfig -> SwaggerPetstoreRequest req contentType res Source #

apply all matching AuthMethods in config to request

modifyInitRequest :: InitRequest req contentType res accept -> (Request -> Request) -> InitRequest req contentType res accept Source #

modify the underlying Request

modifyInitRequestM :: Monad m => InitRequest req contentType res accept -> (Request -> m Request) -> m (InitRequest req contentType res accept) Source #

modify the underlying Request (monadic)

Logging

runConfigLog :: MonadIO m => SwaggerPetstoreConfig -> LogExec m Source #

Run a block using the configured logger instance

runConfigLogWithExceptions :: (MonadCatch m, MonadIO m) => Text -> SwaggerPetstoreConfig -> LogExec m Source #

Run a block using the configured logger instance (logs exceptions)

\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-MimeTypes.html b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-MimeTypes.html index cd7a997db833..1dce441abd57 100644 --- a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-MimeTypes.html +++ b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-MimeTypes.html @@ -1,4 +1,4 @@ SwaggerPetstore.MimeTypes

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.MimeTypes

Description

 

Content Negotiation

Mime Types

data MimeJSON Source #

Constructors

MimeJSON 

Instances

MimeType MimeJSON Source #
application/json; charset=utf-8
Produces UpdateUser MimeJSON Source #
application/json
Produces LogoutUser MimeJSON Source #
application/json
Produces LoginUser MimeJSON Source #
application/json
Produces GetUserByName MimeJSON Source #
application/json
Produces DeleteUser MimeJSON Source #
application/json
Produces CreateUsersWithListInput MimeJSON Source #
application/json
Produces CreateUsersWithArrayInput MimeJSON Source #
application/json
Produces CreateUser MimeJSON Source #
application/json
Produces PlaceOrder MimeJSON Source #
application/json
Produces GetOrderById MimeJSON Source #
application/json
Produces GetInventory MimeJSON Source #
application/json
Produces DeleteOrder MimeJSON Source #
application/json
Produces UploadFile MimeJSON Source #
application/json
Produces UpdatePetWithForm MimeJSON Source #
application/json
Produces UpdatePet MimeJSON Source #
application/json
Produces GetPetById MimeJSON Source #
application/json
Produces FindPetsByTags MimeJSON Source #
application/json
Produces FindPetsByStatus MimeJSON Source #
application/json
Produces DeletePet MimeJSON Source #
application/json
Produces AddPet MimeJSON Source #
application/json
Produces TestClassname MimeJSON Source #
application/json
Produces TestClientModel MimeJSON Source #
application/json
Produces TestSpecialTags MimeJSON Source #
application/json
Consumes UpdatePet MimeJSON Source #
application/json
Consumes AddPet MimeJSON Source #
application/json
Consumes TestClassname MimeJSON Source #
application/json
Consumes TestJsonFormData MimeJSON Source #
application/json
Consumes TestClientModel MimeJSON Source #
application/json
Consumes TestSpecialTags MimeJSON Source #
application/json
FromJSON a => MimeUnrender MimeJSON a Source #
A.eitherDecode
ToJSON a => MimeRender MimeJSON a Source #

encode

data MimePlainText Source #

Constructors

MimePlainText 

Instances

MimeType MimePlainText Source #
text/plain; charset=utf-8
MimeUnrender MimePlainText ByteString Source #
P.Right . P.id
MimeUnrender MimePlainText String Source #
P.Right . BCL.unpack
MimeUnrender MimePlainText Text Source #
P.left P.show . TL.decodeUtf8'
MimeRender MimePlainText ByteString Source #
P.id
MimeRender MimePlainText String Source #
BCL.pack
MimeRender MimePlainText Text Source #
BL.fromStrict . T.encodeUtf8

data MimeMultipartFormData Source #

Constructors

MimeMultipartFormData 

Instances

MimeType MimeMultipartFormData Source #
multipart/form-data
Consumes UploadFile MimeMultipartFormData Source #
multipart/form-data
MimeRender MimeMultipartFormData Bool Source # 
MimeRender MimeMultipartFormData Char Source # 
MimeRender MimeMultipartFormData Double Source # 
MimeRender MimeMultipartFormData Float Source # 
MimeRender MimeMultipartFormData Int Source # 
MimeRender MimeMultipartFormData Integer Source # 
MimeRender MimeMultipartFormData ByteString Source # 
MimeRender MimeMultipartFormData String Source # 
MimeRender MimeMultipartFormData Text Source # 
MimeRender MimeMultipartFormData Binary Source # 
MimeRender MimeMultipartFormData ByteArray Source # 
MimeRender MimeMultipartFormData Date Source # 
MimeRender MimeMultipartFormData DateTime Source # 

data MimeOctetStream Source #

Constructors

MimeOctetStream 

Instances

MimeType MimeOctetStream Source #
application/octet-stream
MimeUnrender MimeOctetStream ByteString Source #
P.Right . P.id
MimeUnrender MimeOctetStream String Source #
P.Right . BCL.unpack
MimeUnrender MimeOctetStream Text Source #
P.left P.show . T.decodeUtf8' . BL.toStrict
MimeRender MimeOctetStream ByteString Source #
P.id
MimeRender MimeOctetStream String Source #
BCL.pack
MimeRender MimeOctetStream Text Source #
BL.fromStrict . T.encodeUtf8

MimeType Class

class Typeable mtype => MimeType mtype where Source #

Minimal complete definition

mimeType | mimeTypes

Instances

MimeType MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
MimeType MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
MimeType MimeAny Source #
"*/*"
MimeType MimeNoContent Source # 
MimeType MimeOctetStream Source #
application/octet-stream
MimeType MimeMultipartFormData Source #
multipart/form-data
MimeType MimeFormUrlEncoded Source #
application/x-www-form-urlencoded
MimeType MimePlainText Source #
text/plain; charset=utf-8
MimeType MimeXML Source #
application/xml; charset=utf-8
MimeType MimeJSON Source #
application/json; charset=utf-8

MimeType Instances

MimeRender Class

class MimeType mtype => MimeRender mtype x where Source #

Minimal complete definition

mimeRender

Methods

mimeRender :: Proxy mtype -> x -> ByteString Source #

mimeRender' :: mtype -> x -> ByteString Source #

Instances

ToJSON a => MimeRender MimeJsonCharsetutf8 a Source # 
MimeRender MimeNoContent NoContent Source #
P.Right . P.const NoContent
MimeRender MimeOctetStream ByteString Source #
P.id
MimeRender MimeOctetStream String Source #
BCL.pack
MimeRender MimeOctetStream Text Source #
BL.fromStrict . T.encodeUtf8
MimeRender MimeMultipartFormData Bool Source # 
MimeRender MimeMultipartFormData Char Source # 
MimeRender MimeMultipartFormData Double Source # 
MimeRender MimeMultipartFormData Float Source # 
MimeRender MimeMultipartFormData Int Source # 
MimeRender MimeMultipartFormData Integer Source # 
MimeRender MimeMultipartFormData ByteString Source # 
MimeRender MimeMultipartFormData String Source # 
MimeRender MimeMultipartFormData Text Source # 
MimeRender MimeMultipartFormData Binary Source # 
MimeRender MimeMultipartFormData ByteArray Source # 
MimeRender MimeMultipartFormData Date Source # 
MimeRender MimeMultipartFormData DateTime Source # 
ToForm a => MimeRender MimeFormUrlEncoded a Source #
WH.urlEncodeAsForm
MimeRender MimePlainText ByteString Source #
P.id
MimeRender MimePlainText String Source #
BCL.pack
MimeRender MimePlainText Text Source #
BL.fromStrict . T.encodeUtf8
ToJSON a => MimeRender MimeJSON a Source #

encode

MimeRender Instances

MimeUnrender Class

class MimeType mtype => MimeUnrender mtype o where Source #

Minimal complete definition

mimeUnrender

Instances

FromJSON a => MimeUnrender MimeJsonCharsetutf8 a Source # 
MimeUnrender MimeNoContent NoContent Source #
P.Right . P.const NoContent
MimeUnrender MimeOctetStream ByteString Source #
P.Right . P.id
MimeUnrender MimeOctetStream String Source #
P.Right . BCL.unpack
MimeUnrender MimeOctetStream Text Source #
P.left P.show . T.decodeUtf8' . BL.toStrict
FromForm a => MimeUnrender MimeFormUrlEncoded a Source #
P.left T.unpack . WH.urlDecodeAsForm
MimeUnrender MimePlainText ByteString Source #
P.Right . P.id
MimeUnrender MimePlainText String Source #
P.Right . BCL.unpack
MimeUnrender MimePlainText Text Source #
P.left P.show . TL.decodeUtf8'
FromJSON a => MimeUnrender MimeJSON a Source #
A.eitherDecode

MimeUnrender Instances

Request Consumes

Request Produces

class MimeType mtype => Produces req mtype Source #

Instances

Produces UpdateUser MimeXML Source #
application/xml
Produces UpdateUser MimeJSON Source #
application/json
Produces LogoutUser MimeXML Source #
application/xml
Produces LogoutUser MimeJSON Source #
application/json
Produces LoginUser MimeXML Source #
application/xml
Produces LoginUser MimeJSON Source #
application/json
Produces GetUserByName MimeXML Source #
application/xml
Produces GetUserByName MimeJSON Source #
application/json
Produces DeleteUser MimeXML Source #
application/xml
Produces DeleteUser MimeJSON Source #
application/json
Produces CreateUsersWithListInput MimeXML Source #
application/xml
Produces CreateUsersWithListInput MimeJSON Source #
application/json
Produces CreateUsersWithArrayInput MimeXML Source #
application/xml
Produces CreateUsersWithArrayInput MimeJSON Source #
application/json
Produces CreateUser MimeXML Source #
application/xml
Produces CreateUser MimeJSON Source #
application/json
Produces PlaceOrder MimeXML Source #
application/xml
Produces PlaceOrder MimeJSON Source #
application/json
Produces GetOrderById MimeXML Source #
application/xml
Produces GetOrderById MimeJSON Source #
application/json
Produces GetInventory MimeJSON Source #
application/json
Produces DeleteOrder MimeXML Source #
application/xml
Produces DeleteOrder MimeJSON Source #
application/json
Produces UploadFile MimeJSON Source #
application/json
Produces UpdatePetWithForm MimeXML Source #
application/xml
Produces UpdatePetWithForm MimeJSON Source #
application/json
Produces UpdatePet MimeXML Source #
application/xml
Produces UpdatePet MimeJSON Source #
application/json
Produces GetPetById MimeXML Source #
application/xml
Produces GetPetById MimeJSON Source #
application/json
Produces FindPetsByTags MimeXML Source #
application/xml
Produces FindPetsByTags MimeJSON Source #
application/json
Produces FindPetsByStatus MimeXML Source #
application/xml
Produces FindPetsByStatus MimeJSON Source #
application/json
Produces DeletePet MimeXML Source #
application/xml
Produces DeletePet MimeJSON Source #
application/json
Produces AddPet MimeXML Source #
application/xml
Produces AddPet MimeJSON Source #
application/json
Produces TestClassname MimeJSON Source #
application/json
Produces TestEnumParameters MimeAny Source #
*/*
Produces TestEndpointParameters MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
Produces TestEndpointParameters MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
Produces TestClientModel MimeJSON Source #
application/json
Produces TestSpecialTags MimeJSON Source #
application/json
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.MimeTypes

Description

 

Content Negotiation

Mime Types

data MimeJSON Source #

Constructors

MimeJSON 

Instances

MimeType MimeJSON Source #
application/json; charset=utf-8
Produces UpdateUser MimeJSON Source #
application/json
Produces LogoutUser MimeJSON Source #
application/json
Produces LoginUser MimeJSON Source #
application/json
Produces GetUserByName MimeJSON Source #
application/json
Produces DeleteUser MimeJSON Source #
application/json
Produces CreateUsersWithListInput MimeJSON Source #
application/json
Produces CreateUsersWithArrayInput MimeJSON Source #
application/json
Produces CreateUser MimeJSON Source #
application/json
Produces PlaceOrder MimeJSON Source #
application/json
Produces GetOrderById MimeJSON Source #
application/json
Produces GetInventory MimeJSON Source #
application/json
Produces DeleteOrder MimeJSON Source #
application/json
Produces UploadFile MimeJSON Source #
application/json
Produces UpdatePetWithForm MimeJSON Source #
application/json
Produces UpdatePet MimeJSON Source #
application/json
Produces GetPetById MimeJSON Source #
application/json
Produces FindPetsByTags MimeJSON Source #
application/json
Produces FindPetsByStatus MimeJSON Source #
application/json
Produces DeletePet MimeJSON Source #
application/json
Produces AddPet MimeJSON Source #
application/json
Produces TestClassname MimeJSON Source #
application/json
Produces TestClientModel MimeJSON Source #
application/json
Produces TestSpecialTags MimeJSON Source #
application/json
Consumes UpdatePet MimeJSON Source #
application/json
Consumes AddPet MimeJSON Source #
application/json
Consumes TestClassname MimeJSON Source #
application/json
Consumes TestJsonFormData MimeJSON Source #
application/json
Consumes TestClientModel MimeJSON Source #
application/json
Consumes TestSpecialTags MimeJSON Source #
application/json
FromJSON a => MimeUnrender MimeJSON a Source #
A.eitherDecode
ToJSON a => MimeRender MimeJSON a Source #

encode

data MimePlainText Source #

Constructors

MimePlainText 

Instances

MimeType MimePlainText Source #
text/plain; charset=utf-8
MimeUnrender MimePlainText ByteString Source #
P.Right . P.id
MimeUnrender MimePlainText String Source #
P.Right . BCL.unpack
MimeUnrender MimePlainText Text Source #
P.left P.show . TL.decodeUtf8'
MimeRender MimePlainText ByteString Source #
P.id
MimeRender MimePlainText String Source #
BCL.pack
MimeRender MimePlainText Text Source #
BL.fromStrict . T.encodeUtf8

data MimeMultipartFormData Source #

Constructors

MimeMultipartFormData 

Instances

MimeType MimeMultipartFormData Source #
multipart/form-data
Consumes UploadFile MimeMultipartFormData Source #
multipart/form-data
MimeRender MimeMultipartFormData Bool Source # 
MimeRender MimeMultipartFormData Char Source # 
MimeRender MimeMultipartFormData Double Source # 
MimeRender MimeMultipartFormData Float Source # 
MimeRender MimeMultipartFormData Int Source # 
MimeRender MimeMultipartFormData Integer Source # 
MimeRender MimeMultipartFormData ByteString Source # 
MimeRender MimeMultipartFormData String Source # 
MimeRender MimeMultipartFormData Text Source # 
MimeRender MimeMultipartFormData Binary Source # 
MimeRender MimeMultipartFormData ByteArray Source # 
MimeRender MimeMultipartFormData Date Source # 
MimeRender MimeMultipartFormData DateTime Source # 

data MimeOctetStream Source #

Constructors

MimeOctetStream 

Instances

MimeType MimeOctetStream Source #
application/octet-stream
MimeUnrender MimeOctetStream ByteString Source #
P.Right . P.id
MimeUnrender MimeOctetStream String Source #
P.Right . BCL.unpack
MimeUnrender MimeOctetStream Text Source #
P.left P.show . T.decodeUtf8' . BL.toStrict
MimeRender MimeOctetStream ByteString Source #
P.id
MimeRender MimeOctetStream String Source #
BCL.pack
MimeRender MimeOctetStream Text Source #
BL.fromStrict . T.encodeUtf8

MimeType Class

class Typeable mtype => MimeType mtype where Source #

Minimal complete definition

mimeType | mimeTypes

Instances

MimeType MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
MimeType MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
MimeType MimeAny Source #
"*/*"
MimeType MimeNoContent Source # 
MimeType MimeOctetStream Source #
application/octet-stream
MimeType MimeMultipartFormData Source #
multipart/form-data
MimeType MimeFormUrlEncoded Source #
application/x-www-form-urlencoded
MimeType MimePlainText Source #
text/plain; charset=utf-8
MimeType MimeXML Source #
application/xml; charset=utf-8
MimeType MimeJSON Source #
application/json; charset=utf-8

MimeType Instances

MimeRender Class

class MimeType mtype => MimeRender mtype x where Source #

Minimal complete definition

mimeRender

Methods

mimeRender :: Proxy mtype -> x -> ByteString Source #

mimeRender' :: mtype -> x -> ByteString Source #

Instances

ToJSON a => MimeRender MimeJsonCharsetutf8 a Source # 
MimeRender MimeNoContent NoContent Source #
P.Right . P.const NoContent
MimeRender MimeOctetStream ByteString Source #
P.id
MimeRender MimeOctetStream String Source #
BCL.pack
MimeRender MimeOctetStream Text Source #
BL.fromStrict . T.encodeUtf8
MimeRender MimeMultipartFormData Bool Source # 
MimeRender MimeMultipartFormData Char Source # 
MimeRender MimeMultipartFormData Double Source # 
MimeRender MimeMultipartFormData Float Source # 
MimeRender MimeMultipartFormData Int Source # 
MimeRender MimeMultipartFormData Integer Source # 
MimeRender MimeMultipartFormData ByteString Source # 
MimeRender MimeMultipartFormData String Source # 
MimeRender MimeMultipartFormData Text Source # 
MimeRender MimeMultipartFormData Binary Source # 
MimeRender MimeMultipartFormData ByteArray Source # 
MimeRender MimeMultipartFormData Date Source # 
MimeRender MimeMultipartFormData DateTime Source # 
ToForm a => MimeRender MimeFormUrlEncoded a Source #
WH.urlEncodeAsForm
MimeRender MimePlainText ByteString Source #
P.id
MimeRender MimePlainText String Source #
BCL.pack
MimeRender MimePlainText Text Source #
BL.fromStrict . T.encodeUtf8
ToJSON a => MimeRender MimeJSON a Source #

encode

MimeRender Instances

MimeUnrender Class

class MimeType mtype => MimeUnrender mtype o where Source #

Minimal complete definition

mimeUnrender

Instances

FromJSON a => MimeUnrender MimeJsonCharsetutf8 a Source # 
MimeUnrender MimeNoContent NoContent Source #
P.Right . P.const NoContent
MimeUnrender MimeOctetStream ByteString Source #
P.Right . P.id
MimeUnrender MimeOctetStream String Source #
P.Right . BCL.unpack
MimeUnrender MimeOctetStream Text Source #
P.left P.show . T.decodeUtf8' . BL.toStrict
FromForm a => MimeUnrender MimeFormUrlEncoded a Source #
P.left T.unpack . WH.urlDecodeAsForm
MimeUnrender MimePlainText ByteString Source #
P.Right . P.id
MimeUnrender MimePlainText String Source #
P.Right . BCL.unpack
MimeUnrender MimePlainText Text Source #
P.left P.show . TL.decodeUtf8'
FromJSON a => MimeUnrender MimeJSON a Source #
A.eitherDecode

MimeUnrender Instances

Request Consumes

Request Produces

class MimeType mtype => Produces req mtype Source #

Instances

Produces UpdateUser MimeXML Source #
application/xml
Produces UpdateUser MimeJSON Source #
application/json
Produces LogoutUser MimeXML Source #
application/xml
Produces LogoutUser MimeJSON Source #
application/json
Produces LoginUser MimeXML Source #
application/xml
Produces LoginUser MimeJSON Source #
application/json
Produces GetUserByName MimeXML Source #
application/xml
Produces GetUserByName MimeJSON Source #
application/json
Produces DeleteUser MimeXML Source #
application/xml
Produces DeleteUser MimeJSON Source #
application/json
Produces CreateUsersWithListInput MimeXML Source #
application/xml
Produces CreateUsersWithListInput MimeJSON Source #
application/json
Produces CreateUsersWithArrayInput MimeXML Source #
application/xml
Produces CreateUsersWithArrayInput MimeJSON Source #
application/json
Produces CreateUser MimeXML Source #
application/xml
Produces CreateUser MimeJSON Source #
application/json
Produces PlaceOrder MimeXML Source #
application/xml
Produces PlaceOrder MimeJSON Source #
application/json
Produces GetOrderById MimeXML Source #
application/xml
Produces GetOrderById MimeJSON Source #
application/json
Produces GetInventory MimeJSON Source #
application/json
Produces DeleteOrder MimeXML Source #
application/xml
Produces DeleteOrder MimeJSON Source #
application/json
Produces UploadFile MimeJSON Source #
application/json
Produces UpdatePetWithForm MimeXML Source #
application/xml
Produces UpdatePetWithForm MimeJSON Source #
application/json
Produces UpdatePet MimeXML Source #
application/xml
Produces UpdatePet MimeJSON Source #
application/json
Produces GetPetById MimeXML Source #
application/xml
Produces GetPetById MimeJSON Source #
application/json
Produces FindPetsByTags MimeXML Source #
application/xml
Produces FindPetsByTags MimeJSON Source #
application/json
Produces FindPetsByStatus MimeXML Source #
application/xml
Produces FindPetsByStatus MimeJSON Source #
application/json
Produces DeletePet MimeXML Source #
application/xml
Produces DeletePet MimeJSON Source #
application/json
Produces AddPet MimeXML Source #
application/xml
Produces AddPet MimeJSON Source #
application/json
Produces TestClassname MimeJSON Source #
application/json
Produces TestEnumParameters MimeAny Source #
*/*
Produces TestEndpointParameters MimeJsonCharsetutf8 Source #
application/json; charset=utf-8
Produces TestEndpointParameters MimeXmlCharsetutf8 Source #
application/xml; charset=utf-8
Produces TestClientModel MimeJSON Source #
application/json
Produces TestSpecialTags MimeJSON Source #
application/json
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Model.html b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Model.html index 37d0e07c5a81..be752dc3ae4d 100644 --- a/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Model.html +++ b/samples/client/petstore/haskell-http-client/docs/SwaggerPetstore-Model.html @@ -1,4 +1,8 @@ SwaggerPetstore.Model

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.Model

Description

 

Synopsis

Models

AdditionalPropertiesClass

mkAdditionalPropertiesClass :: AdditionalPropertiesClass Source #

Construct a value of type AdditionalPropertiesClass (by applying it's required fields, if any)

Animal

mkAnimal Source #

Arguments

:: Text

animalClassName

-> Animal 

Construct a value of type Animal (by applying it's required fields, if any)

AnimalFarm

mkAnimalFarm :: AnimalFarm Source #

Construct a value of type AnimalFarm (by applying it's required fields, if any)

ApiResponse

mkApiResponse :: ApiResponse Source #

Construct a value of type ApiResponse (by applying it's required fields, if any)

ArrayOfArrayOfNumberOnly

mkArrayOfArrayOfNumberOnly :: ArrayOfArrayOfNumberOnly Source #

Construct a value of type ArrayOfArrayOfNumberOnly (by applying it's required fields, if any)

ArrayOfNumberOnly

mkArrayOfNumberOnly :: ArrayOfNumberOnly Source #

Construct a value of type ArrayOfNumberOnly (by applying it's required fields, if any)

ArrayTest

mkArrayTest :: ArrayTest Source #

Construct a value of type ArrayTest (by applying it's required fields, if any)

Capitalization

mkCapitalization :: Capitalization Source #

Construct a value of type Capitalization (by applying it's required fields, if any)

Category

mkCategory :: Category Source #

Construct a value of type Category (by applying it's required fields, if any)

ClassModel

mkClassModel :: ClassModel Source #

Construct a value of type ClassModel (by applying it's required fields, if any)

Client

data Client Source #

Constructors

Client 

Fields

mkClient :: Client Source #

Construct a value of type Client (by applying it's required fields, if any)

EnumArrays

mkEnumArrays :: EnumArrays Source #

Construct a value of type EnumArrays (by applying it's required fields, if any)

EnumClass

mkEnumClass :: EnumClass Source #

Construct a value of type EnumClass (by applying it's required fields, if any)

EnumTest

mkEnumTest :: EnumTest Source #

Construct a value of type EnumTest (by applying it's required fields, if any)

FormatTest

mkFormatTest Source #

Construct a value of type FormatTest (by applying it's required fields, if any)

HasOnlyReadOnly

mkHasOnlyReadOnly :: HasOnlyReadOnly Source #

Construct a value of type HasOnlyReadOnly (by applying it's required fields, if any)

MapTest

mkMapTest :: MapTest Source #

Construct a value of type MapTest (by applying it's required fields, if any)

MixedPropertiesAndAdditionalPropertiesClass

Model200Response

mkModel200Response :: Model200Response Source #

Construct a value of type Model200Response (by applying it's required fields, if any)

ModelList

mkModelList :: ModelList Source #

Construct a value of type ModelList (by applying it's required fields, if any)

ModelReturn

mkModelReturn :: ModelReturn Source #

Construct a value of type ModelReturn (by applying it's required fields, if any)

Name

data Name Source #

Model for testing model name same as property name

Constructors

Name 

Fields

mkName Source #

Arguments

:: Int

nameName

-> Name 

Construct a value of type Name (by applying it's required fields, if any)

NumberOnly

mkNumberOnly :: NumberOnly Source #

Construct a value of type NumberOnly (by applying it's required fields, if any)

Order

data Order Source #

Constructors

Order 

Fields

Instances

Eq Order Source # 

Methods

(==) :: Order -> Order -> Bool #

(/=) :: Order -> Order -> Bool #

Show Order Source # 

Methods

showsPrec :: Int -> Order -> ShowS #

show :: Order -> String #

showList :: [Order] -> ShowS #

ToJSON Order Source # 
FromJSON Order Source # 
HasBodyParam PlaceOrder Order Source #

Body Param "body" - order placed for purchasing the pet

Methods

setBodyParam :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => SwaggerPetstoreRequest PlaceOrder contentType res -> Order -> SwaggerPetstoreRequest PlaceOrder contentType res Source #

mkOrder :: Order Source #

Construct a value of type Order (by applying it's required fields, if any)

OuterBoolean

mkOuterBoolean :: OuterBoolean Source #

Construct a value of type OuterBoolean (by applying it's required fields, if any)

OuterComposite

mkOuterComposite :: OuterComposite Source #

Construct a value of type OuterComposite (by applying it's required fields, if any)

OuterEnum

mkOuterEnum :: OuterEnum Source #

Construct a value of type OuterEnum (by applying it's required fields, if any)

OuterNumber

mkOuterNumber :: OuterNumber Source #

Construct a value of type OuterNumber (by applying it's required fields, if any)

OuterString

mkOuterString :: OuterString Source #

Construct a value of type OuterString (by applying it's required fields, if any)

Pet

data Pet Source #

Constructors

Pet 

Fields

Instances

Eq Pet Source # 

Methods

(==) :: Pet -> Pet -> Bool #

(/=) :: Pet -> Pet -> Bool #

Show Pet Source # 

Methods

showsPrec :: Int -> Pet -> ShowS #

show :: Pet -> String #

showList :: [Pet] -> ShowS #

ToJSON Pet Source # 
FromJSON Pet Source # 
HasBodyParam UpdatePet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest UpdatePet contentType res -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res Source #

HasBodyParam AddPet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes AddPet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest AddPet contentType res -> Pet -> SwaggerPetstoreRequest AddPet contentType res Source #

mkPet Source #

Arguments

:: Text

petName

-> [Text]

petPhotoUrls

-> Pet 

Construct a value of type Pet (by applying it's required fields, if any)

ReadOnlyFirst

mkReadOnlyFirst :: ReadOnlyFirst Source #

Construct a value of type ReadOnlyFirst (by applying it's required fields, if any)

SpecialModelName

mkSpecialModelName :: SpecialModelName Source #

Construct a value of type SpecialModelName (by applying it's required fields, if any)

Tag

data Tag Source #

Constructors

Tag 

Fields

mkTag :: Tag Source #

Construct a value of type Tag (by applying it's required fields, if any)

User

data User Source #

Constructors

User 

Fields

Instances

Eq User Source # 

Methods

(==) :: User -> User -> Bool #

(/=) :: User -> User -> Bool #

Show User Source # 

Methods

showsPrec :: Int -> User -> ShowS #

show :: User -> String #

showList :: [User] -> ShowS #

ToJSON User Source # 
FromJSON User Source # 
HasBodyParam UpdateUser User Source #

Body Param "body" - Updated user object

Methods

setBodyParam :: (Consumes UpdateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest UpdateUser contentType res -> User -> SwaggerPetstoreRequest UpdateUser contentType res Source #

HasBodyParam CreateUser User Source #

Body Param "body" - Created user object

Methods

setBodyParam :: (Consumes CreateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest CreateUser contentType res -> User -> SwaggerPetstoreRequest CreateUser contentType res Source #

HasBodyParam CreateUsersWithListInput [User] Source #

Body Param "body" - List of user object

HasBodyParam CreateUsersWithArrayInput [User] Source #

Body Param "body" - List of user object

mkUser :: User Source #

Construct a value of type User (by applying it's required fields, if any)

Cat

data Cat Source #

Constructors

Cat 

Fields

mkCat Source #

Arguments

:: Text

catClassName

-> Cat 

Construct a value of type Cat (by applying it's required fields, if any)

Dog

data Dog Source #

Constructors

Dog 

Fields

mkDog Source #

Arguments

:: Text

dogClassName

-> Dog 

Construct a value of type Dog (by applying it's required fields, if any)

Utils

_omitNulls :: [(Text, Value)] -> Value Source #

Removes Null fields. (OpenAPI-Specification 2.0 does not allow Null in JSON)

_toFormItem :: (ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text]) Source #

DateTime Formatting

newtype DateTime Source #

Constructors

DateTime 

Fields

Instances

Eq DateTime Source # 
Data DateTime Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DateTime -> c DateTime #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DateTime #

toConstr :: DateTime -> Constr #

dataTypeOf :: DateTime -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c DateTime) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DateTime) #

gmapT :: (forall b. Data b => b -> b) -> DateTime -> DateTime #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DateTime -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DateTime -> r #

gmapQ :: (forall d. Data d => d -> u) -> DateTime -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DateTime -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

Ord DateTime Source # 
Show DateTime Source # 
ToJSON DateTime Source # 
FromJSON DateTime Source # 
NFData DateTime Source # 

Methods

rnf :: DateTime -> () #

ToHttpApiData DateTime Source # 
FromHttpApiData DateTime Source # 
FormatTime DateTime Source # 
ParseTime DateTime Source # 
MimeRender MimeMultipartFormData DateTime Source # 

_readDateTime :: (ParseTime t, Monad m, Alternative m) => String -> m t Source #

_parseISO8601

_showDateTime :: (t ~ UTCTime, FormatTime t) => t -> String Source #

TI.formatISO8601Millis

Date Formatting

newtype Date Source #

Constructors

Date 

Fields

Instances

Enum Date Source # 

Methods

succ :: Date -> Date #

pred :: Date -> Date #

toEnum :: Int -> Date #

fromEnum :: Date -> Int #

enumFrom :: Date -> [Date] #

enumFromThen :: Date -> Date -> [Date] #

enumFromTo :: Date -> Date -> [Date] #

enumFromThenTo :: Date -> Date -> Date -> [Date] #

Eq Date Source # 

Methods

(==) :: Date -> Date -> Bool #

(/=) :: Date -> Date -> Bool #

Data Date Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Date -> c Date #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Date #

toConstr :: Date -> Constr #

dataTypeOf :: Date -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Date) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Date) #

gmapT :: (forall b. Data b => b -> b) -> Date -> Date #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Date -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Date -> r #

gmapQ :: (forall d. Data d => d -> u) -> Date -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Date -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Date -> m Date #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Date -> m Date #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Date -> m Date #

Ord Date Source # 

Methods

compare :: Date -> Date -> Ordering #

(<) :: Date -> Date -> Bool #

(<=) :: Date -> Date -> Bool #

(>) :: Date -> Date -> Bool #

(>=) :: Date -> Date -> Bool #

max :: Date -> Date -> Date #

min :: Date -> Date -> Date #

Show Date Source # 

Methods

showsPrec :: Int -> Date -> ShowS #

show :: Date -> String #

showList :: [Date] -> ShowS #

Ix Date Source # 

Methods

range :: (Date, Date) -> [Date] #

index :: (Date, Date) -> Date -> Int #

unsafeIndex :: (Date, Date) -> Date -> Int

inRange :: (Date, Date) -> Date -> Bool #

rangeSize :: (Date, Date) -> Int #

unsafeRangeSize :: (Date, Date) -> Int

ToJSON Date Source # 
FromJSON Date Source # 
NFData Date Source # 

Methods

rnf :: Date -> () #

ToHttpApiData Date Source # 
FromHttpApiData Date Source # 
FormatTime Date Source # 
ParseTime Date Source # 

Methods

buildTime :: TimeLocale -> [(Char, String)] -> Maybe Date #

MimeRender MimeMultipartFormData Date Source # 

_readDate :: (ParseTime t, Monad m) => String -> m t Source #

TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"

_showDate :: FormatTime t => t -> String Source #

TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"

Byte/Binary Formatting

newtype ByteArray Source #

base64 encoded characters

Constructors

ByteArray 

Instances

Eq ByteArray Source # 
Data ByteArray Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteArray -> c ByteArray #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteArray #

toConstr :: ByteArray -> Constr #

dataTypeOf :: ByteArray -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ByteArray) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteArray) #

gmapT :: (forall b. Data b => b -> b) -> ByteArray -> ByteArray #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteArray -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteArray -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

Ord ByteArray Source # 
Show ByteArray Source # 
ToJSON ByteArray Source # 
FromJSON ByteArray Source # 
NFData ByteArray Source # 

Methods

rnf :: ByteArray -> () #

ToHttpApiData ByteArray Source # 
FromHttpApiData ByteArray Source # 
MimeRender MimeMultipartFormData ByteArray Source # 

_readByteArray :: Monad m => Text -> m ByteArray Source #

read base64 encoded characters

_showByteArray :: ByteArray -> Text Source #

show base64 encoded characters

newtype Binary Source #

any sequence of octets

Constructors

Binary 

Fields

Instances

Eq Binary Source # 

Methods

(==) :: Binary -> Binary -> Bool #

(/=) :: Binary -> Binary -> Bool #

Data Binary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Binary -> c Binary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Binary #

toConstr :: Binary -> Constr #

dataTypeOf :: Binary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Binary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Binary) #

gmapT :: (forall b. Data b => b -> b) -> Binary -> Binary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Binary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Binary -> r #

gmapQ :: (forall d. Data d => d -> u) -> Binary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Binary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

Ord Binary Source # 
Show Binary Source # 
ToJSON Binary Source # 
FromJSON Binary Source # 
NFData Binary Source # 

Methods

rnf :: Binary -> () #

ToHttpApiData Binary Source # 
FromHttpApiData Binary Source # 
MimeRender MimeMultipartFormData Binary Source # 
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Safe HaskellNone
LanguageHaskell2010

SwaggerPetstore.Model

Description

 

Synopsis

Models

AdditionalPropertiesClass

mkAdditionalPropertiesClass :: AdditionalPropertiesClass Source #

Construct a value of type AdditionalPropertiesClass (by applying it's required fields, if any)

Animal

data Animal Source #

Animal

Constructors

Animal 

Fields

mkAnimal Source #

Arguments

:: Text

animalClassName

-> Animal 

Construct a value of type Animal (by applying it's required fields, if any)

AnimalFarm

mkAnimalFarm :: AnimalFarm Source #

Construct a value of type AnimalFarm (by applying it's required fields, if any)

ApiResponse

mkApiResponse :: ApiResponse Source #

Construct a value of type ApiResponse (by applying it's required fields, if any)

ArrayOfArrayOfNumberOnly

mkArrayOfArrayOfNumberOnly :: ArrayOfArrayOfNumberOnly Source #

Construct a value of type ArrayOfArrayOfNumberOnly (by applying it's required fields, if any)

ArrayOfNumberOnly

mkArrayOfNumberOnly :: ArrayOfNumberOnly Source #

Construct a value of type ArrayOfNumberOnly (by applying it's required fields, if any)

ArrayTest

mkArrayTest :: ArrayTest Source #

Construct a value of type ArrayTest (by applying it's required fields, if any)

Capitalization

mkCapitalization :: Capitalization Source #

Construct a value of type Capitalization (by applying it's required fields, if any)

Category

mkCategory :: Category Source #

Construct a value of type Category (by applying it's required fields, if any)

ClassModel

data ClassModel Source #

ClassModel + Model for testing model with "_class" property

Constructors

ClassModel 

Fields

mkClassModel :: ClassModel Source #

Construct a value of type ClassModel (by applying it's required fields, if any)

Client

data Client Source #

Client

Constructors

Client 

Fields

Instances

Eq Client Source # 

Methods

(==) :: Client -> Client -> Bool #

(/=) :: Client -> Client -> Bool #

Show Client Source # 
ToJSON Client Source #

ToJSON Client

FromJSON Client Source #

FromJSON Client

HasBodyParam TestClassname Client Source #

Body Param "body" - client model

Methods

setBodyParam :: (Consumes TestClassname contentType, MimeRender contentType Client) => SwaggerPetstoreRequest TestClassname contentType res -> Client -> SwaggerPetstoreRequest TestClassname contentType res Source #

HasBodyParam TestClientModel Client Source #

Body Param "body" - client model

HasBodyParam TestSpecialTags Client Source #

Body Param "body" - client model

mkClient :: Client Source #

Construct a value of type Client (by applying it's required fields, if any)

EnumArrays

mkEnumArrays :: EnumArrays Source #

Construct a value of type EnumArrays (by applying it's required fields, if any)

EnumClass

mkEnumClass :: EnumClass Source #

Construct a value of type EnumClass (by applying it's required fields, if any)

EnumTest

mkEnumTest :: EnumTest Source #

Construct a value of type EnumTest (by applying it's required fields, if any)

FormatTest

mkFormatTest Source #

Construct a value of type FormatTest (by applying it's required fields, if any)

HasOnlyReadOnly

mkHasOnlyReadOnly :: HasOnlyReadOnly Source #

Construct a value of type HasOnlyReadOnly (by applying it's required fields, if any)

MapTest

data MapTest Source #

MapTest

Constructors

MapTest 

Fields

mkMapTest :: MapTest Source #

Construct a value of type MapTest (by applying it's required fields, if any)

MixedPropertiesAndAdditionalPropertiesClass

data MixedPropertiesAndAdditionalPropertiesClass Source #

MixedPropertiesAndAdditionalPropertiesClass

Model200Response

mkModel200Response :: Model200Response Source #

Construct a value of type Model200Response (by applying it's required fields, if any)

ModelList

mkModelList :: ModelList Source #

Construct a value of type ModelList (by applying it's required fields, if any)

ModelReturn

mkModelReturn :: ModelReturn Source #

Construct a value of type ModelReturn (by applying it's required fields, if any)

Name

data Name Source #

Name + Model for testing model name same as property name

Constructors

Name 

Fields

Instances

mkName Source #

Arguments

:: Int

nameName

-> Name 

Construct a value of type Name (by applying it's required fields, if any)

NumberOnly

mkNumberOnly :: NumberOnly Source #

Construct a value of type NumberOnly (by applying it's required fields, if any)

Order

data Order Source #

Order

Constructors

Order 

Fields

Instances

Eq Order Source # 

Methods

(==) :: Order -> Order -> Bool #

(/=) :: Order -> Order -> Bool #

Show Order Source # 

Methods

showsPrec :: Int -> Order -> ShowS #

show :: Order -> String #

showList :: [Order] -> ShowS #

ToJSON Order Source #

ToJSON Order

FromJSON Order Source #

FromJSON Order

HasBodyParam PlaceOrder Order Source #

Body Param "body" - order placed for purchasing the pet

Methods

setBodyParam :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => SwaggerPetstoreRequest PlaceOrder contentType res -> Order -> SwaggerPetstoreRequest PlaceOrder contentType res Source #

mkOrder :: Order Source #

Construct a value of type Order (by applying it's required fields, if any)

OuterBoolean

mkOuterBoolean :: OuterBoolean Source #

Construct a value of type OuterBoolean (by applying it's required fields, if any)

OuterComposite

mkOuterComposite :: OuterComposite Source #

Construct a value of type OuterComposite (by applying it's required fields, if any)

OuterEnum

mkOuterEnum :: OuterEnum Source #

Construct a value of type OuterEnum (by applying it's required fields, if any)

OuterNumber

mkOuterNumber :: OuterNumber Source #

Construct a value of type OuterNumber (by applying it's required fields, if any)

OuterString

mkOuterString :: OuterString Source #

Construct a value of type OuterString (by applying it's required fields, if any)

Pet

data Pet Source #

Pet

Constructors

Pet 

Fields

Instances

Eq Pet Source # 

Methods

(==) :: Pet -> Pet -> Bool #

(/=) :: Pet -> Pet -> Bool #

Show Pet Source # 

Methods

showsPrec :: Int -> Pet -> ShowS #

show :: Pet -> String #

showList :: [Pet] -> ShowS #

ToJSON Pet Source #

ToJSON Pet

FromJSON Pet Source #

FromJSON Pet

HasBodyParam UpdatePet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest UpdatePet contentType res -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res Source #

HasBodyParam AddPet Pet Source #

Body Param "body" - Pet object that needs to be added to the store

Methods

setBodyParam :: (Consumes AddPet contentType, MimeRender contentType Pet) => SwaggerPetstoreRequest AddPet contentType res -> Pet -> SwaggerPetstoreRequest AddPet contentType res Source #

mkPet Source #

Arguments

:: Text

petName

-> [Text]

petPhotoUrls

-> Pet 

Construct a value of type Pet (by applying it's required fields, if any)

ReadOnlyFirst

mkReadOnlyFirst :: ReadOnlyFirst Source #

Construct a value of type ReadOnlyFirst (by applying it's required fields, if any)

SpecialModelName

mkSpecialModelName :: SpecialModelName Source #

Construct a value of type SpecialModelName (by applying it's required fields, if any)

Tag

data Tag Source #

Tag

Constructors

Tag 

Fields

Instances

Eq Tag Source # 

Methods

(==) :: Tag -> Tag -> Bool #

(/=) :: Tag -> Tag -> Bool #

Show Tag Source # 

Methods

showsPrec :: Int -> Tag -> ShowS #

show :: Tag -> String #

showList :: [Tag] -> ShowS #

ToJSON Tag Source #

ToJSON Tag

FromJSON Tag Source #

FromJSON Tag

mkTag :: Tag Source #

Construct a value of type Tag (by applying it's required fields, if any)

User

data User Source #

User

Constructors

User 

Fields

Instances

Eq User Source # 

Methods

(==) :: User -> User -> Bool #

(/=) :: User -> User -> Bool #

Show User Source # 

Methods

showsPrec :: Int -> User -> ShowS #

show :: User -> String #

showList :: [User] -> ShowS #

ToJSON User Source #

ToJSON User

FromJSON User Source #

FromJSON User

HasBodyParam UpdateUser User Source #

Body Param "body" - Updated user object

Methods

setBodyParam :: (Consumes UpdateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest UpdateUser contentType res -> User -> SwaggerPetstoreRequest UpdateUser contentType res Source #

HasBodyParam CreateUser User Source #

Body Param "body" - Created user object

Methods

setBodyParam :: (Consumes CreateUser contentType, MimeRender contentType User) => SwaggerPetstoreRequest CreateUser contentType res -> User -> SwaggerPetstoreRequest CreateUser contentType res Source #

mkUser :: User Source #

Construct a value of type User (by applying it's required fields, if any)

Cat

data Cat Source #

Cat

Constructors

Cat 

Fields

Instances

Eq Cat Source # 

Methods

(==) :: Cat -> Cat -> Bool #

(/=) :: Cat -> Cat -> Bool #

Show Cat Source # 

Methods

showsPrec :: Int -> Cat -> ShowS #

show :: Cat -> String #

showList :: [Cat] -> ShowS #

ToJSON Cat Source #

ToJSON Cat

FromJSON Cat Source #

FromJSON Cat

mkCat Source #

Arguments

:: Text

catClassName

-> Cat 

Construct a value of type Cat (by applying it's required fields, if any)

Dog

data Dog Source #

Dog

Constructors

Dog 

Fields

Instances

Eq Dog Source # 

Methods

(==) :: Dog -> Dog -> Bool #

(/=) :: Dog -> Dog -> Bool #

Show Dog Source # 

Methods

showsPrec :: Int -> Dog -> ShowS #

show :: Dog -> String #

showList :: [Dog] -> ShowS #

ToJSON Dog Source #

ToJSON Dog

FromJSON Dog Source #

FromJSON Dog

mkDog Source #

Arguments

:: Text

dogClassName

-> Dog 

Construct a value of type Dog (by applying it's required fields, if any)

Utils

_omitNulls :: [(Text, Value)] -> Value Source #

Removes Null fields. (OpenAPI-Specification 2.0 does not allow Null in JSON)

_toFormItem :: (ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text]) Source #

Encodes fields using WH.toQueryParam

_emptyToNothing :: Maybe String -> Maybe String Source #

Collapse (Just "") to Nothing

_memptyToNothing :: (Monoid a, Eq a) => Maybe a -> Maybe a Source #

Collapse (Just mempty) to Nothing

DateTime Formatting

newtype DateTime Source #

Constructors

DateTime 

Fields

Instances

Eq DateTime Source # 
Data DateTime Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DateTime -> c DateTime #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DateTime #

toConstr :: DateTime -> Constr #

dataTypeOf :: DateTime -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c DateTime) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DateTime) #

gmapT :: (forall b. Data b => b -> b) -> DateTime -> DateTime #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DateTime -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DateTime -> r #

gmapQ :: (forall d. Data d => d -> u) -> DateTime -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DateTime -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

Ord DateTime Source # 
Show DateTime Source # 
ToJSON DateTime Source # 
FromJSON DateTime Source # 
NFData DateTime Source # 

Methods

rnf :: DateTime -> () #

ToHttpApiData DateTime Source # 
FromHttpApiData DateTime Source # 
FormatTime DateTime Source # 
ParseTime DateTime Source # 
MimeRender MimeMultipartFormData DateTime Source # 

_readDateTime :: (ParseTime t, Monad m, Alternative m) => String -> m t Source #

_parseISO8601

_showDateTime :: (t ~ UTCTime, FormatTime t) => t -> String Source #

TI.formatISO8601Millis

_parseISO8601 :: (ParseTime t, Monad m, Alternative m) => String -> m t Source #

parse an ISO8601 date-time string

Date Formatting

newtype Date Source #

Constructors

Date 

Fields

Instances

Enum Date Source # 

Methods

succ :: Date -> Date #

pred :: Date -> Date #

toEnum :: Int -> Date #

fromEnum :: Date -> Int #

enumFrom :: Date -> [Date] #

enumFromThen :: Date -> Date -> [Date] #

enumFromTo :: Date -> Date -> [Date] #

enumFromThenTo :: Date -> Date -> Date -> [Date] #

Eq Date Source # 

Methods

(==) :: Date -> Date -> Bool #

(/=) :: Date -> Date -> Bool #

Data Date Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Date -> c Date #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Date #

toConstr :: Date -> Constr #

dataTypeOf :: Date -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Date) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Date) #

gmapT :: (forall b. Data b => b -> b) -> Date -> Date #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Date -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Date -> r #

gmapQ :: (forall d. Data d => d -> u) -> Date -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Date -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Date -> m Date #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Date -> m Date #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Date -> m Date #

Ord Date Source # 

Methods

compare :: Date -> Date -> Ordering #

(<) :: Date -> Date -> Bool #

(<=) :: Date -> Date -> Bool #

(>) :: Date -> Date -> Bool #

(>=) :: Date -> Date -> Bool #

max :: Date -> Date -> Date #

min :: Date -> Date -> Date #

Show Date Source # 

Methods

showsPrec :: Int -> Date -> ShowS #

show :: Date -> String #

showList :: [Date] -> ShowS #

Ix Date Source # 

Methods

range :: (Date, Date) -> [Date] #

index :: (Date, Date) -> Date -> Int #

unsafeIndex :: (Date, Date) -> Date -> Int

inRange :: (Date, Date) -> Date -> Bool #

rangeSize :: (Date, Date) -> Int #

unsafeRangeSize :: (Date, Date) -> Int

ToJSON Date Source # 
FromJSON Date Source # 
NFData Date Source # 

Methods

rnf :: Date -> () #

ToHttpApiData Date Source # 
FromHttpApiData Date Source # 
FormatTime Date Source # 
ParseTime Date Source # 

Methods

buildTime :: TimeLocale -> [(Char, String)] -> Maybe Date #

MimeRender MimeMultipartFormData Date Source # 

_readDate :: (ParseTime t, Monad m) => String -> m t Source #

TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"

_showDate :: FormatTime t => t -> String Source #

TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"

Byte/Binary Formatting

newtype ByteArray Source #

base64 encoded characters

Constructors

ByteArray 

Instances

Eq ByteArray Source # 
Data ByteArray Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteArray -> c ByteArray #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteArray #

toConstr :: ByteArray -> Constr #

dataTypeOf :: ByteArray -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ByteArray) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteArray) #

gmapT :: (forall b. Data b => b -> b) -> ByteArray -> ByteArray #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteArray -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteArray -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

Ord ByteArray Source # 
Show ByteArray Source # 
ToJSON ByteArray Source # 
FromJSON ByteArray Source # 
NFData ByteArray Source # 

Methods

rnf :: ByteArray -> () #

ToHttpApiData ByteArray Source # 
FromHttpApiData ByteArray Source # 
MimeRender MimeMultipartFormData ByteArray Source # 

_readByteArray :: Monad m => Text -> m ByteArray Source #

read base64 encoded characters

_showByteArray :: ByteArray -> Text Source #

show base64 encoded characters

newtype Binary Source #

any sequence of octets

Constructors

Binary 

Fields

Instances

Eq Binary Source # 

Methods

(==) :: Binary -> Binary -> Bool #

(/=) :: Binary -> Binary -> Bool #

Data Binary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Binary -> c Binary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Binary #

toConstr :: Binary -> Constr #

dataTypeOf :: Binary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Binary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Binary) #

gmapT :: (forall b. Data b => b -> b) -> Binary -> Binary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Binary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Binary -> r #

gmapQ :: (forall d. Data d => d -> u) -> Binary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Binary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

Ord Binary Source # 
Show Binary Source # 
ToJSON Binary Source # 
FromJSON Binary Source # 
NFData Binary Source # 

Methods

rnf :: Binary -> () #

ToHttpApiData Binary Source # 
FromHttpApiData Binary Source # 
MimeRender MimeMultipartFormData Binary Source # 
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-95.html b/samples/client/petstore/haskell-http-client/docs/doc-index-95.html index 5dce1ac0d019..efe12d41b7a4 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-95.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-95.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - _)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - _

_addFormSwaggerPetstore.API, SwaggerPetstore
_addMultiFormPartSwaggerPetstore.API, SwaggerPetstore
_emptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_logSwaggerPetstore.Logging, SwaggerPetstore
_memptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_mkParamsSwaggerPetstore.API, SwaggerPetstore
_mkRequestSwaggerPetstore.API, SwaggerPetstore
_omitNullsSwaggerPetstore.Model, SwaggerPetstore
_parseISO8601SwaggerPetstore.Model, SwaggerPetstore
_readBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_readByteArraySwaggerPetstore.Model, SwaggerPetstore
_readDateSwaggerPetstore.Model, SwaggerPetstore
_readDateTimeSwaggerPetstore.Model, SwaggerPetstore
_setAcceptHeaderSwaggerPetstore.API, SwaggerPetstore
_setBodyBSSwaggerPetstore.API, SwaggerPetstore
_setBodyLBSSwaggerPetstore.API, SwaggerPetstore
_setContentTypeHeaderSwaggerPetstore.API, SwaggerPetstore
_setQuerySwaggerPetstore.API, SwaggerPetstore
_showBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_showByteArraySwaggerPetstore.Model, SwaggerPetstore
_showDateSwaggerPetstore.Model, SwaggerPetstore
_showDateTimeSwaggerPetstore.Model, SwaggerPetstore
_toCollSwaggerPetstore.API, SwaggerPetstore
_toCollASwaggerPetstore.API, SwaggerPetstore
_toCollA'SwaggerPetstore.API, SwaggerPetstore
_toFormItemSwaggerPetstore.Model, SwaggerPetstore
_toInitRequestSwaggerPetstore.Client, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - _

_addMultiFormPartSwaggerPetstore.API, SwaggerPetstore
_applyAuthMethodsSwaggerPetstore.Client, SwaggerPetstore
_emptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_hasAuthTypeSwaggerPetstore.API, SwaggerPetstore
_logSwaggerPetstore.Logging, SwaggerPetstore
_memptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_mkParamsSwaggerPetstore.API, SwaggerPetstore
_mkRequestSwaggerPetstore.API, SwaggerPetstore
_omitNullsSwaggerPetstore.Model, SwaggerPetstore
_parseISO8601SwaggerPetstore.Model, SwaggerPetstore
_readBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_readByteArraySwaggerPetstore.Model, SwaggerPetstore
_readDateSwaggerPetstore.Model, SwaggerPetstore
_readDateTimeSwaggerPetstore.Model, SwaggerPetstore
_setAcceptHeaderSwaggerPetstore.API, SwaggerPetstore
_setBodyBSSwaggerPetstore.API, SwaggerPetstore
_setBodyLBSSwaggerPetstore.API, SwaggerPetstore
_setContentTypeHeaderSwaggerPetstore.API, SwaggerPetstore
_showBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_showByteArraySwaggerPetstore.Model, SwaggerPetstore
_showDateSwaggerPetstore.Model, SwaggerPetstore
_showDateTimeSwaggerPetstore.Model, SwaggerPetstore
_toCollSwaggerPetstore.API, SwaggerPetstore
_toCollASwaggerPetstore.API, SwaggerPetstore
_toCollA'SwaggerPetstore.API, SwaggerPetstore
_toFormItemSwaggerPetstore.Model, SwaggerPetstore
_toInitRequestSwaggerPetstore.Client, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-A.html b/samples/client/petstore/haskell-http-client/docs/doc-index-A.html index 24126d080799..438715137ecf 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-A.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-A.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - A)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - A

AdditionalMetadata 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AdditionalPropertiesClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
additionalPropertiesClassMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
AddPetSwaggerPetstore.API, SwaggerPetstore
addPetSwaggerPetstore.API, SwaggerPetstore
Animal 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
animalClassNameSwaggerPetstore.Model, SwaggerPetstore
animalClassNameLSwaggerPetstore.Lens, SwaggerPetstore
animalColorSwaggerPetstore.Model, SwaggerPetstore
animalColorLSwaggerPetstore.Lens, SwaggerPetstore
AnimalFarm 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
ApiKey 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ApiResponse 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeSwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseMessageSwaggerPetstore.Model, SwaggerPetstore
apiResponseMessageLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseTypeSwaggerPetstore.Model, SwaggerPetstore
apiResponseTypeLSwaggerPetstore.Lens, SwaggerPetstore
applyOptionalParamSwaggerPetstore.API, SwaggerPetstore
ArrayOfArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayArrayOfModelSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfModelLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayOfStringSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayOfStringLSwaggerPetstore.Lens, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - A

addAuthMethodSwaggerPetstore.Client, SwaggerPetstore
addFormSwaggerPetstore.API, SwaggerPetstore
AdditionalMetadata 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AdditionalPropertiesClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
additionalPropertiesClassMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
AddPetSwaggerPetstore.API, SwaggerPetstore
addPetSwaggerPetstore.API, SwaggerPetstore
Animal 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
animalClassNameSwaggerPetstore.Model, SwaggerPetstore
animalClassNameLSwaggerPetstore.Lens, SwaggerPetstore
animalColorSwaggerPetstore.Model, SwaggerPetstore
animalColorLSwaggerPetstore.Lens, SwaggerPetstore
AnimalFarm 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
AnyAuthMethod 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ApiKey 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ApiResponse 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeSwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseMessageSwaggerPetstore.Model, SwaggerPetstore
apiResponseMessageLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseTypeSwaggerPetstore.Model, SwaggerPetstore
apiResponseTypeLSwaggerPetstore.Lens, SwaggerPetstore
applyAuthMethodSwaggerPetstore.API, SwaggerPetstore
applyOptionalParamSwaggerPetstore.API, SwaggerPetstore
ArrayOfArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayArrayOfModelSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfModelLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayOfStringSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayOfStringLSwaggerPetstore.Lens, SwaggerPetstore
AuthApiKeyApiKey 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AuthApiKeyApiKeyQuery 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AuthBasicHttpBasicTest 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AuthMethodSwaggerPetstore.API, SwaggerPetstore
AuthOAuthPetstoreAuth 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-All.html b/samples/client/petstore/haskell-http-client/docs/doc-index-All.html index 4623a6e64942..eb371e0fefc1 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-All.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-All.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index

-&-SwaggerPetstore.API, SwaggerPetstore
AdditionalMetadata 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AdditionalPropertiesClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
additionalPropertiesClassMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
AddPetSwaggerPetstore.API, SwaggerPetstore
addPetSwaggerPetstore.API, SwaggerPetstore
Animal 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
animalClassNameSwaggerPetstore.Model, SwaggerPetstore
animalClassNameLSwaggerPetstore.Lens, SwaggerPetstore
animalColorSwaggerPetstore.Model, SwaggerPetstore
animalColorLSwaggerPetstore.Lens, SwaggerPetstore
AnimalFarm 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
ApiKey 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ApiResponse 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeSwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseMessageSwaggerPetstore.Model, SwaggerPetstore
apiResponseMessageLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseTypeSwaggerPetstore.Model, SwaggerPetstore
apiResponseTypeLSwaggerPetstore.Lens, SwaggerPetstore
applyOptionalParamSwaggerPetstore.API, SwaggerPetstore
ArrayOfArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayArrayOfModelSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfModelLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayOfStringSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayOfStringLSwaggerPetstore.Lens, SwaggerPetstore
Binary 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
Body 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
BodyOuterBoolean 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
BodyOuterComposite 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
BodyOuterString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ByteArray 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
Callback 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Capitalization 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameSwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalSnakeLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationScaEthFlowPointsSwaggerPetstore.Model, SwaggerPetstore
capitalizationScaEthFlowPointsLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallSnakeLSwaggerPetstore.Lens, SwaggerPetstore
Cat 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
catClassNameSwaggerPetstore.Model, SwaggerPetstore
catClassNameLSwaggerPetstore.Lens, SwaggerPetstore
catColorSwaggerPetstore.Model, SwaggerPetstore
catColorLSwaggerPetstore.Lens, SwaggerPetstore
catDeclawedSwaggerPetstore.Model, SwaggerPetstore
catDeclawedLSwaggerPetstore.Lens, SwaggerPetstore
Category 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
categoryIdSwaggerPetstore.Model, SwaggerPetstore
categoryIdLSwaggerPetstore.Lens, SwaggerPetstore
categoryNameSwaggerPetstore.Model, SwaggerPetstore
categoryNameLSwaggerPetstore.Lens, SwaggerPetstore
ClassModel 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
classModelClassSwaggerPetstore.Model, SwaggerPetstore
classModelClassLSwaggerPetstore.Lens, SwaggerPetstore
Client 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
clientClientSwaggerPetstore.Model, SwaggerPetstore
clientClientLSwaggerPetstore.Lens, SwaggerPetstore
CollectionFormatSwaggerPetstore.API, SwaggerPetstore
CommaSeparatedSwaggerPetstore.API, SwaggerPetstore
configHostSwaggerPetstore.Client, SwaggerPetstore
configLogContextSwaggerPetstore.Client, SwaggerPetstore
configLogExecWithContextSwaggerPetstore.Client, SwaggerPetstore
configUserAgentSwaggerPetstore.Client, SwaggerPetstore
ConsumesSwaggerPetstore.MimeTypes, SwaggerPetstore
CreateUserSwaggerPetstore.API, SwaggerPetstore
createUserSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
Date 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
DateTime 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
DeleteOrderSwaggerPetstore.API, SwaggerPetstore
deleteOrderSwaggerPetstore.API, SwaggerPetstore
DeletePetSwaggerPetstore.API, SwaggerPetstore
deletePetSwaggerPetstore.API, SwaggerPetstore
DeleteUserSwaggerPetstore.API, SwaggerPetstore
deleteUserSwaggerPetstore.API, SwaggerPetstore
dispatchInitUnsafeSwaggerPetstore.Client, SwaggerPetstore
dispatchLbsSwaggerPetstore.Client, SwaggerPetstore
dispatchLbsUnsafeSwaggerPetstore.Client, SwaggerPetstore
dispatchMimeSwaggerPetstore.Client, SwaggerPetstore
dispatchMime'SwaggerPetstore.Client, SwaggerPetstore
Dog 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
dogBreedSwaggerPetstore.Model, SwaggerPetstore
dogBreedLSwaggerPetstore.Lens, SwaggerPetstore
dogClassNameSwaggerPetstore.Model, SwaggerPetstore
dogClassNameLSwaggerPetstore.Lens, SwaggerPetstore
dogColorSwaggerPetstore.Model, SwaggerPetstore
dogColorLSwaggerPetstore.Lens, SwaggerPetstore
EnumArrays 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
enumArraysArrayEnumSwaggerPetstore.Model, SwaggerPetstore
enumArraysArrayEnumLSwaggerPetstore.Lens, SwaggerPetstore
enumArraysJustSymbolSwaggerPetstore.Model, SwaggerPetstore
enumArraysJustSymbolLSwaggerPetstore.Lens, SwaggerPetstore
EnumClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
EnumFormString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumFormStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumHeaderString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumHeaderStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryDouble 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
enumTestEnumIntegerSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumIntegerLSwaggerPetstore.Lens, SwaggerPetstore
enumTestEnumNumberSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumNumberLSwaggerPetstore.Lens, SwaggerPetstore
enumTestEnumStringSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumStringLSwaggerPetstore.Lens, SwaggerPetstore
enumTestOuterEnumSwaggerPetstore.Model, SwaggerPetstore
enumTestOuterEnumLSwaggerPetstore.Lens, SwaggerPetstore
FakeOuterBooleanSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterBooleanSerializeSwaggerPetstore.API, SwaggerPetstore
FakeOuterCompositeSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterCompositeSerializeSwaggerPetstore.API, SwaggerPetstore
FakeOuterNumberSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterNumberSerializeSwaggerPetstore.API, SwaggerPetstore
FakeOuterStringSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterStringSerializeSwaggerPetstore.API, SwaggerPetstore
File 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
FindPetsByStatusSwaggerPetstore.API, SwaggerPetstore
findPetsByStatusSwaggerPetstore.API, SwaggerPetstore
FindPetsByTagsSwaggerPetstore.API, SwaggerPetstore
findPetsByTagsSwaggerPetstore.API, SwaggerPetstore
FormatTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
formatTestBinarySwaggerPetstore.Model, SwaggerPetstore
formatTestBinaryLSwaggerPetstore.Lens, SwaggerPetstore
formatTestByteSwaggerPetstore.Model, SwaggerPetstore
formatTestByteLSwaggerPetstore.Lens, SwaggerPetstore
formatTestDateSwaggerPetstore.Model, SwaggerPetstore
formatTestDateLSwaggerPetstore.Lens, SwaggerPetstore
formatTestDateTimeSwaggerPetstore.Model, SwaggerPetstore
formatTestDateTimeLSwaggerPetstore.Lens, SwaggerPetstore
formatTestDoubleSwaggerPetstore.Model, SwaggerPetstore
formatTestDoubleLSwaggerPetstore.Lens, SwaggerPetstore
formatTestFloatSwaggerPetstore.Model, SwaggerPetstore
formatTestFloatLSwaggerPetstore.Lens, SwaggerPetstore
formatTestInt32SwaggerPetstore.Model, SwaggerPetstore
formatTestInt32LSwaggerPetstore.Lens, SwaggerPetstore
formatTestInt64SwaggerPetstore.Model, SwaggerPetstore
formatTestInt64LSwaggerPetstore.Lens, SwaggerPetstore
formatTestIntegerSwaggerPetstore.Model, SwaggerPetstore
formatTestIntegerLSwaggerPetstore.Lens, SwaggerPetstore
formatTestNumberSwaggerPetstore.Model, SwaggerPetstore
formatTestNumberLSwaggerPetstore.Lens, SwaggerPetstore
formatTestPasswordSwaggerPetstore.Model, SwaggerPetstore
formatTestPasswordLSwaggerPetstore.Lens, SwaggerPetstore
formatTestStringSwaggerPetstore.Model, SwaggerPetstore
formatTestStringLSwaggerPetstore.Lens, SwaggerPetstore
formatTestUuidSwaggerPetstore.Model, SwaggerPetstore
formatTestUuidLSwaggerPetstore.Lens, SwaggerPetstore
GetInventorySwaggerPetstore.API, SwaggerPetstore
getInventorySwaggerPetstore.API, SwaggerPetstore
GetOrderByIdSwaggerPetstore.API, SwaggerPetstore
getOrderByIdSwaggerPetstore.API, SwaggerPetstore
GetPetByIdSwaggerPetstore.API, SwaggerPetstore
getPetByIdSwaggerPetstore.API, SwaggerPetstore
GetUserByNameSwaggerPetstore.API, SwaggerPetstore
getUserByNameSwaggerPetstore.API, SwaggerPetstore
HasBodyParamSwaggerPetstore.API, SwaggerPetstore
HasOnlyReadOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
hasOnlyReadOnlyBarSwaggerPetstore.Model, SwaggerPetstore
hasOnlyReadOnlyBarLSwaggerPetstore.Lens, SwaggerPetstore
hasOnlyReadOnlyFooSwaggerPetstore.Model, SwaggerPetstore
hasOnlyReadOnlyFooLSwaggerPetstore.Lens, SwaggerPetstore
HasOptionalParamSwaggerPetstore.API, SwaggerPetstore
initLogContextSwaggerPetstore.Logging, SwaggerPetstore
InitRequest 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
Int32 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Int64 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Lens_SwaggerPetstore.Lens, SwaggerPetstore
Lens_'SwaggerPetstore.Lens, SwaggerPetstore
levelDebugSwaggerPetstore.Logging, SwaggerPetstore
levelErrorSwaggerPetstore.Logging, SwaggerPetstore
levelInfoSwaggerPetstore.Logging, SwaggerPetstore
LogContextSwaggerPetstore.Logging, SwaggerPetstore
logExceptionsSwaggerPetstore.Logging, SwaggerPetstore
LogExecSwaggerPetstore.Logging, SwaggerPetstore
LogExecWithContextSwaggerPetstore.Logging, SwaggerPetstore
LoginUserSwaggerPetstore.API, SwaggerPetstore
loginUserSwaggerPetstore.API, SwaggerPetstore
LogLevelSwaggerPetstore.Logging, SwaggerPetstore
LogoutUserSwaggerPetstore.API, SwaggerPetstore
logoutUserSwaggerPetstore.API, SwaggerPetstore
MapTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
mapTestMapMapOfStringSwaggerPetstore.Model, SwaggerPetstore
mapTestMapMapOfStringLSwaggerPetstore.Lens, SwaggerPetstore
mapTestMapOfEnumStringSwaggerPetstore.Model, SwaggerPetstore
mapTestMapOfEnumStringLSwaggerPetstore.Lens, SwaggerPetstore
MimeAny 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeError 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
mimeErrorSwaggerPetstore.Client, SwaggerPetstore
mimeErrorResponseSwaggerPetstore.Client, SwaggerPetstore
MimeFormUrlEncoded 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeJSON 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeJsonCharsetutf8 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeMultipartFormData 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeNoContent 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeOctetStream 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimePlainText 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeRenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeRenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeRender'SwaggerPetstore.MimeTypes, SwaggerPetstore
mimeRenderDefaultMultipartFormDataSwaggerPetstore.MimeTypes, SwaggerPetstore
MimeResult 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
mimeResultSwaggerPetstore.Client, SwaggerPetstore
mimeResultResponseSwaggerPetstore.Client, SwaggerPetstore
MimeTypeSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeTypeSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeType'SwaggerPetstore.MimeTypes, SwaggerPetstore
mimeTypesSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeTypes'SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeUnrenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeUnrenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeUnrender'SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeXML 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeXmlCharsetutf8 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MixedPropertiesAndAdditionalPropertiesClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassDateTimeSwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassDateTimeLSwaggerPetstore.Lens, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassMapSwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassMapLSwaggerPetstore.Lens, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassUuidSwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassUuidLSwaggerPetstore.Lens, SwaggerPetstore
mkAdditionalPropertiesClassSwaggerPetstore.Model, SwaggerPetstore
mkAnimalSwaggerPetstore.Model, SwaggerPetstore
mkAnimalFarmSwaggerPetstore.Model, SwaggerPetstore
mkApiResponseSwaggerPetstore.Model, SwaggerPetstore
mkArrayOfArrayOfNumberOnlySwaggerPetstore.Model, SwaggerPetstore
mkArrayOfNumberOnlySwaggerPetstore.Model, SwaggerPetstore
mkArrayTestSwaggerPetstore.Model, SwaggerPetstore
mkCapitalizationSwaggerPetstore.Model, SwaggerPetstore
mkCatSwaggerPetstore.Model, SwaggerPetstore
mkCategorySwaggerPetstore.Model, SwaggerPetstore
mkClassModelSwaggerPetstore.Model, SwaggerPetstore
mkClientSwaggerPetstore.Model, SwaggerPetstore
mkDogSwaggerPetstore.Model, SwaggerPetstore
mkEnumArraysSwaggerPetstore.Model, SwaggerPetstore
mkEnumClassSwaggerPetstore.Model, SwaggerPetstore
mkEnumTestSwaggerPetstore.Model, SwaggerPetstore
mkFormatTestSwaggerPetstore.Model, SwaggerPetstore
mkHasOnlyReadOnlySwaggerPetstore.Model, SwaggerPetstore
mkMapTestSwaggerPetstore.Model, SwaggerPetstore
mkMixedPropertiesAndAdditionalPropertiesClassSwaggerPetstore.Model, SwaggerPetstore
mkModel200ResponseSwaggerPetstore.Model, SwaggerPetstore
mkModelListSwaggerPetstore.Model, SwaggerPetstore
mkModelReturnSwaggerPetstore.Model, SwaggerPetstore
mkNameSwaggerPetstore.Model, SwaggerPetstore
mkNumberOnlySwaggerPetstore.Model, SwaggerPetstore
mkOrderSwaggerPetstore.Model, SwaggerPetstore
mkOuterBooleanSwaggerPetstore.Model, SwaggerPetstore
mkOuterCompositeSwaggerPetstore.Model, SwaggerPetstore
mkOuterEnumSwaggerPetstore.Model, SwaggerPetstore
mkOuterNumberSwaggerPetstore.Model, SwaggerPetstore
mkOuterStringSwaggerPetstore.Model, SwaggerPetstore
mkPetSwaggerPetstore.Model, SwaggerPetstore
mkReadOnlyFirstSwaggerPetstore.Model, SwaggerPetstore
mkSpecialModelNameSwaggerPetstore.Model, SwaggerPetstore
mkTagSwaggerPetstore.Model, SwaggerPetstore
mkUserSwaggerPetstore.Model, SwaggerPetstore
Model200Response 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
model200ResponseClassSwaggerPetstore.Model, SwaggerPetstore
model200ResponseClassLSwaggerPetstore.Lens, SwaggerPetstore
model200ResponseNameSwaggerPetstore.Model, SwaggerPetstore
model200ResponseNameLSwaggerPetstore.Lens, SwaggerPetstore
ModelList 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
modelList123ListSwaggerPetstore.Model, SwaggerPetstore
modelList123ListLSwaggerPetstore.Lens, SwaggerPetstore
ModelReturn 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
modelReturnReturnSwaggerPetstore.Model, SwaggerPetstore
modelReturnReturnLSwaggerPetstore.Lens, SwaggerPetstore
modifyInitRequestSwaggerPetstore.Client, SwaggerPetstore
modifyInitRequestMSwaggerPetstore.Client, SwaggerPetstore
MultiParamArraySwaggerPetstore.API, SwaggerPetstore
Name 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
name123NumberSwaggerPetstore.Model, SwaggerPetstore
name123NumberLSwaggerPetstore.Lens, SwaggerPetstore
Name2 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
nameNameSwaggerPetstore.Model, SwaggerPetstore
nameNameLSwaggerPetstore.Lens, SwaggerPetstore
namePropertySwaggerPetstore.Model, SwaggerPetstore
namePropertyLSwaggerPetstore.Lens, SwaggerPetstore
nameSnakeCaseSwaggerPetstore.Model, SwaggerPetstore
nameSnakeCaseLSwaggerPetstore.Lens, SwaggerPetstore
newConfigSwaggerPetstore.Client, SwaggerPetstore
NoContent 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
NumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberSwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberLSwaggerPetstore.Lens, SwaggerPetstore
Order 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
orderCompleteSwaggerPetstore.Model, SwaggerPetstore
orderCompleteLSwaggerPetstore.Lens, SwaggerPetstore
orderIdSwaggerPetstore.Model, SwaggerPetstore
orderIdLSwaggerPetstore.Lens, SwaggerPetstore
orderPetIdSwaggerPetstore.Model, SwaggerPetstore
orderPetIdLSwaggerPetstore.Lens, SwaggerPetstore
orderQuantitySwaggerPetstore.Model, SwaggerPetstore
orderQuantityLSwaggerPetstore.Lens, SwaggerPetstore
orderShipDateSwaggerPetstore.Model, SwaggerPetstore
orderShipDateLSwaggerPetstore.Lens, SwaggerPetstore
orderStatusSwaggerPetstore.Model, SwaggerPetstore
orderStatusLSwaggerPetstore.Lens, SwaggerPetstore
OuterBoolean 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterComposite 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyNumberSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyNumberLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyStringSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyStringLSwaggerPetstore.Lens, SwaggerPetstore
OuterEnum 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterNumber 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterString 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
ParamBinary 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamBodySwaggerPetstore.API, SwaggerPetstore
ParamBodyBSwaggerPetstore.API, SwaggerPetstore
ParamBodyBLSwaggerPetstore.API, SwaggerPetstore
ParamBodyFormUrlEncodedSwaggerPetstore.API, SwaggerPetstore
ParamBodyMultipartFormDataSwaggerPetstore.API, SwaggerPetstore
ParamBodyNoneSwaggerPetstore.API, SwaggerPetstore
ParamDate 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamDateTime 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamFloat 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Params 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
paramsBodySwaggerPetstore.API, SwaggerPetstore
paramsBodyLSwaggerPetstore.API, SwaggerPetstore
paramsHeadersSwaggerPetstore.API, SwaggerPetstore
paramsHeadersLSwaggerPetstore.API, SwaggerPetstore
paramsQuerySwaggerPetstore.API, SwaggerPetstore
paramsQueryLSwaggerPetstore.API, SwaggerPetstore
ParamString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Password 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Pet 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
petCategorySwaggerPetstore.Model, SwaggerPetstore
petCategoryLSwaggerPetstore.Lens, SwaggerPetstore
petIdSwaggerPetstore.Model, SwaggerPetstore
petIdLSwaggerPetstore.Lens, SwaggerPetstore
petNameSwaggerPetstore.Model, SwaggerPetstore
petNameLSwaggerPetstore.Lens, SwaggerPetstore
petPhotoUrlsSwaggerPetstore.Model, SwaggerPetstore
petPhotoUrlsLSwaggerPetstore.Lens, SwaggerPetstore
petStatusSwaggerPetstore.Model, SwaggerPetstore
petStatusLSwaggerPetstore.Lens, SwaggerPetstore
petTagsSwaggerPetstore.Model, SwaggerPetstore
petTagsLSwaggerPetstore.Lens, SwaggerPetstore
PipeSeparatedSwaggerPetstore.API, SwaggerPetstore
PlaceOrderSwaggerPetstore.API, SwaggerPetstore
placeOrderSwaggerPetstore.API, SwaggerPetstore
ProducesSwaggerPetstore.MimeTypes, SwaggerPetstore
ReadOnlyFirst 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarLSwaggerPetstore.Lens, SwaggerPetstore
readOnlyFirstBazSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBazLSwaggerPetstore.Lens, SwaggerPetstore
removeHeaderSwaggerPetstore.API, SwaggerPetstore
rMethodSwaggerPetstore.API, SwaggerPetstore
rMethodLSwaggerPetstore.API, SwaggerPetstore
rParamsSwaggerPetstore.API, SwaggerPetstore
rParamsLSwaggerPetstore.API, SwaggerPetstore
runConfigLogSwaggerPetstore.Client, SwaggerPetstore
runConfigLogWithExceptionsSwaggerPetstore.Client, SwaggerPetstore
runDefaultLogExecWithContextSwaggerPetstore.Logging, SwaggerPetstore
runNullLogExecSwaggerPetstore.Logging, SwaggerPetstore
rUrlPathSwaggerPetstore.API, SwaggerPetstore
rUrlPathLSwaggerPetstore.API, SwaggerPetstore
setBodyParamSwaggerPetstore.API, SwaggerPetstore
setHeaderSwaggerPetstore.API, SwaggerPetstore
SpaceSeparatedSwaggerPetstore.API, SwaggerPetstore
SpecialModelName 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameSwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameLSwaggerPetstore.Lens, SwaggerPetstore
Status 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
stderrLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stderrLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
SwaggerPetstoreConfig 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
SwaggerPetstoreRequest 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
TabSeparatedSwaggerPetstore.API, SwaggerPetstore
Tag 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
tagIdSwaggerPetstore.Model, SwaggerPetstore
tagIdLSwaggerPetstore.Lens, SwaggerPetstore
tagNameSwaggerPetstore.Model, SwaggerPetstore
tagNameLSwaggerPetstore.Lens, SwaggerPetstore
TestClassnameSwaggerPetstore.API, SwaggerPetstore
testClassnameSwaggerPetstore.API, SwaggerPetstore
TestClientModelSwaggerPetstore.API, SwaggerPetstore
testClientModelSwaggerPetstore.API, SwaggerPetstore
TestEndpointParametersSwaggerPetstore.API, SwaggerPetstore
testEndpointParametersSwaggerPetstore.API, SwaggerPetstore
TestEnumParametersSwaggerPetstore.API, SwaggerPetstore
testEnumParametersSwaggerPetstore.API, SwaggerPetstore
TestJsonFormDataSwaggerPetstore.API, SwaggerPetstore
testJsonFormDataSwaggerPetstore.API, SwaggerPetstore
TestSpecialTagsSwaggerPetstore.API, SwaggerPetstore
testSpecialTagsSwaggerPetstore.API, SwaggerPetstore
toFormSwaggerPetstore.API, SwaggerPetstore
toFormCollSwaggerPetstore.API, SwaggerPetstore
toHeaderSwaggerPetstore.API, SwaggerPetstore
toHeaderCollSwaggerPetstore.API, SwaggerPetstore
toPathSwaggerPetstore.API, SwaggerPetstore
toQuerySwaggerPetstore.API, SwaggerPetstore
toQueryCollSwaggerPetstore.API, SwaggerPetstore
unAdditionalMetadataSwaggerPetstore.API, SwaggerPetstore
unApiKeySwaggerPetstore.API, SwaggerPetstore
unBinarySwaggerPetstore.Model, SwaggerPetstore
unBodySwaggerPetstore.API, SwaggerPetstore
unBodyOuterBooleanSwaggerPetstore.API, SwaggerPetstore
unBodyOuterCompositeSwaggerPetstore.API, SwaggerPetstore
unBodyOuterStringSwaggerPetstore.API, SwaggerPetstore
unByteArraySwaggerPetstore.Model, SwaggerPetstore
unCallbackSwaggerPetstore.API, SwaggerPetstore
unDateSwaggerPetstore.Model, SwaggerPetstore
unDateTimeSwaggerPetstore.Model, SwaggerPetstore
unEnumFormStringSwaggerPetstore.API, SwaggerPetstore
unEnumFormStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringSwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumQueryDoubleSwaggerPetstore.API, SwaggerPetstore
unEnumQueryIntegerSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringArraySwaggerPetstore.API, SwaggerPetstore
unFileSwaggerPetstore.API, SwaggerPetstore
unInitRequestSwaggerPetstore.Client, SwaggerPetstore
unInt32SwaggerPetstore.API, SwaggerPetstore
unInt64SwaggerPetstore.API, SwaggerPetstore
unName2SwaggerPetstore.API, SwaggerPetstore
unParamBinarySwaggerPetstore.API, SwaggerPetstore
unParamDateSwaggerPetstore.API, SwaggerPetstore
unParamDateTimeSwaggerPetstore.API, SwaggerPetstore
unParamFloatSwaggerPetstore.API, SwaggerPetstore
unParamIntegerSwaggerPetstore.API, SwaggerPetstore
unParamStringSwaggerPetstore.API, SwaggerPetstore
unPasswordSwaggerPetstore.API, SwaggerPetstore
unStatusSwaggerPetstore.API, SwaggerPetstore
UpdatePetSwaggerPetstore.API, SwaggerPetstore
updatePetSwaggerPetstore.API, SwaggerPetstore
UpdatePetWithFormSwaggerPetstore.API, SwaggerPetstore
updatePetWithFormSwaggerPetstore.API, SwaggerPetstore
UpdateUserSwaggerPetstore.API, SwaggerPetstore
updateUserSwaggerPetstore.API, SwaggerPetstore
UploadFileSwaggerPetstore.API, SwaggerPetstore
uploadFileSwaggerPetstore.API, SwaggerPetstore
User 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
userEmailSwaggerPetstore.Model, SwaggerPetstore
userEmailLSwaggerPetstore.Lens, SwaggerPetstore
userFirstNameSwaggerPetstore.Model, SwaggerPetstore
userFirstNameLSwaggerPetstore.Lens, SwaggerPetstore
userIdSwaggerPetstore.Model, SwaggerPetstore
userIdLSwaggerPetstore.Lens, SwaggerPetstore
userLastNameSwaggerPetstore.Model, SwaggerPetstore
userLastNameLSwaggerPetstore.Lens, SwaggerPetstore
userPasswordSwaggerPetstore.Model, SwaggerPetstore
userPasswordLSwaggerPetstore.Lens, SwaggerPetstore
userPhoneSwaggerPetstore.Model, SwaggerPetstore
userPhoneLSwaggerPetstore.Lens, SwaggerPetstore
userUsernameSwaggerPetstore.Model, SwaggerPetstore
userUsernameLSwaggerPetstore.Lens, SwaggerPetstore
userUserStatusSwaggerPetstore.Model, SwaggerPetstore
userUserStatusLSwaggerPetstore.Lens, SwaggerPetstore
withNoLoggingSwaggerPetstore.Client, SwaggerPetstore
withStderrLoggingSwaggerPetstore.Client, SwaggerPetstore
withStdoutLoggingSwaggerPetstore.Client, SwaggerPetstore
_addFormSwaggerPetstore.API, SwaggerPetstore
_addMultiFormPartSwaggerPetstore.API, SwaggerPetstore
_emptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_logSwaggerPetstore.Logging, SwaggerPetstore
_memptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_mkParamsSwaggerPetstore.API, SwaggerPetstore
_mkRequestSwaggerPetstore.API, SwaggerPetstore
_omitNullsSwaggerPetstore.Model, SwaggerPetstore
_parseISO8601SwaggerPetstore.Model, SwaggerPetstore
_readBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_readByteArraySwaggerPetstore.Model, SwaggerPetstore
_readDateSwaggerPetstore.Model, SwaggerPetstore
_readDateTimeSwaggerPetstore.Model, SwaggerPetstore
_setAcceptHeaderSwaggerPetstore.API, SwaggerPetstore
_setBodyBSSwaggerPetstore.API, SwaggerPetstore
_setBodyLBSSwaggerPetstore.API, SwaggerPetstore
_setContentTypeHeaderSwaggerPetstore.API, SwaggerPetstore
_setQuerySwaggerPetstore.API, SwaggerPetstore
_showBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_showByteArraySwaggerPetstore.Model, SwaggerPetstore
_showDateSwaggerPetstore.Model, SwaggerPetstore
_showDateTimeSwaggerPetstore.Model, SwaggerPetstore
_toCollSwaggerPetstore.API, SwaggerPetstore
_toCollASwaggerPetstore.API, SwaggerPetstore
_toCollA'SwaggerPetstore.API, SwaggerPetstore
_toFormItemSwaggerPetstore.Model, SwaggerPetstore
_toInitRequestSwaggerPetstore.Client, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index

-&-SwaggerPetstore.API, SwaggerPetstore
addAuthMethodSwaggerPetstore.Client, SwaggerPetstore
addFormSwaggerPetstore.API, SwaggerPetstore
AdditionalMetadata 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AdditionalPropertiesClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapOfMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
additionalPropertiesClassMapPropertySwaggerPetstore.Model, SwaggerPetstore
additionalPropertiesClassMapPropertyLSwaggerPetstore.Lens, SwaggerPetstore
AddPetSwaggerPetstore.API, SwaggerPetstore
addPetSwaggerPetstore.API, SwaggerPetstore
Animal 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
animalClassNameSwaggerPetstore.Model, SwaggerPetstore
animalClassNameLSwaggerPetstore.Lens, SwaggerPetstore
animalColorSwaggerPetstore.Model, SwaggerPetstore
animalColorLSwaggerPetstore.Lens, SwaggerPetstore
AnimalFarm 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
AnyAuthMethod 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ApiKey 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ApiResponse 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeSwaggerPetstore.Model, SwaggerPetstore
apiResponseCodeLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseMessageSwaggerPetstore.Model, SwaggerPetstore
apiResponseMessageLSwaggerPetstore.Lens, SwaggerPetstore
apiResponseTypeSwaggerPetstore.Model, SwaggerPetstore
apiResponseTypeLSwaggerPetstore.Lens, SwaggerPetstore
applyAuthMethodSwaggerPetstore.API, SwaggerPetstore
applyOptionalParamSwaggerPetstore.API, SwaggerPetstore
ArrayOfArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfArrayOfNumberOnlyArrayArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayOfNumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberSwaggerPetstore.Model, SwaggerPetstore
arrayOfNumberOnlyArrayNumberLSwaggerPetstore.Lens, SwaggerPetstore
ArrayTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfIntegerLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayArrayOfModelSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayArrayOfModelLSwaggerPetstore.Lens, SwaggerPetstore
arrayTestArrayOfStringSwaggerPetstore.Model, SwaggerPetstore
arrayTestArrayOfStringLSwaggerPetstore.Lens, SwaggerPetstore
AuthApiKeyApiKey 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AuthApiKeyApiKeyQuery 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AuthBasicHttpBasicTest 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
AuthMethodSwaggerPetstore.API, SwaggerPetstore
AuthOAuthPetstoreAuth 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Binary 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
Body 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Byte 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ByteArray 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
Callback 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Capitalization 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameSwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalSnakeLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationScaEthFlowPointsSwaggerPetstore.Model, SwaggerPetstore
capitalizationScaEthFlowPointsLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallSnakeLSwaggerPetstore.Lens, SwaggerPetstore
Cat 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
catClassNameSwaggerPetstore.Model, SwaggerPetstore
catClassNameLSwaggerPetstore.Lens, SwaggerPetstore
catColorSwaggerPetstore.Model, SwaggerPetstore
catColorLSwaggerPetstore.Lens, SwaggerPetstore
catDeclawedSwaggerPetstore.Model, SwaggerPetstore
catDeclawedLSwaggerPetstore.Lens, SwaggerPetstore
Category 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
categoryIdSwaggerPetstore.Model, SwaggerPetstore
categoryIdLSwaggerPetstore.Lens, SwaggerPetstore
categoryNameSwaggerPetstore.Model, SwaggerPetstore
categoryNameLSwaggerPetstore.Lens, SwaggerPetstore
ClassModel 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
classModelClassSwaggerPetstore.Model, SwaggerPetstore
classModelClassLSwaggerPetstore.Lens, SwaggerPetstore
Client 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
clientClientSwaggerPetstore.Model, SwaggerPetstore
clientClientLSwaggerPetstore.Lens, SwaggerPetstore
CollectionFormatSwaggerPetstore.API, SwaggerPetstore
CommaSeparatedSwaggerPetstore.API, SwaggerPetstore
configAuthMethodsSwaggerPetstore.Client, SwaggerPetstore
configHostSwaggerPetstore.Client, SwaggerPetstore
configLogContextSwaggerPetstore.Client, SwaggerPetstore
configLogExecWithContextSwaggerPetstore.Client, SwaggerPetstore
configUserAgentSwaggerPetstore.Client, SwaggerPetstore
ConsumesSwaggerPetstore.MimeTypes, SwaggerPetstore
CreateUserSwaggerPetstore.API, SwaggerPetstore
createUserSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
Date 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
DateTime 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
DeleteOrderSwaggerPetstore.API, SwaggerPetstore
deleteOrderSwaggerPetstore.API, SwaggerPetstore
DeletePetSwaggerPetstore.API, SwaggerPetstore
deletePetSwaggerPetstore.API, SwaggerPetstore
DeleteUserSwaggerPetstore.API, SwaggerPetstore
deleteUserSwaggerPetstore.API, SwaggerPetstore
dispatchInitUnsafeSwaggerPetstore.Client, SwaggerPetstore
dispatchLbsSwaggerPetstore.Client, SwaggerPetstore
dispatchLbsUnsafeSwaggerPetstore.Client, SwaggerPetstore
dispatchMimeSwaggerPetstore.Client, SwaggerPetstore
dispatchMime'SwaggerPetstore.Client, SwaggerPetstore
Dog 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
dogBreedSwaggerPetstore.Model, SwaggerPetstore
dogBreedLSwaggerPetstore.Lens, SwaggerPetstore
dogClassNameSwaggerPetstore.Model, SwaggerPetstore
dogClassNameLSwaggerPetstore.Lens, SwaggerPetstore
dogColorSwaggerPetstore.Model, SwaggerPetstore
dogColorLSwaggerPetstore.Lens, SwaggerPetstore
EnumArrays 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
enumArraysArrayEnumSwaggerPetstore.Model, SwaggerPetstore
enumArraysArrayEnumLSwaggerPetstore.Lens, SwaggerPetstore
enumArraysJustSymbolSwaggerPetstore.Model, SwaggerPetstore
enumArraysJustSymbolLSwaggerPetstore.Lens, SwaggerPetstore
EnumClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
EnumFormString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumFormStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumHeaderString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumHeaderStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryDouble 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
enumTestEnumIntegerSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumIntegerLSwaggerPetstore.Lens, SwaggerPetstore
enumTestEnumNumberSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumNumberLSwaggerPetstore.Lens, SwaggerPetstore
enumTestEnumStringSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumStringLSwaggerPetstore.Lens, SwaggerPetstore
enumTestOuterEnumSwaggerPetstore.Model, SwaggerPetstore
enumTestOuterEnumLSwaggerPetstore.Lens, SwaggerPetstore
FakeOuterBooleanSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterBooleanSerializeSwaggerPetstore.API, SwaggerPetstore
FakeOuterCompositeSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterCompositeSerializeSwaggerPetstore.API, SwaggerPetstore
FakeOuterNumberSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterNumberSerializeSwaggerPetstore.API, SwaggerPetstore
FakeOuterStringSerializeSwaggerPetstore.API, SwaggerPetstore
fakeOuterStringSerializeSwaggerPetstore.API, SwaggerPetstore
File 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
FindPetsByStatusSwaggerPetstore.API, SwaggerPetstore
findPetsByStatusSwaggerPetstore.API, SwaggerPetstore
FindPetsByTagsSwaggerPetstore.API, SwaggerPetstore
findPetsByTagsSwaggerPetstore.API, SwaggerPetstore
FormatTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
formatTestBinarySwaggerPetstore.Model, SwaggerPetstore
formatTestBinaryLSwaggerPetstore.Lens, SwaggerPetstore
formatTestByteSwaggerPetstore.Model, SwaggerPetstore
formatTestByteLSwaggerPetstore.Lens, SwaggerPetstore
formatTestDateSwaggerPetstore.Model, SwaggerPetstore
formatTestDateLSwaggerPetstore.Lens, SwaggerPetstore
formatTestDateTimeSwaggerPetstore.Model, SwaggerPetstore
formatTestDateTimeLSwaggerPetstore.Lens, SwaggerPetstore
formatTestDoubleSwaggerPetstore.Model, SwaggerPetstore
formatTestDoubleLSwaggerPetstore.Lens, SwaggerPetstore
formatTestFloatSwaggerPetstore.Model, SwaggerPetstore
formatTestFloatLSwaggerPetstore.Lens, SwaggerPetstore
formatTestInt32SwaggerPetstore.Model, SwaggerPetstore
formatTestInt32LSwaggerPetstore.Lens, SwaggerPetstore
formatTestInt64SwaggerPetstore.Model, SwaggerPetstore
formatTestInt64LSwaggerPetstore.Lens, SwaggerPetstore
formatTestIntegerSwaggerPetstore.Model, SwaggerPetstore
formatTestIntegerLSwaggerPetstore.Lens, SwaggerPetstore
formatTestNumberSwaggerPetstore.Model, SwaggerPetstore
formatTestNumberLSwaggerPetstore.Lens, SwaggerPetstore
formatTestPasswordSwaggerPetstore.Model, SwaggerPetstore
formatTestPasswordLSwaggerPetstore.Lens, SwaggerPetstore
formatTestStringSwaggerPetstore.Model, SwaggerPetstore
formatTestStringLSwaggerPetstore.Lens, SwaggerPetstore
formatTestUuidSwaggerPetstore.Model, SwaggerPetstore
formatTestUuidLSwaggerPetstore.Lens, SwaggerPetstore
GetInventorySwaggerPetstore.API, SwaggerPetstore
getInventorySwaggerPetstore.API, SwaggerPetstore
GetOrderByIdSwaggerPetstore.API, SwaggerPetstore
getOrderByIdSwaggerPetstore.API, SwaggerPetstore
GetPetByIdSwaggerPetstore.API, SwaggerPetstore
getPetByIdSwaggerPetstore.API, SwaggerPetstore
GetUserByNameSwaggerPetstore.API, SwaggerPetstore
getUserByNameSwaggerPetstore.API, SwaggerPetstore
HasBodyParamSwaggerPetstore.API, SwaggerPetstore
HasOnlyReadOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
hasOnlyReadOnlyBarSwaggerPetstore.Model, SwaggerPetstore
hasOnlyReadOnlyBarLSwaggerPetstore.Lens, SwaggerPetstore
hasOnlyReadOnlyFooSwaggerPetstore.Model, SwaggerPetstore
hasOnlyReadOnlyFooLSwaggerPetstore.Lens, SwaggerPetstore
HasOptionalParamSwaggerPetstore.API, SwaggerPetstore
initLogContextSwaggerPetstore.Logging, SwaggerPetstore
InitRequest 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
Int32 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Int64 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Lens_SwaggerPetstore.Lens, SwaggerPetstore
Lens_'SwaggerPetstore.Lens, SwaggerPetstore
levelDebugSwaggerPetstore.Logging, SwaggerPetstore
levelErrorSwaggerPetstore.Logging, SwaggerPetstore
levelInfoSwaggerPetstore.Logging, SwaggerPetstore
LogContextSwaggerPetstore.Logging, SwaggerPetstore
logExceptionsSwaggerPetstore.Logging, SwaggerPetstore
LogExecSwaggerPetstore.Logging, SwaggerPetstore
LogExecWithContextSwaggerPetstore.Logging, SwaggerPetstore
LoginUserSwaggerPetstore.API, SwaggerPetstore
loginUserSwaggerPetstore.API, SwaggerPetstore
LogLevelSwaggerPetstore.Logging, SwaggerPetstore
LogoutUserSwaggerPetstore.API, SwaggerPetstore
logoutUserSwaggerPetstore.API, SwaggerPetstore
MapTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
mapTestMapMapOfStringSwaggerPetstore.Model, SwaggerPetstore
mapTestMapMapOfStringLSwaggerPetstore.Lens, SwaggerPetstore
mapTestMapOfEnumStringSwaggerPetstore.Model, SwaggerPetstore
mapTestMapOfEnumStringLSwaggerPetstore.Lens, SwaggerPetstore
MimeAny 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeError 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
mimeErrorSwaggerPetstore.Client, SwaggerPetstore
mimeErrorResponseSwaggerPetstore.Client, SwaggerPetstore
MimeFormUrlEncoded 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeJSON 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeJsonCharsetutf8 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeMultipartFormData 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeNoContent 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeOctetStream 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimePlainText 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeRenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeRenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeRender'SwaggerPetstore.MimeTypes, SwaggerPetstore
mimeRenderDefaultMultipartFormDataSwaggerPetstore.MimeTypes, SwaggerPetstore
MimeResult 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
mimeResultSwaggerPetstore.Client, SwaggerPetstore
mimeResultResponseSwaggerPetstore.Client, SwaggerPetstore
MimeTypeSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeTypeSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeType'SwaggerPetstore.MimeTypes, SwaggerPetstore
mimeTypesSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeTypes'SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeUnrenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeUnrenderSwaggerPetstore.MimeTypes, SwaggerPetstore
mimeUnrender'SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeXML 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MimeXmlCharsetutf8 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
MixedPropertiesAndAdditionalPropertiesClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassDateTimeSwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassDateTimeLSwaggerPetstore.Lens, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassMapSwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassMapLSwaggerPetstore.Lens, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassUuidSwaggerPetstore.Model, SwaggerPetstore
mixedPropertiesAndAdditionalPropertiesClassUuidLSwaggerPetstore.Lens, SwaggerPetstore
mkAdditionalPropertiesClassSwaggerPetstore.Model, SwaggerPetstore
mkAnimalSwaggerPetstore.Model, SwaggerPetstore
mkAnimalFarmSwaggerPetstore.Model, SwaggerPetstore
mkApiResponseSwaggerPetstore.Model, SwaggerPetstore
mkArrayOfArrayOfNumberOnlySwaggerPetstore.Model, SwaggerPetstore
mkArrayOfNumberOnlySwaggerPetstore.Model, SwaggerPetstore
mkArrayTestSwaggerPetstore.Model, SwaggerPetstore
mkCapitalizationSwaggerPetstore.Model, SwaggerPetstore
mkCatSwaggerPetstore.Model, SwaggerPetstore
mkCategorySwaggerPetstore.Model, SwaggerPetstore
mkClassModelSwaggerPetstore.Model, SwaggerPetstore
mkClientSwaggerPetstore.Model, SwaggerPetstore
mkDogSwaggerPetstore.Model, SwaggerPetstore
mkEnumArraysSwaggerPetstore.Model, SwaggerPetstore
mkEnumClassSwaggerPetstore.Model, SwaggerPetstore
mkEnumTestSwaggerPetstore.Model, SwaggerPetstore
mkFormatTestSwaggerPetstore.Model, SwaggerPetstore
mkHasOnlyReadOnlySwaggerPetstore.Model, SwaggerPetstore
mkMapTestSwaggerPetstore.Model, SwaggerPetstore
mkMixedPropertiesAndAdditionalPropertiesClassSwaggerPetstore.Model, SwaggerPetstore
mkModel200ResponseSwaggerPetstore.Model, SwaggerPetstore
mkModelListSwaggerPetstore.Model, SwaggerPetstore
mkModelReturnSwaggerPetstore.Model, SwaggerPetstore
mkNameSwaggerPetstore.Model, SwaggerPetstore
mkNumberOnlySwaggerPetstore.Model, SwaggerPetstore
mkOrderSwaggerPetstore.Model, SwaggerPetstore
mkOuterBooleanSwaggerPetstore.Model, SwaggerPetstore
mkOuterCompositeSwaggerPetstore.Model, SwaggerPetstore
mkOuterEnumSwaggerPetstore.Model, SwaggerPetstore
mkOuterNumberSwaggerPetstore.Model, SwaggerPetstore
mkOuterStringSwaggerPetstore.Model, SwaggerPetstore
mkPetSwaggerPetstore.Model, SwaggerPetstore
mkReadOnlyFirstSwaggerPetstore.Model, SwaggerPetstore
mkSpecialModelNameSwaggerPetstore.Model, SwaggerPetstore
mkTagSwaggerPetstore.Model, SwaggerPetstore
mkUserSwaggerPetstore.Model, SwaggerPetstore
Model200Response 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
model200ResponseClassSwaggerPetstore.Model, SwaggerPetstore
model200ResponseClassLSwaggerPetstore.Lens, SwaggerPetstore
model200ResponseNameSwaggerPetstore.Model, SwaggerPetstore
model200ResponseNameLSwaggerPetstore.Lens, SwaggerPetstore
ModelList 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
modelList123ListSwaggerPetstore.Model, SwaggerPetstore
modelList123ListLSwaggerPetstore.Lens, SwaggerPetstore
ModelReturn 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
modelReturnReturnSwaggerPetstore.Model, SwaggerPetstore
modelReturnReturnLSwaggerPetstore.Lens, SwaggerPetstore
modifyInitRequestSwaggerPetstore.Client, SwaggerPetstore
modifyInitRequestMSwaggerPetstore.Client, SwaggerPetstore
MultiParamArraySwaggerPetstore.API, SwaggerPetstore
Name 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
name123NumberSwaggerPetstore.Model, SwaggerPetstore
name123NumberLSwaggerPetstore.Lens, SwaggerPetstore
Name2 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
nameNameSwaggerPetstore.Model, SwaggerPetstore
nameNameLSwaggerPetstore.Lens, SwaggerPetstore
namePropertySwaggerPetstore.Model, SwaggerPetstore
namePropertyLSwaggerPetstore.Lens, SwaggerPetstore
nameSnakeCaseSwaggerPetstore.Model, SwaggerPetstore
nameSnakeCaseLSwaggerPetstore.Lens, SwaggerPetstore
newConfigSwaggerPetstore.Client, SwaggerPetstore
NoContent 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
Number 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
NumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberSwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberLSwaggerPetstore.Lens, SwaggerPetstore
Order 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
orderCompleteSwaggerPetstore.Model, SwaggerPetstore
orderCompleteLSwaggerPetstore.Lens, SwaggerPetstore
OrderId 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
orderIdSwaggerPetstore.Model, SwaggerPetstore
orderIdLSwaggerPetstore.Lens, SwaggerPetstore
OrderIdText 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
orderPetIdSwaggerPetstore.Model, SwaggerPetstore
orderPetIdLSwaggerPetstore.Lens, SwaggerPetstore
orderQuantitySwaggerPetstore.Model, SwaggerPetstore
orderQuantityLSwaggerPetstore.Lens, SwaggerPetstore
orderShipDateSwaggerPetstore.Model, SwaggerPetstore
orderShipDateLSwaggerPetstore.Lens, SwaggerPetstore
orderStatusSwaggerPetstore.Model, SwaggerPetstore
orderStatusLSwaggerPetstore.Lens, SwaggerPetstore
OuterBoolean 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterComposite 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyNumberSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyNumberLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyStringSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyStringLSwaggerPetstore.Lens, SwaggerPetstore
OuterEnum 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterNumber 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterString 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
Param 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Param2 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamBinary 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamBodySwaggerPetstore.API, SwaggerPetstore
ParamBodyBSwaggerPetstore.API, SwaggerPetstore
ParamBodyBLSwaggerPetstore.API, SwaggerPetstore
ParamBodyFormUrlEncodedSwaggerPetstore.API, SwaggerPetstore
ParamBodyMultipartFormDataSwaggerPetstore.API, SwaggerPetstore
ParamBodyNoneSwaggerPetstore.API, SwaggerPetstore
ParamDate 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamDateTime 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamDouble 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamFloat 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Params 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
paramsBodySwaggerPetstore.API, SwaggerPetstore
paramsBodyLSwaggerPetstore.API, SwaggerPetstore
paramsHeadersSwaggerPetstore.API, SwaggerPetstore
paramsHeadersLSwaggerPetstore.API, SwaggerPetstore
paramsQuerySwaggerPetstore.API, SwaggerPetstore
paramsQueryLSwaggerPetstore.API, SwaggerPetstore
ParamString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Password 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
PatternWithoutDelimiter 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Pet 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
petCategorySwaggerPetstore.Model, SwaggerPetstore
petCategoryLSwaggerPetstore.Lens, SwaggerPetstore
PetId 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
petIdSwaggerPetstore.Model, SwaggerPetstore
petIdLSwaggerPetstore.Lens, SwaggerPetstore
petNameSwaggerPetstore.Model, SwaggerPetstore
petNameLSwaggerPetstore.Lens, SwaggerPetstore
petPhotoUrlsSwaggerPetstore.Model, SwaggerPetstore
petPhotoUrlsLSwaggerPetstore.Lens, SwaggerPetstore
petStatusSwaggerPetstore.Model, SwaggerPetstore
petStatusLSwaggerPetstore.Lens, SwaggerPetstore
petTagsSwaggerPetstore.Model, SwaggerPetstore
petTagsLSwaggerPetstore.Lens, SwaggerPetstore
PipeSeparatedSwaggerPetstore.API, SwaggerPetstore
PlaceOrderSwaggerPetstore.API, SwaggerPetstore
placeOrderSwaggerPetstore.API, SwaggerPetstore
ProducesSwaggerPetstore.MimeTypes, SwaggerPetstore
rAuthTypesSwaggerPetstore.API, SwaggerPetstore
rAuthTypesLSwaggerPetstore.API, SwaggerPetstore
ReadOnlyFirst 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarLSwaggerPetstore.Lens, SwaggerPetstore
readOnlyFirstBazSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBazLSwaggerPetstore.Lens, SwaggerPetstore
removeHeaderSwaggerPetstore.API, SwaggerPetstore
rMethodSwaggerPetstore.API, SwaggerPetstore
rMethodLSwaggerPetstore.API, SwaggerPetstore
rParamsSwaggerPetstore.API, SwaggerPetstore
rParamsLSwaggerPetstore.API, SwaggerPetstore
runConfigLogSwaggerPetstore.Client, SwaggerPetstore
runConfigLogWithExceptionsSwaggerPetstore.Client, SwaggerPetstore
runDefaultLogExecWithContextSwaggerPetstore.Logging, SwaggerPetstore
runNullLogExecSwaggerPetstore.Logging, SwaggerPetstore
rUrlPathSwaggerPetstore.API, SwaggerPetstore
rUrlPathLSwaggerPetstore.API, SwaggerPetstore
setBodyParamSwaggerPetstore.API, SwaggerPetstore
setHeaderSwaggerPetstore.API, SwaggerPetstore
setQuerySwaggerPetstore.API, SwaggerPetstore
SpaceSeparatedSwaggerPetstore.API, SwaggerPetstore
SpecialModelName 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameSwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameLSwaggerPetstore.Lens, SwaggerPetstore
Status 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
StatusText 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
stderrLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stderrLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
SwaggerPetstoreConfig 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
SwaggerPetstoreRequest 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
TabSeparatedSwaggerPetstore.API, SwaggerPetstore
Tag 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
tagIdSwaggerPetstore.Model, SwaggerPetstore
tagIdLSwaggerPetstore.Lens, SwaggerPetstore
tagNameSwaggerPetstore.Model, SwaggerPetstore
tagNameLSwaggerPetstore.Lens, SwaggerPetstore
Tags 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
TestClassnameSwaggerPetstore.API, SwaggerPetstore
testClassnameSwaggerPetstore.API, SwaggerPetstore
TestClientModelSwaggerPetstore.API, SwaggerPetstore
testClientModelSwaggerPetstore.API, SwaggerPetstore
TestEndpointParametersSwaggerPetstore.API, SwaggerPetstore
testEndpointParametersSwaggerPetstore.API, SwaggerPetstore
TestEnumParametersSwaggerPetstore.API, SwaggerPetstore
testEnumParametersSwaggerPetstore.API, SwaggerPetstore
TestJsonFormDataSwaggerPetstore.API, SwaggerPetstore
testJsonFormDataSwaggerPetstore.API, SwaggerPetstore
TestSpecialTagsSwaggerPetstore.API, SwaggerPetstore
testSpecialTagsSwaggerPetstore.API, SwaggerPetstore
toFormSwaggerPetstore.API, SwaggerPetstore
toFormCollSwaggerPetstore.API, SwaggerPetstore
toHeaderSwaggerPetstore.API, SwaggerPetstore
toHeaderCollSwaggerPetstore.API, SwaggerPetstore
toPathSwaggerPetstore.API, SwaggerPetstore
toQuerySwaggerPetstore.API, SwaggerPetstore
toQueryCollSwaggerPetstore.API, SwaggerPetstore
unAdditionalMetadataSwaggerPetstore.API, SwaggerPetstore
unApiKeySwaggerPetstore.API, SwaggerPetstore
unBinarySwaggerPetstore.Model, SwaggerPetstore
unBodySwaggerPetstore.API, SwaggerPetstore
unByteSwaggerPetstore.API, SwaggerPetstore
unByteArraySwaggerPetstore.Model, SwaggerPetstore
unCallbackSwaggerPetstore.API, SwaggerPetstore
unDateSwaggerPetstore.Model, SwaggerPetstore
unDateTimeSwaggerPetstore.Model, SwaggerPetstore
unEnumFormStringSwaggerPetstore.API, SwaggerPetstore
unEnumFormStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringSwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumQueryDoubleSwaggerPetstore.API, SwaggerPetstore
unEnumQueryIntegerSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringArraySwaggerPetstore.API, SwaggerPetstore
unFileSwaggerPetstore.API, SwaggerPetstore
unInitRequestSwaggerPetstore.Client, SwaggerPetstore
unInt32SwaggerPetstore.API, SwaggerPetstore
unInt64SwaggerPetstore.API, SwaggerPetstore
unName2SwaggerPetstore.API, SwaggerPetstore
unNumberSwaggerPetstore.API, SwaggerPetstore
unOrderIdSwaggerPetstore.API, SwaggerPetstore
unOrderIdTextSwaggerPetstore.API, SwaggerPetstore
unParamSwaggerPetstore.API, SwaggerPetstore
unParam2SwaggerPetstore.API, SwaggerPetstore
unParamBinarySwaggerPetstore.API, SwaggerPetstore
unParamDateSwaggerPetstore.API, SwaggerPetstore
unParamDateTimeSwaggerPetstore.API, SwaggerPetstore
unParamDoubleSwaggerPetstore.API, SwaggerPetstore
unParamFloatSwaggerPetstore.API, SwaggerPetstore
unParamIntegerSwaggerPetstore.API, SwaggerPetstore
unParamStringSwaggerPetstore.API, SwaggerPetstore
unPasswordSwaggerPetstore.API, SwaggerPetstore
unPatternWithoutDelimiterSwaggerPetstore.API, SwaggerPetstore
unPetIdSwaggerPetstore.API, SwaggerPetstore
unStatusSwaggerPetstore.API, SwaggerPetstore
unStatusTextSwaggerPetstore.API, SwaggerPetstore
unTagsSwaggerPetstore.API, SwaggerPetstore
unUsernameSwaggerPetstore.API, SwaggerPetstore
UpdatePetSwaggerPetstore.API, SwaggerPetstore
updatePetSwaggerPetstore.API, SwaggerPetstore
UpdatePetWithFormSwaggerPetstore.API, SwaggerPetstore
updatePetWithFormSwaggerPetstore.API, SwaggerPetstore
UpdateUserSwaggerPetstore.API, SwaggerPetstore
updateUserSwaggerPetstore.API, SwaggerPetstore
UploadFileSwaggerPetstore.API, SwaggerPetstore
uploadFileSwaggerPetstore.API, SwaggerPetstore
User 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
userEmailSwaggerPetstore.Model, SwaggerPetstore
userEmailLSwaggerPetstore.Lens, SwaggerPetstore
userFirstNameSwaggerPetstore.Model, SwaggerPetstore
userFirstNameLSwaggerPetstore.Lens, SwaggerPetstore
userIdSwaggerPetstore.Model, SwaggerPetstore
userIdLSwaggerPetstore.Lens, SwaggerPetstore
userLastNameSwaggerPetstore.Model, SwaggerPetstore
userLastNameLSwaggerPetstore.Lens, SwaggerPetstore
Username 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
userPasswordSwaggerPetstore.Model, SwaggerPetstore
userPasswordLSwaggerPetstore.Lens, SwaggerPetstore
userPhoneSwaggerPetstore.Model, SwaggerPetstore
userPhoneLSwaggerPetstore.Lens, SwaggerPetstore
userUsernameSwaggerPetstore.Model, SwaggerPetstore
userUsernameLSwaggerPetstore.Lens, SwaggerPetstore
userUserStatusSwaggerPetstore.Model, SwaggerPetstore
userUserStatusLSwaggerPetstore.Lens, SwaggerPetstore
withNoLoggingSwaggerPetstore.Client, SwaggerPetstore
withStderrLoggingSwaggerPetstore.Client, SwaggerPetstore
withStdoutLoggingSwaggerPetstore.Client, SwaggerPetstore
_addMultiFormPartSwaggerPetstore.API, SwaggerPetstore
_applyAuthMethodsSwaggerPetstore.Client, SwaggerPetstore
_emptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_hasAuthTypeSwaggerPetstore.API, SwaggerPetstore
_logSwaggerPetstore.Logging, SwaggerPetstore
_memptyToNothingSwaggerPetstore.Model, SwaggerPetstore
_mkParamsSwaggerPetstore.API, SwaggerPetstore
_mkRequestSwaggerPetstore.API, SwaggerPetstore
_omitNullsSwaggerPetstore.Model, SwaggerPetstore
_parseISO8601SwaggerPetstore.Model, SwaggerPetstore
_readBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_readByteArraySwaggerPetstore.Model, SwaggerPetstore
_readDateSwaggerPetstore.Model, SwaggerPetstore
_readDateTimeSwaggerPetstore.Model, SwaggerPetstore
_setAcceptHeaderSwaggerPetstore.API, SwaggerPetstore
_setBodyBSSwaggerPetstore.API, SwaggerPetstore
_setBodyLBSSwaggerPetstore.API, SwaggerPetstore
_setContentTypeHeaderSwaggerPetstore.API, SwaggerPetstore
_showBinaryBase64SwaggerPetstore.Model, SwaggerPetstore
_showByteArraySwaggerPetstore.Model, SwaggerPetstore
_showDateSwaggerPetstore.Model, SwaggerPetstore
_showDateTimeSwaggerPetstore.Model, SwaggerPetstore
_toCollSwaggerPetstore.API, SwaggerPetstore
_toCollASwaggerPetstore.API, SwaggerPetstore
_toCollA'SwaggerPetstore.API, SwaggerPetstore
_toFormItemSwaggerPetstore.Model, SwaggerPetstore
_toInitRequestSwaggerPetstore.Client, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-B.html b/samples/client/petstore/haskell-http-client/docs/doc-index-B.html new file mode 100644 index 000000000000..9404d98a715c --- /dev/null +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-B.html @@ -0,0 +1,4 @@ +swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - B)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - B

Binary 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
Body 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Byte 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ByteArray 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-C.html b/samples/client/petstore/haskell-http-client/docs/doc-index-C.html index 8c002a7b4507..c3a7f8aa949b 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-C.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-C.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - C)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - C

Callback 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Capitalization 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameSwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalSnakeLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationScaEthFlowPointsSwaggerPetstore.Model, SwaggerPetstore
capitalizationScaEthFlowPointsLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallSnakeLSwaggerPetstore.Lens, SwaggerPetstore
Cat 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
catClassNameSwaggerPetstore.Model, SwaggerPetstore
catClassNameLSwaggerPetstore.Lens, SwaggerPetstore
catColorSwaggerPetstore.Model, SwaggerPetstore
catColorLSwaggerPetstore.Lens, SwaggerPetstore
catDeclawedSwaggerPetstore.Model, SwaggerPetstore
catDeclawedLSwaggerPetstore.Lens, SwaggerPetstore
Category 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
categoryIdSwaggerPetstore.Model, SwaggerPetstore
categoryIdLSwaggerPetstore.Lens, SwaggerPetstore
categoryNameSwaggerPetstore.Model, SwaggerPetstore
categoryNameLSwaggerPetstore.Lens, SwaggerPetstore
ClassModel 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
classModelClassSwaggerPetstore.Model, SwaggerPetstore
classModelClassLSwaggerPetstore.Lens, SwaggerPetstore
Client 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
clientClientSwaggerPetstore.Model, SwaggerPetstore
clientClientLSwaggerPetstore.Lens, SwaggerPetstore
CollectionFormatSwaggerPetstore.API, SwaggerPetstore
CommaSeparatedSwaggerPetstore.API, SwaggerPetstore
configHostSwaggerPetstore.Client, SwaggerPetstore
configLogContextSwaggerPetstore.Client, SwaggerPetstore
configLogExecWithContextSwaggerPetstore.Client, SwaggerPetstore
configUserAgentSwaggerPetstore.Client, SwaggerPetstore
ConsumesSwaggerPetstore.MimeTypes, SwaggerPetstore
CreateUserSwaggerPetstore.API, SwaggerPetstore
createUserSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - C

Callback 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Capitalization 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameSwaggerPetstore.Model, SwaggerPetstore
capitalizationAttNameLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationCapitalSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationCapitalSnakeLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationScaEthFlowPointsSwaggerPetstore.Model, SwaggerPetstore
capitalizationScaEthFlowPointsLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallCamelSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallCamelLSwaggerPetstore.Lens, SwaggerPetstore
capitalizationSmallSnakeSwaggerPetstore.Model, SwaggerPetstore
capitalizationSmallSnakeLSwaggerPetstore.Lens, SwaggerPetstore
Cat 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
catClassNameSwaggerPetstore.Model, SwaggerPetstore
catClassNameLSwaggerPetstore.Lens, SwaggerPetstore
catColorSwaggerPetstore.Model, SwaggerPetstore
catColorLSwaggerPetstore.Lens, SwaggerPetstore
catDeclawedSwaggerPetstore.Model, SwaggerPetstore
catDeclawedLSwaggerPetstore.Lens, SwaggerPetstore
Category 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
categoryIdSwaggerPetstore.Model, SwaggerPetstore
categoryIdLSwaggerPetstore.Lens, SwaggerPetstore
categoryNameSwaggerPetstore.Model, SwaggerPetstore
categoryNameLSwaggerPetstore.Lens, SwaggerPetstore
ClassModel 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
classModelClassSwaggerPetstore.Model, SwaggerPetstore
classModelClassLSwaggerPetstore.Lens, SwaggerPetstore
Client 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
clientClientSwaggerPetstore.Model, SwaggerPetstore
clientClientLSwaggerPetstore.Lens, SwaggerPetstore
CollectionFormatSwaggerPetstore.API, SwaggerPetstore
CommaSeparatedSwaggerPetstore.API, SwaggerPetstore
configAuthMethodsSwaggerPetstore.Client, SwaggerPetstore
configHostSwaggerPetstore.Client, SwaggerPetstore
configLogContextSwaggerPetstore.Client, SwaggerPetstore
configLogExecWithContextSwaggerPetstore.Client, SwaggerPetstore
configUserAgentSwaggerPetstore.Client, SwaggerPetstore
ConsumesSwaggerPetstore.MimeTypes, SwaggerPetstore
CreateUserSwaggerPetstore.API, SwaggerPetstore
createUserSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithArrayInputSwaggerPetstore.API, SwaggerPetstore
CreateUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
createUsersWithListInputSwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-E.html b/samples/client/petstore/haskell-http-client/docs/doc-index-E.html new file mode 100644 index 000000000000..344278e3fb8b --- /dev/null +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-E.html @@ -0,0 +1,4 @@ +swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - E)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - E

EnumArrays 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
enumArraysArrayEnumSwaggerPetstore.Model, SwaggerPetstore
enumArraysArrayEnumLSwaggerPetstore.Lens, SwaggerPetstore
enumArraysJustSymbolSwaggerPetstore.Model, SwaggerPetstore
enumArraysJustSymbolLSwaggerPetstore.Lens, SwaggerPetstore
EnumClass 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
EnumFormString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumFormStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumHeaderString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumHeaderStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryDouble 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumQueryStringArray 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
EnumTest 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
enumTestEnumIntegerSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumIntegerLSwaggerPetstore.Lens, SwaggerPetstore
enumTestEnumNumberSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumNumberLSwaggerPetstore.Lens, SwaggerPetstore
enumTestEnumStringSwaggerPetstore.Model, SwaggerPetstore
enumTestEnumStringLSwaggerPetstore.Lens, SwaggerPetstore
enumTestOuterEnumSwaggerPetstore.Model, SwaggerPetstore
enumTestOuterEnumLSwaggerPetstore.Lens, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-N.html b/samples/client/petstore/haskell-http-client/docs/doc-index-N.html index d65496e48f7c..30a4f2a7fb4b 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-N.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-N.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - N)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - N

Name 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
name123NumberSwaggerPetstore.Model, SwaggerPetstore
name123NumberLSwaggerPetstore.Lens, SwaggerPetstore
Name2 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
nameNameSwaggerPetstore.Model, SwaggerPetstore
nameNameLSwaggerPetstore.Lens, SwaggerPetstore
namePropertySwaggerPetstore.Model, SwaggerPetstore
namePropertyLSwaggerPetstore.Lens, SwaggerPetstore
nameSnakeCaseSwaggerPetstore.Model, SwaggerPetstore
nameSnakeCaseLSwaggerPetstore.Lens, SwaggerPetstore
newConfigSwaggerPetstore.Client, SwaggerPetstore
NoContent 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
NumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberSwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberLSwaggerPetstore.Lens, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - N

Name 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
name123NumberSwaggerPetstore.Model, SwaggerPetstore
name123NumberLSwaggerPetstore.Lens, SwaggerPetstore
Name2 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
nameNameSwaggerPetstore.Model, SwaggerPetstore
nameNameLSwaggerPetstore.Lens, SwaggerPetstore
namePropertySwaggerPetstore.Model, SwaggerPetstore
namePropertyLSwaggerPetstore.Lens, SwaggerPetstore
nameSnakeCaseSwaggerPetstore.Model, SwaggerPetstore
nameSnakeCaseLSwaggerPetstore.Lens, SwaggerPetstore
newConfigSwaggerPetstore.Client, SwaggerPetstore
NoContent 
1 (Type/Class)SwaggerPetstore.MimeTypes, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.MimeTypes, SwaggerPetstore
Number 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
NumberOnly 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberSwaggerPetstore.Model, SwaggerPetstore
numberOnlyJustNumberLSwaggerPetstore.Lens, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-O.html b/samples/client/petstore/haskell-http-client/docs/doc-index-O.html index 56e802e81ea7..f38ecee85175 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-O.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-O.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - O)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - O

Order 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
orderCompleteSwaggerPetstore.Model, SwaggerPetstore
orderCompleteLSwaggerPetstore.Lens, SwaggerPetstore
orderIdSwaggerPetstore.Model, SwaggerPetstore
orderIdLSwaggerPetstore.Lens, SwaggerPetstore
orderPetIdSwaggerPetstore.Model, SwaggerPetstore
orderPetIdLSwaggerPetstore.Lens, SwaggerPetstore
orderQuantitySwaggerPetstore.Model, SwaggerPetstore
orderQuantityLSwaggerPetstore.Lens, SwaggerPetstore
orderShipDateSwaggerPetstore.Model, SwaggerPetstore
orderShipDateLSwaggerPetstore.Lens, SwaggerPetstore
orderStatusSwaggerPetstore.Model, SwaggerPetstore
orderStatusLSwaggerPetstore.Lens, SwaggerPetstore
OuterBoolean 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterComposite 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyNumberSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyNumberLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyStringSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyStringLSwaggerPetstore.Lens, SwaggerPetstore
OuterEnum 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterNumber 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterString 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - O

Order 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
orderCompleteSwaggerPetstore.Model, SwaggerPetstore
orderCompleteLSwaggerPetstore.Lens, SwaggerPetstore
OrderId 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
orderIdSwaggerPetstore.Model, SwaggerPetstore
orderIdLSwaggerPetstore.Lens, SwaggerPetstore
OrderIdText 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
orderPetIdSwaggerPetstore.Model, SwaggerPetstore
orderPetIdLSwaggerPetstore.Lens, SwaggerPetstore
orderQuantitySwaggerPetstore.Model, SwaggerPetstore
orderQuantityLSwaggerPetstore.Lens, SwaggerPetstore
orderShipDateSwaggerPetstore.Model, SwaggerPetstore
orderShipDateLSwaggerPetstore.Lens, SwaggerPetstore
orderStatusSwaggerPetstore.Model, SwaggerPetstore
orderStatusLSwaggerPetstore.Lens, SwaggerPetstore
OuterBoolean 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterComposite 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyBooleanLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyNumberSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyNumberLSwaggerPetstore.Lens, SwaggerPetstore
outerCompositeMyStringSwaggerPetstore.Model, SwaggerPetstore
outerCompositeMyStringLSwaggerPetstore.Lens, SwaggerPetstore
OuterEnum 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterNumber 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
OuterString 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-P.html b/samples/client/petstore/haskell-http-client/docs/doc-index-P.html index 64db7b5535ac..fbc4848afee5 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-P.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-P.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - P)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - P

ParamBinary 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamBodySwaggerPetstore.API, SwaggerPetstore
ParamBodyBSwaggerPetstore.API, SwaggerPetstore
ParamBodyBLSwaggerPetstore.API, SwaggerPetstore
ParamBodyFormUrlEncodedSwaggerPetstore.API, SwaggerPetstore
ParamBodyMultipartFormDataSwaggerPetstore.API, SwaggerPetstore
ParamBodyNoneSwaggerPetstore.API, SwaggerPetstore
ParamDate 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamDateTime 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamFloat 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Params 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
paramsBodySwaggerPetstore.API, SwaggerPetstore
paramsBodyLSwaggerPetstore.API, SwaggerPetstore
paramsHeadersSwaggerPetstore.API, SwaggerPetstore
paramsHeadersLSwaggerPetstore.API, SwaggerPetstore
paramsQuerySwaggerPetstore.API, SwaggerPetstore
paramsQueryLSwaggerPetstore.API, SwaggerPetstore
ParamString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Password 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Pet 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
petCategorySwaggerPetstore.Model, SwaggerPetstore
petCategoryLSwaggerPetstore.Lens, SwaggerPetstore
petIdSwaggerPetstore.Model, SwaggerPetstore
petIdLSwaggerPetstore.Lens, SwaggerPetstore
petNameSwaggerPetstore.Model, SwaggerPetstore
petNameLSwaggerPetstore.Lens, SwaggerPetstore
petPhotoUrlsSwaggerPetstore.Model, SwaggerPetstore
petPhotoUrlsLSwaggerPetstore.Lens, SwaggerPetstore
petStatusSwaggerPetstore.Model, SwaggerPetstore
petStatusLSwaggerPetstore.Lens, SwaggerPetstore
petTagsSwaggerPetstore.Model, SwaggerPetstore
petTagsLSwaggerPetstore.Lens, SwaggerPetstore
PipeSeparatedSwaggerPetstore.API, SwaggerPetstore
PlaceOrderSwaggerPetstore.API, SwaggerPetstore
placeOrderSwaggerPetstore.API, SwaggerPetstore
ProducesSwaggerPetstore.MimeTypes, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - P

Param 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Param2 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamBinary 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamBodySwaggerPetstore.API, SwaggerPetstore
ParamBodyBSwaggerPetstore.API, SwaggerPetstore
ParamBodyBLSwaggerPetstore.API, SwaggerPetstore
ParamBodyFormUrlEncodedSwaggerPetstore.API, SwaggerPetstore
ParamBodyMultipartFormDataSwaggerPetstore.API, SwaggerPetstore
ParamBodyNoneSwaggerPetstore.API, SwaggerPetstore
ParamDate 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamDateTime 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamDouble 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamFloat 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
ParamInteger 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Params 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
paramsBodySwaggerPetstore.API, SwaggerPetstore
paramsBodyLSwaggerPetstore.API, SwaggerPetstore
paramsHeadersSwaggerPetstore.API, SwaggerPetstore
paramsHeadersLSwaggerPetstore.API, SwaggerPetstore
paramsQuerySwaggerPetstore.API, SwaggerPetstore
paramsQueryLSwaggerPetstore.API, SwaggerPetstore
ParamString 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Password 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
PatternWithoutDelimiter 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
Pet 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
petCategorySwaggerPetstore.Model, SwaggerPetstore
petCategoryLSwaggerPetstore.Lens, SwaggerPetstore
PetId 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
petIdSwaggerPetstore.Model, SwaggerPetstore
petIdLSwaggerPetstore.Lens, SwaggerPetstore
petNameSwaggerPetstore.Model, SwaggerPetstore
petNameLSwaggerPetstore.Lens, SwaggerPetstore
petPhotoUrlsSwaggerPetstore.Model, SwaggerPetstore
petPhotoUrlsLSwaggerPetstore.Lens, SwaggerPetstore
petStatusSwaggerPetstore.Model, SwaggerPetstore
petStatusLSwaggerPetstore.Lens, SwaggerPetstore
petTagsSwaggerPetstore.Model, SwaggerPetstore
petTagsLSwaggerPetstore.Lens, SwaggerPetstore
PipeSeparatedSwaggerPetstore.API, SwaggerPetstore
PlaceOrderSwaggerPetstore.API, SwaggerPetstore
placeOrderSwaggerPetstore.API, SwaggerPetstore
ProducesSwaggerPetstore.MimeTypes, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-R.html b/samples/client/petstore/haskell-http-client/docs/doc-index-R.html index 0f4379641905..9c10460372ee 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-R.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-R.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - R)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - R

ReadOnlyFirst 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarLSwaggerPetstore.Lens, SwaggerPetstore
readOnlyFirstBazSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBazLSwaggerPetstore.Lens, SwaggerPetstore
removeHeaderSwaggerPetstore.API, SwaggerPetstore
rMethodSwaggerPetstore.API, SwaggerPetstore
rMethodLSwaggerPetstore.API, SwaggerPetstore
rParamsSwaggerPetstore.API, SwaggerPetstore
rParamsLSwaggerPetstore.API, SwaggerPetstore
runConfigLogSwaggerPetstore.Client, SwaggerPetstore
runConfigLogWithExceptionsSwaggerPetstore.Client, SwaggerPetstore
runDefaultLogExecWithContextSwaggerPetstore.Logging, SwaggerPetstore
runNullLogExecSwaggerPetstore.Logging, SwaggerPetstore
rUrlPathSwaggerPetstore.API, SwaggerPetstore
rUrlPathLSwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - R

rAuthTypesSwaggerPetstore.API, SwaggerPetstore
rAuthTypesLSwaggerPetstore.API, SwaggerPetstore
ReadOnlyFirst 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBarLSwaggerPetstore.Lens, SwaggerPetstore
readOnlyFirstBazSwaggerPetstore.Model, SwaggerPetstore
readOnlyFirstBazLSwaggerPetstore.Lens, SwaggerPetstore
removeHeaderSwaggerPetstore.API, SwaggerPetstore
rMethodSwaggerPetstore.API, SwaggerPetstore
rMethodLSwaggerPetstore.API, SwaggerPetstore
rParamsSwaggerPetstore.API, SwaggerPetstore
rParamsLSwaggerPetstore.API, SwaggerPetstore
runConfigLogSwaggerPetstore.Client, SwaggerPetstore
runConfigLogWithExceptionsSwaggerPetstore.Client, SwaggerPetstore
runDefaultLogExecWithContextSwaggerPetstore.Logging, SwaggerPetstore
runNullLogExecSwaggerPetstore.Logging, SwaggerPetstore
rUrlPathSwaggerPetstore.API, SwaggerPetstore
rUrlPathLSwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-S.html b/samples/client/petstore/haskell-http-client/docs/doc-index-S.html index 3976204b67d6..e184aed000c5 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-S.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-S.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - S)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - S

setBodyParamSwaggerPetstore.API, SwaggerPetstore
setHeaderSwaggerPetstore.API, SwaggerPetstore
SpaceSeparatedSwaggerPetstore.API, SwaggerPetstore
SpecialModelName 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameSwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameLSwaggerPetstore.Lens, SwaggerPetstore
Status 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
stderrLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stderrLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
SwaggerPetstoreConfig 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
SwaggerPetstoreRequest 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - S

setBodyParamSwaggerPetstore.API, SwaggerPetstore
setHeaderSwaggerPetstore.API, SwaggerPetstore
setQuerySwaggerPetstore.API, SwaggerPetstore
SpaceSeparatedSwaggerPetstore.API, SwaggerPetstore
SpecialModelName 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameSwaggerPetstore.Model, SwaggerPetstore
specialModelNameSpecialPropertyNameLSwaggerPetstore.Lens, SwaggerPetstore
Status 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
StatusText 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
stderrLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stderrLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingContextSwaggerPetstore.Logging, SwaggerPetstore
stdoutLoggingExecSwaggerPetstore.Logging, SwaggerPetstore
SwaggerPetstoreConfig 
1 (Type/Class)SwaggerPetstore.Client, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Client, SwaggerPetstore
SwaggerPetstoreRequest 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-T.html b/samples/client/petstore/haskell-http-client/docs/doc-index-T.html index 45dbcad9af95..9690d5db236a 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-T.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-T.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - T)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - T

TabSeparatedSwaggerPetstore.API, SwaggerPetstore
Tag 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
tagIdSwaggerPetstore.Model, SwaggerPetstore
tagIdLSwaggerPetstore.Lens, SwaggerPetstore
tagNameSwaggerPetstore.Model, SwaggerPetstore
tagNameLSwaggerPetstore.Lens, SwaggerPetstore
TestClassnameSwaggerPetstore.API, SwaggerPetstore
testClassnameSwaggerPetstore.API, SwaggerPetstore
TestClientModelSwaggerPetstore.API, SwaggerPetstore
testClientModelSwaggerPetstore.API, SwaggerPetstore
TestEndpointParametersSwaggerPetstore.API, SwaggerPetstore
testEndpointParametersSwaggerPetstore.API, SwaggerPetstore
TestEnumParametersSwaggerPetstore.API, SwaggerPetstore
testEnumParametersSwaggerPetstore.API, SwaggerPetstore
TestJsonFormDataSwaggerPetstore.API, SwaggerPetstore
testJsonFormDataSwaggerPetstore.API, SwaggerPetstore
TestSpecialTagsSwaggerPetstore.API, SwaggerPetstore
testSpecialTagsSwaggerPetstore.API, SwaggerPetstore
toFormSwaggerPetstore.API, SwaggerPetstore
toFormCollSwaggerPetstore.API, SwaggerPetstore
toHeaderSwaggerPetstore.API, SwaggerPetstore
toHeaderCollSwaggerPetstore.API, SwaggerPetstore
toPathSwaggerPetstore.API, SwaggerPetstore
toQuerySwaggerPetstore.API, SwaggerPetstore
toQueryCollSwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - T

TabSeparatedSwaggerPetstore.API, SwaggerPetstore
Tag 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
tagIdSwaggerPetstore.Model, SwaggerPetstore
tagIdLSwaggerPetstore.Lens, SwaggerPetstore
tagNameSwaggerPetstore.Model, SwaggerPetstore
tagNameLSwaggerPetstore.Lens, SwaggerPetstore
Tags 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
TestClassnameSwaggerPetstore.API, SwaggerPetstore
testClassnameSwaggerPetstore.API, SwaggerPetstore
TestClientModelSwaggerPetstore.API, SwaggerPetstore
testClientModelSwaggerPetstore.API, SwaggerPetstore
TestEndpointParametersSwaggerPetstore.API, SwaggerPetstore
testEndpointParametersSwaggerPetstore.API, SwaggerPetstore
TestEnumParametersSwaggerPetstore.API, SwaggerPetstore
testEnumParametersSwaggerPetstore.API, SwaggerPetstore
TestJsonFormDataSwaggerPetstore.API, SwaggerPetstore
testJsonFormDataSwaggerPetstore.API, SwaggerPetstore
TestSpecialTagsSwaggerPetstore.API, SwaggerPetstore
testSpecialTagsSwaggerPetstore.API, SwaggerPetstore
toFormSwaggerPetstore.API, SwaggerPetstore
toFormCollSwaggerPetstore.API, SwaggerPetstore
toHeaderSwaggerPetstore.API, SwaggerPetstore
toHeaderCollSwaggerPetstore.API, SwaggerPetstore
toPathSwaggerPetstore.API, SwaggerPetstore
toQuerySwaggerPetstore.API, SwaggerPetstore
toQueryCollSwaggerPetstore.API, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/doc-index-U.html b/samples/client/petstore/haskell-http-client/docs/doc-index-U.html index 787461520513..686bdf75d50d 100644 --- a/samples/client/petstore/haskell-http-client/docs/doc-index-U.html +++ b/samples/client/petstore/haskell-http-client/docs/doc-index-U.html @@ -1,4 +1,4 @@ swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client (Index - U)

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - U

unAdditionalMetadataSwaggerPetstore.API, SwaggerPetstore
unApiKeySwaggerPetstore.API, SwaggerPetstore
unBinarySwaggerPetstore.Model, SwaggerPetstore
unBodySwaggerPetstore.API, SwaggerPetstore
unBodyOuterBooleanSwaggerPetstore.API, SwaggerPetstore
unBodyOuterCompositeSwaggerPetstore.API, SwaggerPetstore
unBodyOuterStringSwaggerPetstore.API, SwaggerPetstore
unByteArraySwaggerPetstore.Model, SwaggerPetstore
unCallbackSwaggerPetstore.API, SwaggerPetstore
unDateSwaggerPetstore.Model, SwaggerPetstore
unDateTimeSwaggerPetstore.Model, SwaggerPetstore
unEnumFormStringSwaggerPetstore.API, SwaggerPetstore
unEnumFormStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringSwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumQueryDoubleSwaggerPetstore.API, SwaggerPetstore
unEnumQueryIntegerSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringArraySwaggerPetstore.API, SwaggerPetstore
unFileSwaggerPetstore.API, SwaggerPetstore
unInitRequestSwaggerPetstore.Client, SwaggerPetstore
unInt32SwaggerPetstore.API, SwaggerPetstore
unInt64SwaggerPetstore.API, SwaggerPetstore
unName2SwaggerPetstore.API, SwaggerPetstore
unParamBinarySwaggerPetstore.API, SwaggerPetstore
unParamDateSwaggerPetstore.API, SwaggerPetstore
unParamDateTimeSwaggerPetstore.API, SwaggerPetstore
unParamFloatSwaggerPetstore.API, SwaggerPetstore
unParamIntegerSwaggerPetstore.API, SwaggerPetstore
unParamStringSwaggerPetstore.API, SwaggerPetstore
unPasswordSwaggerPetstore.API, SwaggerPetstore
unStatusSwaggerPetstore.API, SwaggerPetstore
UpdatePetSwaggerPetstore.API, SwaggerPetstore
updatePetSwaggerPetstore.API, SwaggerPetstore
UpdatePetWithFormSwaggerPetstore.API, SwaggerPetstore
updatePetWithFormSwaggerPetstore.API, SwaggerPetstore
UpdateUserSwaggerPetstore.API, SwaggerPetstore
updateUserSwaggerPetstore.API, SwaggerPetstore
UploadFileSwaggerPetstore.API, SwaggerPetstore
uploadFileSwaggerPetstore.API, SwaggerPetstore
User 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
userEmailSwaggerPetstore.Model, SwaggerPetstore
userEmailLSwaggerPetstore.Lens, SwaggerPetstore
userFirstNameSwaggerPetstore.Model, SwaggerPetstore
userFirstNameLSwaggerPetstore.Lens, SwaggerPetstore
userIdSwaggerPetstore.Model, SwaggerPetstore
userIdLSwaggerPetstore.Lens, SwaggerPetstore
userLastNameSwaggerPetstore.Model, SwaggerPetstore
userLastNameLSwaggerPetstore.Lens, SwaggerPetstore
userPasswordSwaggerPetstore.Model, SwaggerPetstore
userPasswordLSwaggerPetstore.Lens, SwaggerPetstore
userPhoneSwaggerPetstore.Model, SwaggerPetstore
userPhoneLSwaggerPetstore.Lens, SwaggerPetstore
userUsernameSwaggerPetstore.Model, SwaggerPetstore
userUsernameLSwaggerPetstore.Lens, SwaggerPetstore
userUserStatusSwaggerPetstore.Model, SwaggerPetstore
userUserStatusLSwaggerPetstore.Lens, SwaggerPetstore
\ No newline at end of file +

swagger-petstore-0.1.0.0: Auto-generated swagger-petstore API Client

Index - U

unAdditionalMetadataSwaggerPetstore.API, SwaggerPetstore
unApiKeySwaggerPetstore.API, SwaggerPetstore
unBinarySwaggerPetstore.Model, SwaggerPetstore
unBodySwaggerPetstore.API, SwaggerPetstore
unByteSwaggerPetstore.API, SwaggerPetstore
unByteArraySwaggerPetstore.Model, SwaggerPetstore
unCallbackSwaggerPetstore.API, SwaggerPetstore
unDateSwaggerPetstore.Model, SwaggerPetstore
unDateTimeSwaggerPetstore.Model, SwaggerPetstore
unEnumFormStringSwaggerPetstore.API, SwaggerPetstore
unEnumFormStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringSwaggerPetstore.API, SwaggerPetstore
unEnumHeaderStringArraySwaggerPetstore.API, SwaggerPetstore
unEnumQueryDoubleSwaggerPetstore.API, SwaggerPetstore
unEnumQueryIntegerSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringSwaggerPetstore.API, SwaggerPetstore
unEnumQueryStringArraySwaggerPetstore.API, SwaggerPetstore
unFileSwaggerPetstore.API, SwaggerPetstore
unInitRequestSwaggerPetstore.Client, SwaggerPetstore
unInt32SwaggerPetstore.API, SwaggerPetstore
unInt64SwaggerPetstore.API, SwaggerPetstore
unName2SwaggerPetstore.API, SwaggerPetstore
unNumberSwaggerPetstore.API, SwaggerPetstore
unOrderIdSwaggerPetstore.API, SwaggerPetstore
unOrderIdTextSwaggerPetstore.API, SwaggerPetstore
unParamSwaggerPetstore.API, SwaggerPetstore
unParam2SwaggerPetstore.API, SwaggerPetstore
unParamBinarySwaggerPetstore.API, SwaggerPetstore
unParamDateSwaggerPetstore.API, SwaggerPetstore
unParamDateTimeSwaggerPetstore.API, SwaggerPetstore
unParamDoubleSwaggerPetstore.API, SwaggerPetstore
unParamFloatSwaggerPetstore.API, SwaggerPetstore
unParamIntegerSwaggerPetstore.API, SwaggerPetstore
unParamStringSwaggerPetstore.API, SwaggerPetstore
unPasswordSwaggerPetstore.API, SwaggerPetstore
unPatternWithoutDelimiterSwaggerPetstore.API, SwaggerPetstore
unPetIdSwaggerPetstore.API, SwaggerPetstore
unStatusSwaggerPetstore.API, SwaggerPetstore
unStatusTextSwaggerPetstore.API, SwaggerPetstore
unTagsSwaggerPetstore.API, SwaggerPetstore
unUsernameSwaggerPetstore.API, SwaggerPetstore
UpdatePetSwaggerPetstore.API, SwaggerPetstore
updatePetSwaggerPetstore.API, SwaggerPetstore
UpdatePetWithFormSwaggerPetstore.API, SwaggerPetstore
updatePetWithFormSwaggerPetstore.API, SwaggerPetstore
UpdateUserSwaggerPetstore.API, SwaggerPetstore
updateUserSwaggerPetstore.API, SwaggerPetstore
UploadFileSwaggerPetstore.API, SwaggerPetstore
uploadFileSwaggerPetstore.API, SwaggerPetstore
User 
1 (Type/Class)SwaggerPetstore.Model, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.Model, SwaggerPetstore
userEmailSwaggerPetstore.Model, SwaggerPetstore
userEmailLSwaggerPetstore.Lens, SwaggerPetstore
userFirstNameSwaggerPetstore.Model, SwaggerPetstore
userFirstNameLSwaggerPetstore.Lens, SwaggerPetstore
userIdSwaggerPetstore.Model, SwaggerPetstore
userIdLSwaggerPetstore.Lens, SwaggerPetstore
userLastNameSwaggerPetstore.Model, SwaggerPetstore
userLastNameLSwaggerPetstore.Lens, SwaggerPetstore
Username 
1 (Type/Class)SwaggerPetstore.API, SwaggerPetstore
2 (Data Constructor)SwaggerPetstore.API, SwaggerPetstore
userPasswordSwaggerPetstore.Model, SwaggerPetstore
userPasswordLSwaggerPetstore.Lens, SwaggerPetstore
userPhoneSwaggerPetstore.Model, SwaggerPetstore
userPhoneLSwaggerPetstore.Lens, SwaggerPetstore
userUsernameSwaggerPetstore.Model, SwaggerPetstore
userUsernameLSwaggerPetstore.Lens, SwaggerPetstore
userUserStatusSwaggerPetstore.Model, SwaggerPetstore
userUserStatusLSwaggerPetstore.Lens, SwaggerPetstore
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-API.html b/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-API.html index 3717a4943a59..4a91bbe28426 100644 --- a/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-API.html +++ b/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-API.html @@ -1,4 +1,4 @@ SwaggerPetstore.API

SwaggerPetstore.API

Operations

AnotherFake

testSpecialTags

Fake

fakeOuterBooleanSerialize

fakeOuterCompositeSerialize

fakeOuterNumberSerialize

fakeOuterStringSerialize

testClientModel

testEndpointParameters

testEnumParameters

testJsonFormData

FakeClassnameTags123

testClassname

Pet

addPet

data AddPet

deletePet

findPetsByStatus

findPetsByTags

getPetById

updatePet

updatePetWithForm

uploadFile

Store

deleteOrder

getInventory

getOrderById

placeOrder

User

createUser

createUsersWithArrayInput

createUsersWithListInput

deleteUser

getUserByName

loginUser

logoutUser

updateUser

HasBodyParam

class HasBodyParam req param

HasOptionalParam

class HasOptionalParam req param

Optional Request Parameter Types

data Body

data Int32

data Int64

data ApiKey

data Name2

data Status

data File

SwaggerPetstoreRequest

data SwaggerPetstoreRequest req contentType res

data Params

SwaggerPetstoreRequest Utils

Params Utils

Swagger CollectionFormat Utils

\ No newline at end of file +

SwaggerPetstore.API

Operations

AnotherFake

testSpecialTags

Fake

fakeOuterBooleanSerialize

fakeOuterCompositeSerialize

fakeOuterNumberSerialize

fakeOuterStringSerialize

testClientModel

testEndpointParameters

testEnumParameters

testJsonFormData

FakeClassnameTags123

testClassname

Pet

addPet

data AddPet

deletePet

findPetsByStatus

findPetsByTags

getPetById

updatePet

updatePetWithForm

uploadFile

Store

deleteOrder

getInventory

getOrderById

placeOrder

User

createUser

createUsersWithArrayInput

createUsersWithListInput

deleteUser

getUserByName

loginUser

logoutUser

updateUser

HasBodyParam

class HasBodyParam req param

HasOptionalParam

class HasOptionalParam req param

Request Parameter Types

data ApiKey

data Number

data Int32

data Body

data Tags

data Name2

data Status

data Param2

data PetId

data OrderId

data Int64

data Byte

data Param

data File

SwaggerPetstoreRequest

data SwaggerPetstoreRequest req contentType res

data Params

SwaggerPetstoreRequest Utils

Params Utils

Swagger CollectionFormat Utils

AuthMethods

class AuthMethod a

AuthApiKeyApiKey

AuthApiKeyApiKeyQuery

AuthBasicHttpBasicTest

AuthOAuthPetstoreAuth

\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-Client.html b/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-Client.html index fc5f19bb9ee3..a6a810c6a5f5 100644 --- a/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-Client.html +++ b/samples/client/petstore/haskell-http-client/docs/mini_SwaggerPetstore-Client.html @@ -1,4 +1,4 @@ SwaggerPetstore.Client

SwaggerPetstore.Client

\ No newline at end of file +

SwaggerPetstore.Client

\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/Paths_swagger_petstore.html b/samples/client/petstore/haskell-http-client/docs/src/Paths_swagger_petstore.html index 51b2f6462e01..ce8b707ee40b 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/Paths_swagger_petstore.html +++ b/samples/client/petstore/haskell-http-client/docs/src/Paths_swagger_petstore.html @@ -15,7 +15,7 @@ #if defined(VERSION_base) #if MIN_VERSION_base(4,0,0) -catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a +catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a #else catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a #endif @@ -45,7 +45,7 @@ getSysconfDir = catchIO (getEnv "swagger_petstore_sysconfdir") (\_ -> return sysconfdir) getDataFileName :: FilePath -> IO FilePath -getDataFileName name = do - dir <- getDataDir - return (dir ++ "/" ++ name) +getDataFileName name = do + dir <- getDataDir + return (dir ++ "/" ++ name) \ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.API.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.API.html index 5e01f7d20254..5aa98e37703a 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.API.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.API.html @@ -1,1254 +1,1360 @@ -
{-|
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
+-}
+
+{-|
 Module : SwaggerPetstore.API
 -}
-
-{-# LANGUAGE RecordWildCards #-}
-
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE ConstraintKinds #-}
-{-# LANGUAGE InstanceSigs #-}
-{-# LANGUAGE NamedFieldPuns #-}
-{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-}
-
-module SwaggerPetstore.API where
-
-
-import SwaggerPetstore.Model as M
-import SwaggerPetstore.MimeTypes
-import SwaggerPetstore.Lens
-
-import qualified Data.Aeson as A
-
-import qualified Data.Time as TI
+
+{-# LANGUAGE ConstraintKinds #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+{-# LANGUAGE InstanceSigs #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE NamedFieldPuns #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE ExistentialQuantification #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-}
 
-import qualified Data.ByteString as B
-import qualified Data.ByteString.Lazy as BL
-import qualified Data.ByteString.Builder as BB
-import qualified Data.ByteString.Char8 as BC
-import qualified Data.ByteString.Lazy.Char8 as BCL
-
-import qualified Network.HTTP.Client.MultipartFormData as NH
-import qualified Network.HTTP.Media as ME
-import qualified Network.HTTP.Types as NH
-
-import qualified Web.HttpApiData as WH
-import qualified Web.FormUrlEncoded as WH
-
-import qualified Data.CaseInsensitive as CI
-import qualified Data.Data as P (Typeable)
-import qualified Data.Foldable as P
-import qualified Data.Map as Map
-import qualified Data.Set as Set
-import qualified Data.Maybe as P
-import qualified Data.Proxy as P (Proxy(..))
-import qualified Data.Text as T
-import qualified Data.Text.Encoding as T
-import qualified Data.Text.Lazy as TL
-import qualified Data.Text.Lazy.Encoding as TL
-import qualified GHC.Base as P (Alternative)
-import qualified Control.Arrow as P (left)
-
-import qualified Lens.Micro as L
-
-import Data.Monoid ((<>))
-import Data.Function ((&))
-import Data.Text (Text)
-import GHC.Base ((<|>))
-
-import Prelude ((==),(/=),($), (.),(<$>),(<*>),(>>=),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
-import qualified Prelude as P
-
--- * Operations
+module SwaggerPetstore.API where
+
+
+import SwaggerPetstore.Model as M
+import SwaggerPetstore.MimeTypes
+import SwaggerPetstore.Lens
+
+import qualified Data.Aeson as A
+
+import qualified Data.Time as TI
+
+import qualified Data.ByteString as B
+import qualified Data.ByteString.Lazy as BL
+import qualified Data.ByteString.Builder as BB
+import qualified Data.ByteString.Char8 as BC
+import qualified Data.ByteString.Lazy.Char8 as BCL
+import qualified Data.ByteString.Base64 as B64
+
+import qualified Network.HTTP.Client.MultipartFormData as NH
+import qualified Network.HTTP.Media as ME
+import qualified Network.HTTP.Types as NH
+
+import qualified Web.HttpApiData as WH
+import qualified Web.FormUrlEncoded as WH
+
+import qualified Data.CaseInsensitive as CI
+import qualified Data.Data as P (Typeable, TypeRep, typeOf, typeRep)
+import qualified Data.Foldable as P
+import qualified Data.Map as Map
+import qualified Data.Set as Set
+import qualified Data.Maybe as P
+import qualified Data.Proxy as P (Proxy(..))
+import qualified Data.Text as T
+import qualified Data.Text.Encoding as T
+import qualified Data.Text.Lazy as TL
+import qualified Data.Text.Lazy.Encoding as TL
+import qualified GHC.Base as P (Alternative)
+import qualified Control.Arrow as P (left)
 
-
--- ** AnotherFake
-
--- *** testSpecialTags
-
--- | @PATCH \/another-fake\/dummy@
--- 
--- To test special tags
--- 
--- To test special tags
--- 
-testSpecialTags 
-  :: (Consumes TestSpecialTags contentType, MimeRender contentType Client)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Client -- ^ "body" -  client model
-  -> SwaggerPetstoreRequest TestSpecialTags contentType Client
-testSpecialTags _ body =
-  _mkRequest "PATCH" ["/another-fake/dummy"]
-    `setBodyParam` body
-
-data TestSpecialTags 
-
--- | /Body Param/ "body" - client model
-instance HasBodyParam TestSpecialTags Client 
-
--- | @application/json@
-instance Consumes TestSpecialTags MimeJSON
-
--- | @application/json@
-instance Produces TestSpecialTags MimeJSON
-
+import qualified Lens.Micro as L
+
+import Data.Monoid ((<>))
+import Data.Function ((&))
+import Data.Text (Text)
+import GHC.Base ((<|>))
+
+import Prelude ((==),(/=),($), (.),(<$>),(<*>),(>>=),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
+import qualified Prelude as P
+
+-- * Operations
+
+
+-- ** AnotherFake
+
+-- *** testSpecialTags
+
+-- | @PATCH \/another-fake\/dummy@
+-- 
+-- To test special tags
+-- 
+-- To test special tags
+-- 
+testSpecialTags 
+  :: (Consumes TestSpecialTags contentType, MimeRender contentType Client)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Client -- ^ "body" -  client model
+  -> SwaggerPetstoreRequest TestSpecialTags contentType Client
+testSpecialTags _ body =
+  _mkRequest "PATCH" ["/another-fake/dummy"]
+    `setBodyParam` body
 
--- ** Fake
+data TestSpecialTags 
 
--- *** fakeOuterBooleanSerialize
-
--- | @POST \/fake\/outer\/boolean@
--- 
--- Test serialization of outer boolean types
--- 
-fakeOuterBooleanSerialize 
-  :: (Consumes FakeOuterBooleanSerialize contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> SwaggerPetstoreRequest FakeOuterBooleanSerialize contentType OuterBoolean
-fakeOuterBooleanSerialize _ =
-  _mkRequest "POST" ["/fake/outer/boolean"]
-
-data FakeOuterBooleanSerialize 
-
--- | /Body Param/ "body" - Input boolean as post body
-instance HasBodyParam FakeOuterBooleanSerialize OuterBoolean 
-
--- *** fakeOuterCompositeSerialize
-
--- | @POST \/fake\/outer\/composite@
--- 
--- Test serialization of object with outer number type
--- 
-fakeOuterCompositeSerialize 
-  :: (Consumes FakeOuterCompositeSerialize contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> SwaggerPetstoreRequest FakeOuterCompositeSerialize contentType OuterComposite
-fakeOuterCompositeSerialize _ =
-  _mkRequest "POST" ["/fake/outer/composite"]
-
-data FakeOuterCompositeSerialize 
-
--- | /Body Param/ "body" - Input composite as post body
-instance HasBodyParam FakeOuterCompositeSerialize OuterComposite 
-
--- *** fakeOuterNumberSerialize
-
--- | @POST \/fake\/outer\/number@
--- 
--- Test serialization of outer number types
--- 
-fakeOuterNumberSerialize 
-  :: (Consumes FakeOuterNumberSerialize contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> SwaggerPetstoreRequest FakeOuterNumberSerialize contentType OuterNumber
-fakeOuterNumberSerialize _ =
-  _mkRequest "POST" ["/fake/outer/number"]
-
-data FakeOuterNumberSerialize 
-
--- | /Body Param/ "body" - Input number as post body
-instance HasBodyParam FakeOuterNumberSerialize OuterNumber 
-
--- *** fakeOuterStringSerialize
-
--- | @POST \/fake\/outer\/string@
--- 
--- Test serialization of outer string types
--- 
-fakeOuterStringSerialize 
-  :: (Consumes FakeOuterStringSerialize contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> SwaggerPetstoreRequest FakeOuterStringSerialize contentType OuterString
-fakeOuterStringSerialize _ =
-  _mkRequest "POST" ["/fake/outer/string"]
-
-data FakeOuterStringSerialize 
-
--- | /Body Param/ "body" - Input string as post body
-instance HasBodyParam FakeOuterStringSerialize OuterString 
-
--- *** testClientModel
-
--- | @PATCH \/fake@
--- 
--- To test \"client\" model
--- 
--- To test \"client\" model
--- 
-testClientModel 
-  :: (Consumes TestClientModel contentType, MimeRender contentType Client)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Client -- ^ "body" -  client model
-  -> SwaggerPetstoreRequest TestClientModel contentType Client
-testClientModel _ body =
-  _mkRequest "PATCH" ["/fake"]
-    `setBodyParam` body
-
-data TestClientModel 
-
--- | /Body Param/ "body" - client model
-instance HasBodyParam TestClientModel Client 
-
--- | @application/json@
-instance Consumes TestClientModel MimeJSON
-
--- | @application/json@
-instance Produces TestClientModel MimeJSON
-
+-- | /Body Param/ "body" - client model
+instance HasBodyParam TestSpecialTags Client 
+
+-- | @application/json@
+instance Consumes TestSpecialTags MimeJSON
+
+-- | @application/json@
+instance Produces TestSpecialTags MimeJSON
+
+
+-- ** Fake
+
+-- *** fakeOuterBooleanSerialize
+
+-- | @POST \/fake\/outer\/boolean@
+-- 
+-- Test serialization of outer boolean types
+-- 
+fakeOuterBooleanSerialize 
+  :: (Consumes FakeOuterBooleanSerialize contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> SwaggerPetstoreRequest FakeOuterBooleanSerialize contentType OuterBoolean
+fakeOuterBooleanSerialize _ =
+  _mkRequest "POST" ["/fake/outer/boolean"]
+
+data FakeOuterBooleanSerialize 
+
+-- | /Body Param/ "body" - Input boolean as post body
+instance HasBodyParam FakeOuterBooleanSerialize OuterBoolean 
+
+-- *** fakeOuterCompositeSerialize
+
+-- | @POST \/fake\/outer\/composite@
+-- 
+-- Test serialization of object with outer number type
+-- 
+fakeOuterCompositeSerialize 
+  :: (Consumes FakeOuterCompositeSerialize contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> SwaggerPetstoreRequest FakeOuterCompositeSerialize contentType OuterComposite
+fakeOuterCompositeSerialize _ =
+  _mkRequest "POST" ["/fake/outer/composite"]
+
+data FakeOuterCompositeSerialize 
+
+-- | /Body Param/ "body" - Input composite as post body
+instance HasBodyParam FakeOuterCompositeSerialize OuterComposite 
+
+-- *** fakeOuterNumberSerialize
+
+-- | @POST \/fake\/outer\/number@
+-- 
+-- Test serialization of outer number types
+-- 
+fakeOuterNumberSerialize 
+  :: (Consumes FakeOuterNumberSerialize contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> SwaggerPetstoreRequest FakeOuterNumberSerialize contentType OuterNumber
+fakeOuterNumberSerialize _ =
+  _mkRequest "POST" ["/fake/outer/number"]
+
+data FakeOuterNumberSerialize 
+
+-- | /Body Param/ "body" - Input number as post body
+instance HasBodyParam FakeOuterNumberSerialize OuterNumber 
+
+-- *** fakeOuterStringSerialize
+
+-- | @POST \/fake\/outer\/string@
+-- 
+-- Test serialization of outer string types
+-- 
+fakeOuterStringSerialize 
+  :: (Consumes FakeOuterStringSerialize contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> SwaggerPetstoreRequest FakeOuterStringSerialize contentType OuterString
+fakeOuterStringSerialize _ =
+  _mkRequest "POST" ["/fake/outer/string"]
+
+data FakeOuterStringSerialize 
+
+-- | /Body Param/ "body" - Input string as post body
+instance HasBodyParam FakeOuterStringSerialize OuterString 
+
+-- *** testClientModel
+
+-- | @PATCH \/fake@
+-- 
+-- To test \"client\" model
+-- 
+-- To test \"client\" model
+-- 
+testClientModel 
+  :: (Consumes TestClientModel contentType, MimeRender contentType Client)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Client -- ^ "body" -  client model
+  -> SwaggerPetstoreRequest TestClientModel contentType Client
+testClientModel _ body =
+  _mkRequest "PATCH" ["/fake"]
+    `setBodyParam` body
 
--- *** testEndpointParameters
+data TestClientModel 
 
--- | @POST \/fake@
--- 
--- Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 
--- 
--- Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 
--- 
--- AuthMethod: http_basic_test
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-testEndpointParameters 
-  :: (Consumes TestEndpointParameters contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Double -- ^ "number" -  None
-  -> Double -- ^ "double" -  None
-  -> Text -- ^ "patternWithoutDelimiter" -  None
-  -> ByteArray -- ^ "byte" -  None
-  -> SwaggerPetstoreRequest TestEndpointParameters contentType res
-testEndpointParameters _ number double patternWithoutDelimiter byte =
-  _mkRequest "POST" ["/fake"]
-    `_addForm` toForm ("number", number)
-    `_addForm` toForm ("double", double)
-    `_addForm` toForm ("pattern_without_delimiter", patternWithoutDelimiter)
-    `_addForm` toForm ("byte", byte)
-
-data TestEndpointParameters  
-
--- | /Optional Param/ "integer" - None
-instance HasOptionalParam TestEndpointParameters ParamInteger where
-  applyOptionalParam req (ParamInteger xs) =
-    req `_addForm` toForm ("integer", xs)
-
--- | /Optional Param/ "int32" - None
-instance HasOptionalParam TestEndpointParameters Int32 where
-  applyOptionalParam req (Int32 xs) =
-    req `_addForm` toForm ("int32", xs)
-
--- | /Optional Param/ "int64" - None
-instance HasOptionalParam TestEndpointParameters Int64 where
-  applyOptionalParam req (Int64 xs) =
-    req `_addForm` toForm ("int64", xs)
-
--- | /Optional Param/ "float" - None
-instance HasOptionalParam TestEndpointParameters ParamFloat where
-  applyOptionalParam req (ParamFloat xs) =
-    req `_addForm` toForm ("float", xs)
-
--- | /Optional Param/ "string" - None
-instance HasOptionalParam TestEndpointParameters ParamString where
-  applyOptionalParam req (ParamString xs) =
-    req `_addForm` toForm ("string", xs)
-
--- | /Optional Param/ "binary" - None
-instance HasOptionalParam TestEndpointParameters ParamBinary where
-  applyOptionalParam req (ParamBinary xs) =
-    req `_addForm` toForm ("binary", xs)
-
--- | /Optional Param/ "date" - None
-instance HasOptionalParam TestEndpointParameters ParamDate where
-  applyOptionalParam req (ParamDate xs) =
-    req `_addForm` toForm ("date", xs)
-
--- | /Optional Param/ "dateTime" - None
-instance HasOptionalParam TestEndpointParameters ParamDateTime where
-  applyOptionalParam req (ParamDateTime xs) =
-    req `_addForm` toForm ("dateTime", xs)
-
--- | /Optional Param/ "password" - None
-instance HasOptionalParam TestEndpointParameters Password where
-  applyOptionalParam req (Password xs) =
-    req `_addForm` toForm ("password", xs)
-
--- | /Optional Param/ "callback" - None
-instance HasOptionalParam TestEndpointParameters Callback where
-  applyOptionalParam req (Callback xs) =
-    req `_addForm` toForm ("callback", xs)
-
--- | @application/xml; charset=utf-8@
-instance Consumes TestEndpointParameters MimeXmlCharsetutf8
--- | @application/json; charset=utf-8@
-instance Consumes TestEndpointParameters MimeJsonCharsetutf8
-
--- | @application/xml; charset=utf-8@
-instance Produces TestEndpointParameters MimeXmlCharsetutf8
--- | @application/json; charset=utf-8@
-instance Produces TestEndpointParameters MimeJsonCharsetutf8
-
-
--- *** testEnumParameters
+-- | /Body Param/ "body" - client model
+instance HasBodyParam TestClientModel Client 
+
+-- | @application/json@
+instance Consumes TestClientModel MimeJSON
+
+-- | @application/json@
+instance Produces TestClientModel MimeJSON
+
+
+-- *** testEndpointParameters
+
+-- | @POST \/fake@
+-- 
+-- Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 
+-- 
+-- Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 
+-- 
+-- AuthMethod: 'AuthBasicHttpBasicTest'
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+testEndpointParameters 
+  :: (Consumes TestEndpointParameters contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Number -- ^ "number" -  None
+  -> ParamDouble -- ^ "double" -  None
+  -> PatternWithoutDelimiter -- ^ "patternWithoutDelimiter" -  None
+  -> Byte -- ^ "byte" -  None
+  -> SwaggerPetstoreRequest TestEndpointParameters contentType res
+testEndpointParameters _ (Number number) (ParamDouble double) (PatternWithoutDelimiter patternWithoutDelimiter) (Byte byte) =
+  _mkRequest "POST" ["/fake"]
+    `addForm` toForm ("number", number)
+    `addForm` toForm ("double", double)
+    `addForm` toForm ("pattern_without_delimiter", patternWithoutDelimiter)
+    `addForm` toForm ("byte", byte)
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthBasicHttpBasicTest)
+
+data TestEndpointParameters  
+
+-- | /Optional Param/ "integer" - None
+instance HasOptionalParam TestEndpointParameters ParamInteger where
+  applyOptionalParam req (ParamInteger xs) =
+    req `addForm` toForm ("integer", xs)
+
+-- | /Optional Param/ "int32" - None
+instance HasOptionalParam TestEndpointParameters Int32 where
+  applyOptionalParam req (Int32 xs) =
+    req `addForm` toForm ("int32", xs)
+
+-- | /Optional Param/ "int64" - None
+instance HasOptionalParam TestEndpointParameters Int64 where
+  applyOptionalParam req (Int64 xs) =
+    req `addForm` toForm ("int64", xs)
+
+-- | /Optional Param/ "float" - None
+instance HasOptionalParam TestEndpointParameters ParamFloat where
+  applyOptionalParam req (ParamFloat xs) =
+    req `addForm` toForm ("float", xs)
+
+-- | /Optional Param/ "string" - None
+instance HasOptionalParam TestEndpointParameters ParamString where
+  applyOptionalParam req (ParamString xs) =
+    req `addForm` toForm ("string", xs)
+
+-- | /Optional Param/ "binary" - None
+instance HasOptionalParam TestEndpointParameters ParamBinary where
+  applyOptionalParam req (ParamBinary xs) =
+    req `addForm` toForm ("binary", xs)
+
+-- | /Optional Param/ "date" - None
+instance HasOptionalParam TestEndpointParameters ParamDate where
+  applyOptionalParam req (ParamDate xs) =
+    req `addForm` toForm ("date", xs)
+
+-- | /Optional Param/ "dateTime" - None
+instance HasOptionalParam TestEndpointParameters ParamDateTime where
+  applyOptionalParam req (ParamDateTime xs) =
+    req `addForm` toForm ("dateTime", xs)
+
+-- | /Optional Param/ "password" - None
+instance HasOptionalParam TestEndpointParameters Password where
+  applyOptionalParam req (Password xs) =
+    req `addForm` toForm ("password", xs)
+
+-- | /Optional Param/ "callback" - None
+instance HasOptionalParam TestEndpointParameters Callback where
+  applyOptionalParam req (Callback xs) =
+    req `addForm` toForm ("callback", xs)
 
--- | @GET \/fake@
--- 
--- To test enum parameters
--- 
--- To test enum parameters
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-testEnumParameters 
-  :: (Consumes TestEnumParameters contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> SwaggerPetstoreRequest TestEnumParameters contentType res
-testEnumParameters _ =
-  _mkRequest "GET" ["/fake"]
-
-data TestEnumParameters  
-
--- | /Optional Param/ "enum_form_string_array" - Form parameter enum test (string array)
-instance HasOptionalParam TestEnumParameters EnumFormStringArray where
-  applyOptionalParam req (EnumFormStringArray xs) =
-    req `_addForm` toFormColl CommaSeparated ("enum_form_string_array", xs)
-
--- | /Optional Param/ "enum_form_string" - Form parameter enum test (string)
-instance HasOptionalParam TestEnumParameters EnumFormString where
-  applyOptionalParam req (EnumFormString xs) =
-    req `_addForm` toForm ("enum_form_string", xs)
-
--- | /Optional Param/ "enum_header_string_array" - Header parameter enum test (string array)
-instance HasOptionalParam TestEnumParameters EnumHeaderStringArray where
-  applyOptionalParam req (EnumHeaderStringArray xs) =
-    req `setHeader` toHeaderColl CommaSeparated ("enum_header_string_array", xs)
-
--- | /Optional Param/ "enum_header_string" - Header parameter enum test (string)
-instance HasOptionalParam TestEnumParameters EnumHeaderString where
-  applyOptionalParam req (EnumHeaderString xs) =
-    req `setHeader` toHeader ("enum_header_string", xs)
-
--- | /Optional Param/ "enum_query_string_array" - Query parameter enum test (string array)
-instance HasOptionalParam TestEnumParameters EnumQueryStringArray where
-  applyOptionalParam req (EnumQueryStringArray xs) =
-    req `_setQuery` toQueryColl CommaSeparated ("enum_query_string_array", Just xs)
-
--- | /Optional Param/ "enum_query_string" - Query parameter enum test (string)
-instance HasOptionalParam TestEnumParameters EnumQueryString where
-  applyOptionalParam req (EnumQueryString xs) =
-    req `_setQuery` toQuery ("enum_query_string", Just xs)
-
--- | /Optional Param/ "enum_query_integer" - Query parameter enum test (double)
-instance HasOptionalParam TestEnumParameters EnumQueryInteger where
-  applyOptionalParam req (EnumQueryInteger xs) =
-    req `_setQuery` toQuery ("enum_query_integer", Just xs)
-
--- | /Optional Param/ "enum_query_double" - Query parameter enum test (double)
-instance HasOptionalParam TestEnumParameters EnumQueryDouble where
-  applyOptionalParam req (EnumQueryDouble xs) =
-    req `_addForm` toForm ("enum_query_double", xs)
-
--- | @*/*@
-instance Consumes TestEnumParameters MimeAny
+-- | @application/xml; charset=utf-8@
+instance Consumes TestEndpointParameters MimeXmlCharsetutf8
+-- | @application/json; charset=utf-8@
+instance Consumes TestEndpointParameters MimeJsonCharsetutf8
+
+-- | @application/xml; charset=utf-8@
+instance Produces TestEndpointParameters MimeXmlCharsetutf8
+-- | @application/json; charset=utf-8@
+instance Produces TestEndpointParameters MimeJsonCharsetutf8
+
+
+-- *** testEnumParameters
+
+-- | @GET \/fake@
+-- 
+-- To test enum parameters
+-- 
+-- To test enum parameters
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+testEnumParameters 
+  :: (Consumes TestEnumParameters contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> SwaggerPetstoreRequest TestEnumParameters contentType res
+testEnumParameters _ =
+  _mkRequest "GET" ["/fake"]
+
+data TestEnumParameters  
+
+-- | /Optional Param/ "enum_form_string_array" - Form parameter enum test (string array)
+instance HasOptionalParam TestEnumParameters EnumFormStringArray where
+  applyOptionalParam req (EnumFormStringArray xs) =
+    req `addForm` toFormColl CommaSeparated ("enum_form_string_array", xs)
+
+-- | /Optional Param/ "enum_form_string" - Form parameter enum test (string)
+instance HasOptionalParam TestEnumParameters EnumFormString where
+  applyOptionalParam req (EnumFormString xs) =
+    req `addForm` toForm ("enum_form_string", xs)
+
+-- | /Optional Param/ "enum_header_string_array" - Header parameter enum test (string array)
+instance HasOptionalParam TestEnumParameters EnumHeaderStringArray where
+  applyOptionalParam req (EnumHeaderStringArray xs) =
+    req `setHeader` toHeaderColl CommaSeparated ("enum_header_string_array", xs)
+
+-- | /Optional Param/ "enum_header_string" - Header parameter enum test (string)
+instance HasOptionalParam TestEnumParameters EnumHeaderString where
+  applyOptionalParam req (EnumHeaderString xs) =
+    req `setHeader` toHeader ("enum_header_string", xs)
+
+-- | /Optional Param/ "enum_query_string_array" - Query parameter enum test (string array)
+instance HasOptionalParam TestEnumParameters EnumQueryStringArray where
+  applyOptionalParam req (EnumQueryStringArray xs) =
+    req `setQuery` toQueryColl CommaSeparated ("enum_query_string_array", Just xs)
+
+-- | /Optional Param/ "enum_query_string" - Query parameter enum test (string)
+instance HasOptionalParam TestEnumParameters EnumQueryString where
+  applyOptionalParam req (EnumQueryString xs) =
+    req `setQuery` toQuery ("enum_query_string", Just xs)
 
--- | @*/*@
-instance Produces TestEnumParameters MimeAny
-
-
--- *** testJsonFormData
-
--- | @GET \/fake\/jsonFormData@
--- 
--- test json serialization of form data
--- 
--- 
--- 
-testJsonFormData 
-  :: (Consumes TestJsonFormData contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Text -- ^ "param" -  field1
-  -> Text -- ^ "param2" -  field2
-  -> SwaggerPetstoreRequest TestJsonFormData contentType NoContent
-testJsonFormData _ param param2 =
-  _mkRequest "GET" ["/fake/jsonFormData"]
-    `_addForm` toForm ("param", param)
-    `_addForm` toForm ("param2", param2)
-
-data TestJsonFormData  
-
--- | @application/json@
-instance Consumes TestJsonFormData MimeJSON
-
-
--- ** FakeClassnameTags123
-
--- *** testClassname
-
--- | @PATCH \/fake_classname_test@
--- 
--- To test class name in snake case
--- 
--- AuthMethod: api_key_query
--- 
-testClassname 
-  :: (Consumes TestClassname contentType, MimeRender contentType Client)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Client -- ^ "body" -  client model
-  -> SwaggerPetstoreRequest TestClassname contentType Client
-testClassname _ body =
-  _mkRequest "PATCH" ["/fake_classname_test"]
-    `setBodyParam` body
-
-data TestClassname 
-
--- | /Body Param/ "body" - client model
-instance HasBodyParam TestClassname Client 
-
--- | @application/json@
-instance Consumes TestClassname MimeJSON
-
--- | @application/json@
-instance Produces TestClassname MimeJSON
-
-
--- ** Pet
+-- | /Optional Param/ "enum_query_integer" - Query parameter enum test (double)
+instance HasOptionalParam TestEnumParameters EnumQueryInteger where
+  applyOptionalParam req (EnumQueryInteger xs) =
+    req `setQuery` toQuery ("enum_query_integer", Just xs)
+
+-- | /Optional Param/ "enum_query_double" - Query parameter enum test (double)
+instance HasOptionalParam TestEnumParameters EnumQueryDouble where
+  applyOptionalParam req (EnumQueryDouble xs) =
+    req `addForm` toForm ("enum_query_double", xs)
+
+-- | @*/*@
+instance Consumes TestEnumParameters MimeAny
+
+-- | @*/*@
+instance Produces TestEnumParameters MimeAny
+
+
+-- *** testJsonFormData
+
+-- | @GET \/fake\/jsonFormData@
+-- 
+-- test json serialization of form data
+-- 
+-- 
+-- 
+testJsonFormData 
+  :: (Consumes TestJsonFormData contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Param -- ^ "param" -  field1
+  -> Param2 -- ^ "param2" -  field2
+  -> SwaggerPetstoreRequest TestJsonFormData contentType NoContent
+testJsonFormData _ (Param param) (Param2 param2) =
+  _mkRequest "GET" ["/fake/jsonFormData"]
+    `addForm` toForm ("param", param)
+    `addForm` toForm ("param2", param2)
+
+data TestJsonFormData  
+
+-- | @application/json@
+instance Consumes TestJsonFormData MimeJSON
+
+
+-- ** FakeClassnameTags123
+
+-- *** testClassname
+
+-- | @PATCH \/fake_classname_test@
+-- 
+-- To test class name in snake case
+-- 
+-- AuthMethod: 'AuthApiKeyApiKeyQuery'
+-- 
+testClassname 
+  :: (Consumes TestClassname contentType, MimeRender contentType Client)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Client -- ^ "body" -  client model
+  -> SwaggerPetstoreRequest TestClassname contentType Client
+testClassname _ body =
+  _mkRequest "PATCH" ["/fake_classname_test"]
+    `setBodyParam` body
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthApiKeyApiKeyQuery)
 
--- *** addPet
+data TestClassname 
 
--- | @POST \/pet@
--- 
--- Add a new pet to the store
--- 
--- 
--- 
--- AuthMethod: petstore_auth
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-addPet 
-  :: (Consumes AddPet contentType, MimeRender contentType Pet)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Pet -- ^ "body" -  Pet object that needs to be added to the store
-  -> SwaggerPetstoreRequest AddPet contentType res
-addPet _ body =
-  _mkRequest "POST" ["/pet"]
-    `setBodyParam` body
-
-data AddPet 
-
--- | /Body Param/ "body" - Pet object that needs to be added to the store
-instance HasBodyParam AddPet Pet 
-
--- | @application/json@
-instance Consumes AddPet MimeJSON
--- | @application/xml@
-instance Consumes AddPet MimeXML
-
--- | @application/xml@
-instance Produces AddPet MimeXML
--- | @application/json@
-instance Produces AddPet MimeJSON
+-- | /Body Param/ "body" - client model
+instance HasBodyParam TestClassname Client 
+
+-- | @application/json@
+instance Consumes TestClassname MimeJSON
+
+-- | @application/json@
+instance Produces TestClassname MimeJSON
+
+
+-- ** Pet
+
+-- *** addPet
+
+-- | @POST \/pet@
+-- 
+-- Add a new pet to the store
+-- 
+-- 
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+addPet 
+  :: (Consumes AddPet contentType, MimeRender contentType Pet)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Pet -- ^ "body" -  Pet object that needs to be added to the store
+  -> SwaggerPetstoreRequest AddPet contentType res
+addPet _ body =
+  _mkRequest "POST" ["/pet"]
+    `setBodyParam` body
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
 
-
--- *** deletePet
-
--- | @DELETE \/pet\/{petId}@
--- 
--- Deletes a pet
--- 
--- 
--- 
--- AuthMethod: petstore_auth
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-deletePet 
-  :: Integer -- ^ "petId" -  Pet id to delete
-  -> SwaggerPetstoreRequest DeletePet MimeNoContent res
-deletePet petId =
-  _mkRequest "DELETE" ["/pet/",toPath petId]
-    
-
-data DeletePet  
-instance HasOptionalParam DeletePet ApiKey where
-  applyOptionalParam req (ApiKey xs) =
-    req `setHeader` toHeader ("api_key", xs)
--- | @application/xml@
-instance Produces DeletePet MimeXML
--- | @application/json@
-instance Produces DeletePet MimeJSON
-
-
--- *** findPetsByStatus
-
--- | @GET \/pet\/findByStatus@
--- 
--- Finds Pets by status
--- 
--- Multiple status values can be provided with comma separated strings
--- 
--- AuthMethod: petstore_auth
--- 
-findPetsByStatus 
-  :: [Text] -- ^ "status" -  Status values that need to be considered for filter
-  -> SwaggerPetstoreRequest FindPetsByStatus MimeNoContent [Pet]
-findPetsByStatus status =
-  _mkRequest "GET" ["/pet/findByStatus"]
-    `_setQuery` toQueryColl CommaSeparated ("status", Just status)
-
-data FindPetsByStatus  
--- | @application/xml@
-instance Produces FindPetsByStatus MimeXML
--- | @application/json@
-instance Produces FindPetsByStatus MimeJSON
-
-
--- *** findPetsByTags
-
--- | @GET \/pet\/findByTags@
--- 
--- Finds Pets by tags
--- 
--- Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
--- 
--- AuthMethod: petstore_auth
--- 
-findPetsByTags 
-  :: [Text] -- ^ "tags" -  Tags to filter by
-  -> SwaggerPetstoreRequest FindPetsByTags MimeNoContent [Pet]
-findPetsByTags tags =
-  _mkRequest "GET" ["/pet/findByTags"]
-    `_setQuery` toQueryColl CommaSeparated ("tags", Just tags)
+data AddPet 
+
+-- | /Body Param/ "body" - Pet object that needs to be added to the store
+instance HasBodyParam AddPet Pet 
+
+-- | @application/json@
+instance Consumes AddPet MimeJSON
+-- | @application/xml@
+instance Consumes AddPet MimeXML
+
+-- | @application/xml@
+instance Produces AddPet MimeXML
+-- | @application/json@
+instance Produces AddPet MimeJSON
+
+
+-- *** deletePet
+
+-- | @DELETE \/pet\/{petId}@
+-- 
+-- Deletes a pet
+-- 
+-- 
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+deletePet 
+  :: PetId -- ^ "petId" -  Pet id to delete
+  -> SwaggerPetstoreRequest DeletePet MimeNoContent res
+deletePet (PetId petId) =
+  _mkRequest "DELETE" ["/pet/",toPath petId]
+    
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
+
+data DeletePet  
+instance HasOptionalParam DeletePet ApiKey where
+  applyOptionalParam req (ApiKey xs) =
+    req `setHeader` toHeader ("api_key", xs)
+-- | @application/xml@
+instance Produces DeletePet MimeXML
+-- | @application/json@
+instance Produces DeletePet MimeJSON
+
+
+-- *** findPetsByStatus
+
+-- | @GET \/pet\/findByStatus@
+-- 
+-- Finds Pets by status
+-- 
+-- Multiple status values can be provided with comma separated strings
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+findPetsByStatus 
+  :: Status -- ^ "status" -  Status values that need to be considered for filter
+  -> SwaggerPetstoreRequest FindPetsByStatus MimeNoContent [Pet]
+findPetsByStatus (Status status) =
+  _mkRequest "GET" ["/pet/findByStatus"]
+    `setQuery` toQueryColl CommaSeparated ("status", Just status)
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
+
+data FindPetsByStatus  
+-- | @application/xml@
+instance Produces FindPetsByStatus MimeXML
+-- | @application/json@
+instance Produces FindPetsByStatus MimeJSON
+
 
-{-# DEPRECATED findPetsByTags "" #-}
+-- *** findPetsByTags
 
-data FindPetsByTags  
--- | @application/xml@
-instance Produces FindPetsByTags MimeXML
--- | @application/json@
-instance Produces FindPetsByTags MimeJSON
-
-
--- *** getPetById
-
--- | @GET \/pet\/{petId}@
--- 
--- Find pet by ID
--- 
--- Returns a single pet
--- 
--- AuthMethod: api_key
--- 
-getPetById 
-  :: Integer -- ^ "petId" -  ID of pet to return
-  -> SwaggerPetstoreRequest GetPetById MimeNoContent Pet
-getPetById petId =
-  _mkRequest "GET" ["/pet/",toPath petId]
-    
+-- | @GET \/pet\/findByTags@
+-- 
+-- Finds Pets by tags
+-- 
+-- Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+findPetsByTags 
+  :: Tags -- ^ "tags" -  Tags to filter by
+  -> SwaggerPetstoreRequest FindPetsByTags MimeNoContent [Pet]
+findPetsByTags (Tags tags) =
+  _mkRequest "GET" ["/pet/findByTags"]
+    `setQuery` toQueryColl CommaSeparated ("tags", Just tags)
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
+
+{-# DEPRECATED findPetsByTags "" #-}
+
+data FindPetsByTags  
+-- | @application/xml@
+instance Produces FindPetsByTags MimeXML
+-- | @application/json@
+instance Produces FindPetsByTags MimeJSON
 
-data GetPetById  
--- | @application/xml@
-instance Produces GetPetById MimeXML
--- | @application/json@
-instance Produces GetPetById MimeJSON
-
-
--- *** updatePet
-
--- | @PUT \/pet@
+
+-- *** getPetById
+
+-- | @GET \/pet\/{petId}@
+-- 
+-- Find pet by ID
+-- 
+-- Returns a single pet
+-- 
+-- AuthMethod: 'AuthApiKeyApiKey'
 -- 
--- Update an existing pet
--- 
--- 
--- 
--- AuthMethod: petstore_auth
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-updatePet 
-  :: (Consumes UpdatePet contentType, MimeRender contentType Pet)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Pet -- ^ "body" -  Pet object that needs to be added to the store
-  -> SwaggerPetstoreRequest UpdatePet contentType res
-updatePet _ body =
-  _mkRequest "PUT" ["/pet"]
-    `setBodyParam` body
+getPetById 
+  :: PetId -- ^ "petId" -  ID of pet to return
+  -> SwaggerPetstoreRequest GetPetById MimeNoContent Pet
+getPetById (PetId petId) =
+  _mkRequest "GET" ["/pet/",toPath petId]
+    
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthApiKeyApiKey)
+
+data GetPetById  
+-- | @application/xml@
+instance Produces GetPetById MimeXML
+-- | @application/json@
+instance Produces GetPetById MimeJSON
+
+
+-- *** updatePet
 
-data UpdatePet 
-
--- | /Body Param/ "body" - Pet object that needs to be added to the store
-instance HasBodyParam UpdatePet Pet 
-
--- | @application/json@
-instance Consumes UpdatePet MimeJSON
--- | @application/xml@
-instance Consumes UpdatePet MimeXML
-
--- | @application/xml@
-instance Produces UpdatePet MimeXML
--- | @application/json@
-instance Produces UpdatePet MimeJSON
-
-
--- *** updatePetWithForm
-
--- | @POST \/pet\/{petId}@
--- 
--- Updates a pet in the store with form data
--- 
--- 
--- 
--- AuthMethod: petstore_auth
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-updatePetWithForm 
-  :: (Consumes UpdatePetWithForm contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Integer -- ^ "petId" -  ID of pet that needs to be updated
-  -> SwaggerPetstoreRequest UpdatePetWithForm contentType res
-updatePetWithForm _ petId =
-  _mkRequest "POST" ["/pet/",toPath petId]
-    
-
-data UpdatePetWithForm  
-
--- | /Optional Param/ "name" - Updated name of the pet
-instance HasOptionalParam UpdatePetWithForm Name2 where
-  applyOptionalParam req (Name2 xs) =
-    req `_addForm` toForm ("name", xs)
-
--- | /Optional Param/ "status" - Updated status of the pet
-instance HasOptionalParam UpdatePetWithForm Status where
-  applyOptionalParam req (Status xs) =
-    req `_addForm` toForm ("status", xs)
-
--- | @application/x-www-form-urlencoded@
-instance Consumes UpdatePetWithForm MimeFormUrlEncoded
-
--- | @application/xml@
-instance Produces UpdatePetWithForm MimeXML
--- | @application/json@
-instance Produces UpdatePetWithForm MimeJSON
-
+-- | @PUT \/pet@
+-- 
+-- Update an existing pet
+-- 
+-- 
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+updatePet 
+  :: (Consumes UpdatePet contentType, MimeRender contentType Pet)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Pet -- ^ "body" -  Pet object that needs to be added to the store
+  -> SwaggerPetstoreRequest UpdatePet contentType res
+updatePet _ body =
+  _mkRequest "PUT" ["/pet"]
+    `setBodyParam` body
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
+
+data UpdatePet 
+
+-- | /Body Param/ "body" - Pet object that needs to be added to the store
+instance HasBodyParam UpdatePet Pet 
+
+-- | @application/json@
+instance Consumes UpdatePet MimeJSON
+-- | @application/xml@
+instance Consumes UpdatePet MimeXML
+
+-- | @application/xml@
+instance Produces UpdatePet MimeXML
+-- | @application/json@
+instance Produces UpdatePet MimeJSON
+
+
+-- *** updatePetWithForm
+
+-- | @POST \/pet\/{petId}@
+-- 
+-- Updates a pet in the store with form data
+-- 
+-- 
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+updatePetWithForm 
+  :: (Consumes UpdatePetWithForm contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> PetId -- ^ "petId" -  ID of pet that needs to be updated
+  -> SwaggerPetstoreRequest UpdatePetWithForm contentType res
+updatePetWithForm _ (PetId petId) =
+  _mkRequest "POST" ["/pet/",toPath petId]
+    
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
 
--- *** uploadFile
+data UpdatePetWithForm  
 
--- | @POST \/pet\/{petId}\/uploadImage@
--- 
--- uploads an image
--- 
--- 
--- 
--- AuthMethod: petstore_auth
--- 
-uploadFile 
-  :: (Consumes UploadFile contentType)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Integer -- ^ "petId" -  ID of pet to update
-  -> SwaggerPetstoreRequest UploadFile contentType ApiResponse
-uploadFile _ petId =
-  _mkRequest "POST" ["/pet/",toPath petId,"/uploadImage"]
-    
-
-data UploadFile  
+-- | /Optional Param/ "name" - Updated name of the pet
+instance HasOptionalParam UpdatePetWithForm Name2 where
+  applyOptionalParam req (Name2 xs) =
+    req `addForm` toForm ("name", xs)
+
+-- | /Optional Param/ "status" - Updated status of the pet
+instance HasOptionalParam UpdatePetWithForm StatusText where
+  applyOptionalParam req (StatusText xs) =
+    req `addForm` toForm ("status", xs)
+
+-- | @application/x-www-form-urlencoded@
+instance Consumes UpdatePetWithForm MimeFormUrlEncoded
+
+-- | @application/xml@
+instance Produces UpdatePetWithForm MimeXML
+-- | @application/json@
+instance Produces UpdatePetWithForm MimeJSON
+
 
--- | /Optional Param/ "additionalMetadata" - Additional data to pass to server
-instance HasOptionalParam UploadFile AdditionalMetadata where
-  applyOptionalParam req (AdditionalMetadata xs) =
-    req `_addMultiFormPart` NH.partLBS "additionalMetadata" (mimeRender' MimeMultipartFormData xs)
-
--- | /Optional Param/ "file" - file to upload
-instance HasOptionalParam UploadFile File where
-  applyOptionalParam req (File xs) =
-    req `_addMultiFormPart` NH.partFileSource "file" xs
-
--- | @multipart/form-data@
-instance Consumes UploadFile MimeMultipartFormData
-
--- | @application/json@
-instance Produces UploadFile MimeJSON
-
-
--- ** Store
-
--- *** deleteOrder
-
--- | @DELETE \/store\/order\/{order_id}@
--- 
--- Delete purchase order by ID
--- 
--- For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-deleteOrder 
-  :: Text -- ^ "orderId" -  ID of the order that needs to be deleted
-  -> SwaggerPetstoreRequest DeleteOrder MimeNoContent res
-deleteOrder orderId =
-  _mkRequest "DELETE" ["/store/order/",toPath orderId]
-    
-
-data DeleteOrder  
--- | @application/xml@
-instance Produces DeleteOrder MimeXML
--- | @application/json@
-instance Produces DeleteOrder MimeJSON
-
+-- *** uploadFile
+
+-- | @POST \/pet\/{petId}\/uploadImage@
+-- 
+-- uploads an image
+-- 
+-- 
+-- 
+-- AuthMethod: 'AuthOAuthPetstoreAuth'
+-- 
+uploadFile 
+  :: (Consumes UploadFile contentType)
+  => contentType -- ^ request content-type ('MimeType')
+  -> PetId -- ^ "petId" -  ID of pet to update
+  -> SwaggerPetstoreRequest UploadFile contentType ApiResponse
+uploadFile _ (PetId petId) =
+  _mkRequest "POST" ["/pet/",toPath petId,"/uploadImage"]
+    
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth)
+
+data UploadFile  
+
+-- | /Optional Param/ "additionalMetadata" - Additional data to pass to server
+instance HasOptionalParam UploadFile AdditionalMetadata where
+  applyOptionalParam req (AdditionalMetadata xs) =
+    req `_addMultiFormPart` NH.partLBS "additionalMetadata" (mimeRender' MimeMultipartFormData xs)
+
+-- | /Optional Param/ "file" - file to upload
+instance HasOptionalParam UploadFile File where
+  applyOptionalParam req (File xs) =
+    req `_addMultiFormPart` NH.partFileSource "file" xs
+
+-- | @multipart/form-data@
+instance Consumes UploadFile MimeMultipartFormData
+
+-- | @application/json@
+instance Produces UploadFile MimeJSON
+
+
+-- ** Store
+
+-- *** deleteOrder
 
--- *** getInventory
-
--- | @GET \/store\/inventory@
+-- | @DELETE \/store\/order\/{order_id}@
+-- 
+-- Delete purchase order by ID
 -- 
--- Returns pet inventories by status
+-- For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
 -- 
--- Returns a map of status codes to quantities
+-- Note: Has 'Produces' instances, but no response schema
 -- 
--- AuthMethod: api_key
--- 
-getInventory 
-  :: SwaggerPetstoreRequest GetInventory MimeNoContent ((Map.Map String Int))
-getInventory =
-  _mkRequest "GET" ["/store/inventory"]
+deleteOrder 
+  :: OrderIdText -- ^ "orderId" -  ID of the order that needs to be deleted
+  -> SwaggerPetstoreRequest DeleteOrder MimeNoContent res
+deleteOrder (OrderIdText orderId) =
+  _mkRequest "DELETE" ["/store/order/",toPath orderId]
+    
 
-data GetInventory  
--- | @application/json@
-instance Produces GetInventory MimeJSON
-
-
--- *** getOrderById
+data DeleteOrder  
+-- | @application/xml@
+instance Produces DeleteOrder MimeXML
+-- | @application/json@
+instance Produces DeleteOrder MimeJSON
+
 
--- | @GET \/store\/order\/{order_id}@
--- 
--- Find purchase order by ID
+-- *** getInventory
+
+-- | @GET \/store\/inventory@
 -- 
--- For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+-- Returns pet inventories by status
 -- 
-getOrderById 
-  :: Integer -- ^ "orderId" -  ID of pet that needs to be fetched
-  -> SwaggerPetstoreRequest GetOrderById MimeNoContent Order
-getOrderById orderId =
-  _mkRequest "GET" ["/store/order/",toPath orderId]
-    
-
-data GetOrderById  
--- | @application/xml@
-instance Produces GetOrderById MimeXML
--- | @application/json@
-instance Produces GetOrderById MimeJSON
-
+-- Returns a map of status codes to quantities
+-- 
+-- AuthMethod: 'AuthApiKeyApiKey'
+-- 
+getInventory 
+  :: SwaggerPetstoreRequest GetInventory MimeNoContent ((Map.Map String Int))
+getInventory =
+  _mkRequest "GET" ["/store/inventory"]
+    `_hasAuthType` (P.Proxy :: P.Proxy AuthApiKeyApiKey)
+
+data GetInventory  
+-- | @application/json@
+instance Produces GetInventory MimeJSON
 
--- *** placeOrder
-
--- | @POST \/store\/order@
--- 
--- Place an order for a pet
--- 
+
+-- *** getOrderById
+
+-- | @GET \/store\/order\/{order_id}@
+-- 
+-- Find purchase order by ID
 -- 
--- 
-placeOrder 
-  :: (Consumes PlaceOrder contentType, MimeRender contentType Order)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Order -- ^ "body" -  order placed for purchasing the pet
-  -> SwaggerPetstoreRequest PlaceOrder contentType Order
-placeOrder _ body =
-  _mkRequest "POST" ["/store/order"]
-    `setBodyParam` body
-
-data PlaceOrder 
-
--- | /Body Param/ "body" - order placed for purchasing the pet
-instance HasBodyParam PlaceOrder Order 
--- | @application/xml@
-instance Produces PlaceOrder MimeXML
--- | @application/json@
-instance Produces PlaceOrder MimeJSON
-
-
--- ** User
-
--- *** createUser
-
--- | @POST \/user@
--- 
--- Create user
--- 
--- This can only be done by the logged in user.
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-createUser 
-  :: (Consumes CreateUser contentType, MimeRender contentType User)
-  => contentType -- ^ request content-type ('MimeType')
-  -> User -- ^ "body" -  Created user object
-  -> SwaggerPetstoreRequest CreateUser contentType res
-createUser _ body =
-  _mkRequest "POST" ["/user"]
-    `setBodyParam` body
-
-data CreateUser 
+-- For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+-- 
+getOrderById 
+  :: OrderId -- ^ "orderId" -  ID of pet that needs to be fetched
+  -> SwaggerPetstoreRequest GetOrderById MimeNoContent Order
+getOrderById (OrderId orderId) =
+  _mkRequest "GET" ["/store/order/",toPath orderId]
+    
+
+data GetOrderById  
+-- | @application/xml@
+instance Produces GetOrderById MimeXML
+-- | @application/json@
+instance Produces GetOrderById MimeJSON
+
+
+-- *** placeOrder
+
+-- | @POST \/store\/order@
+-- 
+-- Place an order for a pet
+-- 
+-- 
+-- 
+placeOrder 
+  :: (Consumes PlaceOrder contentType, MimeRender contentType Order)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Order -- ^ "body" -  order placed for purchasing the pet
+  -> SwaggerPetstoreRequest PlaceOrder contentType Order
+placeOrder _ body =
+  _mkRequest "POST" ["/store/order"]
+    `setBodyParam` body
+
+data PlaceOrder 
+
+-- | /Body Param/ "body" - order placed for purchasing the pet
+instance HasBodyParam PlaceOrder Order 
+-- | @application/xml@
+instance Produces PlaceOrder MimeXML
+-- | @application/json@
+instance Produces PlaceOrder MimeJSON
+
 
--- | /Body Param/ "body" - Created user object
-instance HasBodyParam CreateUser User 
--- | @application/xml@
-instance Produces CreateUser MimeXML
--- | @application/json@
-instance Produces CreateUser MimeJSON
-
-
--- *** createUsersWithArrayInput
-
--- | @POST \/user\/createWithArray@
+-- ** User
+
+-- *** createUser
+
+-- | @POST \/user@
+-- 
+-- Create user
+-- 
+-- This can only be done by the logged in user.
+-- 
+-- Note: Has 'Produces' instances, but no response schema
 -- 
--- Creates list of users with given input array
--- 
--- 
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-createUsersWithArrayInput 
-  :: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType [User])
-  => contentType -- ^ request content-type ('MimeType')
-  -> [User] -- ^ "body" -  List of user object
-  -> SwaggerPetstoreRequest CreateUsersWithArrayInput contentType res
-createUsersWithArrayInput _ body =
-  _mkRequest "POST" ["/user/createWithArray"]
-    `setBodyParam` body
-
-data CreateUsersWithArrayInput 
-
--- | /Body Param/ "body" - List of user object
-instance HasBodyParam CreateUsersWithArrayInput [User] 
--- | @application/xml@
-instance Produces CreateUsersWithArrayInput MimeXML
--- | @application/json@
-instance Produces CreateUsersWithArrayInput MimeJSON
-
-
--- *** createUsersWithListInput
-
--- | @POST \/user\/createWithList@
+createUser 
+  :: (Consumes CreateUser contentType, MimeRender contentType User)
+  => contentType -- ^ request content-type ('MimeType')
+  -> User -- ^ "body" -  Created user object
+  -> SwaggerPetstoreRequest CreateUser contentType res
+createUser _ body =
+  _mkRequest "POST" ["/user"]
+    `setBodyParam` body
+
+data CreateUser 
+
+-- | /Body Param/ "body" - Created user object
+instance HasBodyParam CreateUser User 
+-- | @application/xml@
+instance Produces CreateUser MimeXML
+-- | @application/json@
+instance Produces CreateUser MimeJSON
+
+
+-- *** createUsersWithArrayInput
+
+-- | @POST \/user\/createWithArray@
+-- 
+-- Creates list of users with given input array
+-- 
+-- 
+-- 
+-- Note: Has 'Produces' instances, but no response schema
 -- 
--- Creates list of users with given input array
--- 
--- 
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-createUsersWithListInput 
-  :: (Consumes CreateUsersWithListInput contentType, MimeRender contentType [User])
-  => contentType -- ^ request content-type ('MimeType')
-  -> [User] -- ^ "body" -  List of user object
-  -> SwaggerPetstoreRequest CreateUsersWithListInput contentType res
-createUsersWithListInput _ body =
-  _mkRequest "POST" ["/user/createWithList"]
-    `setBodyParam` body
-
-data CreateUsersWithListInput 
-
--- | /Body Param/ "body" - List of user object
-instance HasBodyParam CreateUsersWithListInput [User] 
--- | @application/xml@
-instance Produces CreateUsersWithListInput MimeXML
--- | @application/json@
-instance Produces CreateUsersWithListInput MimeJSON
-
-
--- *** deleteUser
-
--- | @DELETE \/user\/{username}@
+createUsersWithArrayInput 
+  :: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType Body)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Body -- ^ "body" -  List of user object
+  -> SwaggerPetstoreRequest CreateUsersWithArrayInput contentType res
+createUsersWithArrayInput _ body =
+  _mkRequest "POST" ["/user/createWithArray"]
+    `setBodyParam` body
+
+data CreateUsersWithArrayInput 
+
+-- | /Body Param/ "body" - List of user object
+instance HasBodyParam CreateUsersWithArrayInput Body 
+-- | @application/xml@
+instance Produces CreateUsersWithArrayInput MimeXML
+-- | @application/json@
+instance Produces CreateUsersWithArrayInput MimeJSON
+
+
+-- *** createUsersWithListInput
+
+-- | @POST \/user\/createWithList@
+-- 
+-- Creates list of users with given input array
+-- 
+-- 
+-- 
+-- Note: Has 'Produces' instances, but no response schema
 -- 
--- Delete user
--- 
--- This can only be done by the logged in user.
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-deleteUser 
-  :: Text -- ^ "username" -  The name that needs to be deleted
-  -> SwaggerPetstoreRequest DeleteUser MimeNoContent res
-deleteUser username =
-  _mkRequest "DELETE" ["/user/",toPath username]
-    
-
-data DeleteUser  
--- | @application/xml@
-instance Produces DeleteUser MimeXML
--- | @application/json@
-instance Produces DeleteUser MimeJSON
+createUsersWithListInput 
+  :: (Consumes CreateUsersWithListInput contentType, MimeRender contentType Body)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Body -- ^ "body" -  List of user object
+  -> SwaggerPetstoreRequest CreateUsersWithListInput contentType res
+createUsersWithListInput _ body =
+  _mkRequest "POST" ["/user/createWithList"]
+    `setBodyParam` body
+
+data CreateUsersWithListInput 
+
+-- | /Body Param/ "body" - List of user object
+instance HasBodyParam CreateUsersWithListInput Body 
+-- | @application/xml@
+instance Produces CreateUsersWithListInput MimeXML
+-- | @application/json@
+instance Produces CreateUsersWithListInput MimeJSON
+
 
-
--- *** getUserByName
-
--- | @GET \/user\/{username}@
--- 
--- Get user by user name
--- 
+-- *** deleteUser
+
+-- | @DELETE \/user\/{username}@
+-- 
+-- Delete user
+-- 
+-- This can only be done by the logged in user.
 -- 
--- 
-getUserByName 
-  :: Text -- ^ "username" -  The name that needs to be fetched. Use user1 for testing. 
-  -> SwaggerPetstoreRequest GetUserByName MimeNoContent User
-getUserByName username =
-  _mkRequest "GET" ["/user/",toPath username]
-    
-
-data GetUserByName  
--- | @application/xml@
-instance Produces GetUserByName MimeXML
--- | @application/json@
-instance Produces GetUserByName MimeJSON
-
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+deleteUser 
+  :: Username -- ^ "username" -  The name that needs to be deleted
+  -> SwaggerPetstoreRequest DeleteUser MimeNoContent res
+deleteUser (Username username) =
+  _mkRequest "DELETE" ["/user/",toPath username]
+    
+
+data DeleteUser  
+-- | @application/xml@
+instance Produces DeleteUser MimeXML
+-- | @application/json@
+instance Produces DeleteUser MimeJSON
 
--- *** loginUser
-
--- | @GET \/user\/login@
--- 
--- Logs user into the system
--- 
+
+-- *** getUserByName
+
+-- | @GET \/user\/{username}@
+-- 
+-- Get user by user name
 -- 
 -- 
-loginUser 
-  :: Text -- ^ "username" -  The user name for login
-  -> Text -- ^ "password" -  The password for login in clear text
-  -> SwaggerPetstoreRequest LoginUser MimeNoContent Text
-loginUser username password =
-  _mkRequest "GET" ["/user/login"]
-    `_setQuery` toQuery ("username", Just username)
-    `_setQuery` toQuery ("password", Just password)
-
-data LoginUser  
--- | @application/xml@
-instance Produces LoginUser MimeXML
--- | @application/json@
-instance Produces LoginUser MimeJSON
+-- 
+getUserByName 
+  :: Username -- ^ "username" -  The name that needs to be fetched. Use user1 for testing. 
+  -> SwaggerPetstoreRequest GetUserByName MimeNoContent User
+getUserByName (Username username) =
+  _mkRequest "GET" ["/user/",toPath username]
+    
+
+data GetUserByName  
+-- | @application/xml@
+instance Produces GetUserByName MimeXML
+-- | @application/json@
+instance Produces GetUserByName MimeJSON
+
 
-
--- *** logoutUser
-
--- | @GET \/user\/logout@
--- 
--- Logs out current logged in user session
+-- *** loginUser
+
+-- | @GET \/user\/login@
+-- 
+-- Logs user into the system
+-- 
 -- 
 -- 
--- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-logoutUser 
-  :: SwaggerPetstoreRequest LogoutUser MimeNoContent res
-logoutUser =
-  _mkRequest "GET" ["/user/logout"]
-
-data LogoutUser  
--- | @application/xml@
-instance Produces LogoutUser MimeXML
--- | @application/json@
-instance Produces LogoutUser MimeJSON
-
+loginUser 
+  :: Username -- ^ "username" -  The user name for login
+  -> Password -- ^ "password" -  The password for login in clear text
+  -> SwaggerPetstoreRequest LoginUser MimeNoContent Text
+loginUser (Username username) (Password password) =
+  _mkRequest "GET" ["/user/login"]
+    `setQuery` toQuery ("username", Just username)
+    `setQuery` toQuery ("password", Just password)
+
+data LoginUser  
+-- | @application/xml@
+instance Produces LoginUser MimeXML
+-- | @application/json@
+instance Produces LoginUser MimeJSON
 
--- *** updateUser
-
--- | @PUT \/user\/{username}@
--- 
--- Updated user
--- 
--- This can only be done by the logged in user.
+
+-- *** logoutUser
+
+-- | @GET \/user\/logout@
+-- 
+-- Logs out current logged in user session
+-- 
 -- 
--- Note: Has 'Produces' instances, but no response schema
--- 
-updateUser 
-  :: (Consumes UpdateUser contentType, MimeRender contentType User)
-  => contentType -- ^ request content-type ('MimeType')
-  -> Text -- ^ "username" -  name that need to be deleted
-  -> User -- ^ "body" -  Updated user object
-  -> SwaggerPetstoreRequest UpdateUser contentType res
-updateUser _ username body =
-  _mkRequest "PUT" ["/user/",toPath username]
-    
-    `setBodyParam` body
-
-data UpdateUser 
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+logoutUser 
+  :: SwaggerPetstoreRequest LogoutUser MimeNoContent res
+logoutUser =
+  _mkRequest "GET" ["/user/logout"]
+
+data LogoutUser  
+-- | @application/xml@
+instance Produces LogoutUser MimeXML
+-- | @application/json@
+instance Produces LogoutUser MimeJSON
+
 
--- | /Body Param/ "body" - Updated user object
-instance HasBodyParam UpdateUser User 
--- | @application/xml@
-instance Produces UpdateUser MimeXML
--- | @application/json@
-instance Produces UpdateUser MimeJSON
-
-
-
--- * HasBodyParam
-
--- | Designates the body parameter of a request
-class HasBodyParam req param where
-  setBodyParam :: forall contentType res. (Consumes req contentType, MimeRender contentType param) => SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res
-  setBodyParam req xs =
-    req `_setBodyLBS` mimeRender (P.Proxy :: P.Proxy contentType) xs & _setContentTypeHeader
-
--- * HasOptionalParam
-
--- | Designates the optional parameters of a request
-class HasOptionalParam req param where
-  {-# MINIMAL applyOptionalParam | (-&-) #-}
+-- *** updateUser
+
+-- | @PUT \/user\/{username}@
+-- 
+-- Updated user
+-- 
+-- This can only be done by the logged in user.
+-- 
+-- Note: Has 'Produces' instances, but no response schema
+-- 
+updateUser 
+  :: (Consumes UpdateUser contentType, MimeRender contentType User)
+  => contentType -- ^ request content-type ('MimeType')
+  -> Username -- ^ "username" -  name that need to be deleted
+  -> User -- ^ "body" -  Updated user object
+  -> SwaggerPetstoreRequest UpdateUser contentType res
+updateUser _ (Username username) body =
+  _mkRequest "PUT" ["/user/",toPath username]
+    
+    `setBodyParam` body
+
+data UpdateUser 
 
-  -- | Apply an optional parameter to a request
-  applyOptionalParam :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res
-  applyOptionalParam = (-&-)
-  {-# INLINE applyOptionalParam #-}
-
-  -- | infix operator \/ alias for 'addOptionalParam'
-  (-&-) :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res
-  (-&-) = applyOptionalParam
-  {-# INLINE (-&-) #-}
-
-infixl 2 -&-
- 
--- * Optional Request Parameter Types
-
-
-newtype BodyOuterBoolean = BodyOuterBoolean { unBodyOuterBoolean :: OuterBoolean } deriving (P.Eq, P.Show)
+-- | /Body Param/ "body" - Updated user object
+instance HasBodyParam UpdateUser User 
+-- | @application/xml@
+instance Produces UpdateUser MimeXML
+-- | @application/json@
+instance Produces UpdateUser MimeJSON
+
+
+
+-- * HasBodyParam
+
+-- | Designates the body parameter of a request
+class HasBodyParam req param where
+  setBodyParam :: forall contentType res. (Consumes req contentType, MimeRender contentType param) => SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res
+  setBodyParam req xs =
+    req `_setBodyLBS` mimeRender (P.Proxy :: P.Proxy contentType) xs & _setContentTypeHeader
 
-newtype BodyOuterComposite = BodyOuterComposite { unBodyOuterComposite :: OuterComposite } deriving (P.Eq, P.Show)
+-- * HasOptionalParam
 
-newtype Body = Body { unBody :: OuterNumber } deriving (P.Eq, P.Show)
-
-newtype BodyOuterString = BodyOuterString { unBodyOuterString :: OuterString } deriving (P.Eq, P.Show)
+-- | Designates the optional parameters of a request
+class HasOptionalParam req param where
+  {-# MINIMAL applyOptionalParam | (-&-) #-}
 
-newtype ParamInteger = ParamInteger { unParamInteger :: Int } deriving (P.Eq, P.Show)
-
-newtype Int32 = Int32 { unInt32 :: Int } deriving (P.Eq, P.Show)
-
-newtype Int64 = Int64 { unInt64 :: Integer } deriving (P.Eq, P.Show)
-
-newtype ParamFloat = ParamFloat { unParamFloat :: Float } deriving (P.Eq, P.Show)
-
-newtype ParamString = ParamString { unParamString :: Text } deriving (P.Eq, P.Show)
+  -- | Apply an optional parameter to a request
+  applyOptionalParam :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res
+  applyOptionalParam = (-&-)
+  {-# INLINE applyOptionalParam #-}
+
+  -- | infix operator \/ alias for 'addOptionalParam'
+  (-&-) :: SwaggerPetstoreRequest req contentType res -> param -> SwaggerPetstoreRequest req contentType res
+  (-&-) = applyOptionalParam
+  {-# INLINE (-&-) #-}
 
-newtype ParamBinary = ParamBinary { unParamBinary :: Binary } deriving (P.Eq, P.Show)
-
-newtype ParamDate = ParamDate { unParamDate :: Date } deriving (P.Eq, P.Show)
+infixl 2 -&-
+ 
+-- * Request Parameter Types
 
-newtype ParamDateTime = ParamDateTime { unParamDateTime :: DateTime } deriving (P.Eq, P.Show)
-
-newtype Password = Password { unPassword :: Text } deriving (P.Eq, P.Show)
-
-newtype Callback = Callback { unCallback :: Text } deriving (P.Eq, P.Show)
-
-newtype EnumFormStringArray = EnumFormStringArray { unEnumFormStringArray :: [Text] } deriving (P.Eq, P.Show)
-
-newtype EnumFormString = EnumFormString { unEnumFormString :: Text } deriving (P.Eq, P.Show)
-
-newtype EnumHeaderStringArray = EnumHeaderStringArray { unEnumHeaderStringArray :: [Text] } deriving (P.Eq, P.Show)
-
-newtype EnumHeaderString = EnumHeaderString { unEnumHeaderString :: Text } deriving (P.Eq, P.Show)
-
-newtype EnumQueryStringArray = EnumQueryStringArray { unEnumQueryStringArray :: [Text] } deriving (P.Eq, P.Show)
-
-newtype EnumQueryString = EnumQueryString { unEnumQueryString :: Text } deriving (P.Eq, P.Show)
-
-newtype EnumQueryInteger = EnumQueryInteger { unEnumQueryInteger :: Int } deriving (P.Eq, P.Show)
-
-newtype EnumQueryDouble = EnumQueryDouble { unEnumQueryDouble :: Double } deriving (P.Eq, P.Show)
-
-newtype ApiKey = ApiKey { unApiKey :: Text } deriving (P.Eq, P.Show)
-
-newtype Name2 = Name2 { unName2 :: Text } deriving (P.Eq, P.Show)
-
-newtype Status = Status { unStatus :: Text } deriving (P.Eq, P.Show)
-
-newtype AdditionalMetadata = AdditionalMetadata { unAdditionalMetadata :: Text } deriving (P.Eq, P.Show)
-
-newtype File = File { unFile :: FilePath } deriving (P.Eq, P.Show)
-
-
--- * SwaggerPetstoreRequest
-
--- | Represents a request. The "req" type variable is the request type. The "res" type variable is the response type.
-data SwaggerPetstoreRequest req contentType res = SwaggerPetstoreRequest
-  { rMethod  :: NH.Method   -- ^ Method of SwaggerPetstoreRequest
-  , rUrlPath :: [BCL.ByteString] -- ^ Endpoint of SwaggerPetstoreRequest
-  , rParams   :: Params -- ^ params of SwaggerPetstoreRequest
-  }
-  deriving (P.Show)
-
--- | 'rMethod' Lens
-rMethodL :: Lens_' (SwaggerPetstoreRequest req contentType res) NH.Method
-rMethodL f SwaggerPetstoreRequest{..} = (\rMethod -> SwaggerPetstoreRequest { rMethod, ..} ) <$> f rMethod
-{-# INLINE rMethodL #-}
-
--- | 'rUrlPath' Lens
-rUrlPathL :: Lens_' (SwaggerPetstoreRequest req contentType res) [BCL.ByteString]
-rUrlPathL f SwaggerPetstoreRequest{..} = (\rUrlPath -> SwaggerPetstoreRequest { rUrlPath, ..} ) <$> f rUrlPath
-{-# INLINE rUrlPathL #-}
-
--- | 'rParams' Lens
-rParamsL :: Lens_' (SwaggerPetstoreRequest req contentType res) Params
-rParamsL f SwaggerPetstoreRequest{..} = (\rParams -> SwaggerPetstoreRequest { rParams, ..} ) <$> f rParams
-{-# INLINE rParamsL #-}
-
--- | Request Params
-data Params = Params
-  { paramsQuery :: NH.Query
-  , paramsHeaders :: NH.RequestHeaders
-  , paramsBody :: ParamBody
-  }
-  deriving (P.Show)
-
--- | 'paramsQuery' Lens
-paramsQueryL :: Lens_' Params NH.Query
-paramsQueryL f Params{..} = (\paramsQuery -> Params { paramsQuery, ..} ) <$> f paramsQuery
-{-# INLINE paramsQueryL #-}
-
--- | 'paramsHeaders' Lens
-paramsHeadersL :: Lens_' Params NH.RequestHeaders
-paramsHeadersL f Params{..} = (\paramsHeaders -> Params { paramsHeaders, ..} ) <$> f paramsHeaders
-{-# INLINE paramsHeadersL #-}
-
--- | 'paramsBody' Lens
-paramsBodyL :: Lens_' Params ParamBody
-paramsBodyL f Params{..} = (\paramsBody -> Params { paramsBody, ..} ) <$> f paramsBody
-{-# INLINE paramsBodyL #-}
-
--- | Request Body
-data ParamBody
-  = ParamBodyNone
-  | ParamBodyB B.ByteString
-  | ParamBodyBL BL.ByteString
-  | ParamBodyFormUrlEncoded WH.Form
-  | ParamBodyMultipartFormData [NH.Part]
-  deriving (P.Show)
-
--- ** SwaggerPetstoreRequest Utils
-
-_mkRequest :: NH.Method -- ^ Method 
-          -> [BCL.ByteString] -- ^ Endpoint
-          -> SwaggerPetstoreRequest req contentType res -- ^ req: Request Type, res: Response Type
-_mkRequest m u = SwaggerPetstoreRequest m u _mkParams
-
-_mkParams :: Params
-_mkParams = Params [] [] ParamBodyNone
-
-setHeader :: SwaggerPetstoreRequest req contentType res -> [NH.Header] -> SwaggerPetstoreRequest req contentType res
-setHeader req header =
-  req `removeHeader` P.fmap P.fst header &
-  L.over (rParamsL . paramsHeadersL) (header P.++)
-
-removeHeader :: SwaggerPetstoreRequest req contentType res -> [NH.HeaderName] -> SwaggerPetstoreRequest req contentType res
-removeHeader req header =
-  req &
-  L.over
-    (rParamsL . paramsHeadersL)
-    (P.filter (\h -> cifst h `P.notElem` P.fmap CI.mk header))
-  where
-    cifst = CI.mk . P.fst
-
-
-_setContentTypeHeader :: forall req contentType res. MimeType contentType => SwaggerPetstoreRequest req contentType res -> SwaggerPetstoreRequest req contentType res
-_setContentTypeHeader req =
-    case mimeType (P.Proxy :: P.Proxy contentType) of 
-        Just m -> req `setHeader` [("content-type", BC.pack $ P.show m)]
-        Nothing -> req `removeHeader` ["content-type"]
-
-_setAcceptHeader :: forall req contentType res accept. MimeType accept => SwaggerPetstoreRequest req contentType res -> accept -> SwaggerPetstoreRequest req contentType res
-_setAcceptHeader req accept =
-    case mimeType' accept of 
-        Just m -> req `setHeader` [("accept", BC.pack $ P.show m)]
-        Nothing -> req `removeHeader` ["accept"]
+-- | ApiKey
+newtype ApiKey = ApiKey { unApiKey :: Text } deriving (P.Eq, P.Show)
+-- | StatusText
+newtype StatusText = StatusText { unStatusText :: Text } deriving (P.Eq, P.Show)
+-- | ParamString
+newtype ParamString = ParamString { unParamString :: Text } deriving (P.Eq, P.Show)
+-- | ParamInteger
+newtype ParamInteger = ParamInteger { unParamInteger :: Int } deriving (P.Eq, P.Show)
+-- | EnumQueryDouble
+newtype EnumQueryDouble = EnumQueryDouble { unEnumQueryDouble :: Double } deriving (P.Eq, P.Show)
+-- | Number
+newtype Number = Number { unNumber :: Double } deriving (P.Eq, P.Show)
+-- | Int32
+newtype Int32 = Int32 { unInt32 :: Int } deriving (P.Eq, P.Show)
+-- | ParamDate
+newtype ParamDate = ParamDate { unParamDate :: Date } deriving (P.Eq, P.Show)
+-- | EnumFormString
+newtype EnumFormString = EnumFormString { unEnumFormString :: Text } deriving (P.Eq, P.Show)
+-- | Body
+newtype Body = Body { unBody :: [User] } deriving (P.Eq, P.Show, A.ToJSON)
+-- | Tags
+newtype Tags = Tags { unTags :: [Text] } deriving (P.Eq, P.Show)
+-- | EnumQueryInteger
+newtype EnumQueryInteger = EnumQueryInteger { unEnumQueryInteger :: Int } deriving (P.Eq, P.Show)
+-- | ParamFloat
+newtype ParamFloat = ParamFloat { unParamFloat :: Float } deriving (P.Eq, P.Show)
+-- | Name2
+newtype Name2 = Name2 { unName2 :: Text } deriving (P.Eq, P.Show)
+-- | Password
+newtype Password = Password { unPassword :: Text } deriving (P.Eq, P.Show)
+-- | Status
+newtype Status = Status { unStatus :: [Text] } deriving (P.Eq, P.Show)
+-- | ParamDouble
+newtype ParamDouble = ParamDouble { unParamDouble :: Double } deriving (P.Eq, P.Show)
+-- | EnumHeaderString
+newtype EnumHeaderString = EnumHeaderString { unEnumHeaderString :: Text } deriving (P.Eq, P.Show)
+-- | Param2
+newtype Param2 = Param2 { unParam2 :: Text } deriving (P.Eq, P.Show)
+-- | PetId
+newtype PetId = PetId { unPetId :: Integer } deriving (P.Eq, P.Show)
+-- | OrderId
+newtype OrderId = OrderId { unOrderId :: Integer } deriving (P.Eq, P.Show)
+-- | OrderIdText
+newtype OrderIdText = OrderIdText { unOrderIdText :: Text } deriving (P.Eq, P.Show)
+-- | EnumQueryString
+newtype EnumQueryString = EnumQueryString { unEnumQueryString :: Text } deriving (P.Eq, P.Show)
+-- | ParamDateTime
+newtype ParamDateTime = ParamDateTime { unParamDateTime :: DateTime } deriving (P.Eq, P.Show)
+-- | EnumQueryStringArray
+newtype EnumQueryStringArray = EnumQueryStringArray { unEnumQueryStringArray :: [Text] } deriving (P.Eq, P.Show)
+-- | PatternWithoutDelimiter
+newtype PatternWithoutDelimiter = PatternWithoutDelimiter { unPatternWithoutDelimiter :: Text } deriving (P.Eq, P.Show)
+-- | Callback
+newtype Callback = Callback { unCallback :: Text } deriving (P.Eq, P.Show)
+-- | Username
+newtype Username = Username { unUsername :: Text } deriving (P.Eq, P.Show)
+-- | Int64
+newtype Int64 = Int64 { unInt64 :: Integer } deriving (P.Eq, P.Show)
+-- | AdditionalMetadata
+newtype AdditionalMetadata = AdditionalMetadata { unAdditionalMetadata :: Text } deriving (P.Eq, P.Show)
+-- | Byte
+newtype Byte = Byte { unByte :: ByteArray } deriving (P.Eq, P.Show)
+-- | ParamBinary
+newtype ParamBinary = ParamBinary { unParamBinary :: Binary } deriving (P.Eq, P.Show)
+-- | EnumFormStringArray
+newtype EnumFormStringArray = EnumFormStringArray { unEnumFormStringArray :: [Text] } deriving (P.Eq, P.Show)
+-- | EnumHeaderStringArray
+newtype EnumHeaderStringArray = EnumHeaderStringArray { unEnumHeaderStringArray :: [Text] } deriving (P.Eq, P.Show)
+-- | Param
+newtype Param = Param { unParam :: Text } deriving (P.Eq, P.Show)
+-- | File
+newtype File = File { unFile :: FilePath } deriving (P.Eq, P.Show)
+
+-- * SwaggerPetstoreRequest
+
+-- | Represents a request. The "req" type variable is the request type. The "res" type variable is the response type.
+data SwaggerPetstoreRequest req contentType res = SwaggerPetstoreRequest
+  { rMethod  :: NH.Method   -- ^ Method of SwaggerPetstoreRequest
+  , rUrlPath :: [BCL.ByteString] -- ^ Endpoint of SwaggerPetstoreRequest
+  , rParams   :: Params -- ^ params of SwaggerPetstoreRequest
+  , rAuthTypes :: [P.TypeRep] -- ^ types of auth methods
+  }
+  deriving (P.Show)
+
+-- | 'rMethod' Lens
+rMethodL :: Lens_' (SwaggerPetstoreRequest req contentType res) NH.Method
+rMethodL f SwaggerPetstoreRequest{..} = (\rMethod -> SwaggerPetstoreRequest { rMethod, ..} ) <$> f rMethod
+{-# INLINE rMethodL #-}
+
+-- | 'rUrlPath' Lens
+rUrlPathL :: Lens_' (SwaggerPetstoreRequest req contentType res) [BCL.ByteString]
+rUrlPathL f SwaggerPetstoreRequest{..} = (\rUrlPath -> SwaggerPetstoreRequest { rUrlPath, ..} ) <$> f rUrlPath
+{-# INLINE rUrlPathL #-}
+
+-- | 'rParams' Lens
+rParamsL :: Lens_' (SwaggerPetstoreRequest req contentType res) Params
+rParamsL f SwaggerPetstoreRequest{..} = (\rParams -> SwaggerPetstoreRequest { rParams, ..} ) <$> f rParams
+{-# INLINE rParamsL #-}
+
+-- | 'rParams' Lens
+rAuthTypesL :: Lens_' (SwaggerPetstoreRequest req contentType res) [P.TypeRep]
+rAuthTypesL f SwaggerPetstoreRequest{..} = (\rAuthTypes -> SwaggerPetstoreRequest { rAuthTypes, ..} ) <$> f rAuthTypes
+{-# INLINE rAuthTypesL #-}
+
+-- | Request Params
+data Params = Params
+  { paramsQuery :: NH.Query
+  , paramsHeaders :: NH.RequestHeaders
+  , paramsBody :: ParamBody
+  }
+  deriving (P.Show)
+
+-- | 'paramsQuery' Lens
+paramsQueryL :: Lens_' Params NH.Query
+paramsQueryL f Params{..} = (\paramsQuery -> Params { paramsQuery, ..} ) <$> f paramsQuery
+{-# INLINE paramsQueryL #-}
+
+-- | 'paramsHeaders' Lens
+paramsHeadersL :: Lens_' Params NH.RequestHeaders
+paramsHeadersL f Params{..} = (\paramsHeaders -> Params { paramsHeaders, ..} ) <$> f paramsHeaders
+{-# INLINE paramsHeadersL #-}
+
+-- | 'paramsBody' Lens
+paramsBodyL :: Lens_' Params ParamBody
+paramsBodyL f Params{..} = (\paramsBody -> Params { paramsBody, ..} ) <$> f paramsBody
+{-# INLINE paramsBodyL #-}
 
-_setQuery :: SwaggerPetstoreRequest req contentType res -> [NH.QueryItem] -> SwaggerPetstoreRequest req contentType res
-_setQuery req query = 
-  req &
-  L.over
-    (rParamsL . paramsQueryL)
-    ((query P.++) . P.filter (\q -> cifst q `P.notElem` P.fmap cifst query))
-  where
-    cifst = CI.mk . P.fst
+-- | Request Body
+data ParamBody
+  = ParamBodyNone
+  | ParamBodyB B.ByteString
+  | ParamBodyBL BL.ByteString
+  | ParamBodyFormUrlEncoded WH.Form
+  | ParamBodyMultipartFormData [NH.Part]
+  deriving (P.Show)
 
-_addForm :: SwaggerPetstoreRequest req contentType res -> WH.Form -> SwaggerPetstoreRequest req contentType res
-_addForm req newform = 
-    let form = case paramsBody (rParams req) of
-            ParamBodyFormUrlEncoded _form -> _form
-            _ -> mempty
-    in req & L.set (rParamsL . paramsBodyL) (ParamBodyFormUrlEncoded (newform <> form))
+-- ** SwaggerPetstoreRequest Utils
+
+_mkRequest :: NH.Method -- ^ Method 
+          -> [BCL.ByteString] -- ^ Endpoint
+          -> SwaggerPetstoreRequest req contentType res -- ^ req: Request Type, res: Response Type
+_mkRequest m u = SwaggerPetstoreRequest m u _mkParams []
 
-_addMultiFormPart :: SwaggerPetstoreRequest req contentType res -> NH.Part -> SwaggerPetstoreRequest req contentType res
-_addMultiFormPart req newpart = 
-    let parts = case paramsBody (rParams req) of
-            ParamBodyMultipartFormData _parts -> _parts
-            _ -> []
-    in req & L.set (rParamsL . paramsBodyL) (ParamBodyMultipartFormData (newpart : parts))
-
-_setBodyBS :: SwaggerPetstoreRequest req contentType res -> B.ByteString -> SwaggerPetstoreRequest req contentType res
-_setBodyBS req body = 
-    req & L.set (rParamsL . paramsBodyL) (ParamBodyB body)
-
-_setBodyLBS :: SwaggerPetstoreRequest req contentType res -> BL.ByteString -> SwaggerPetstoreRequest req contentType res
-_setBodyLBS req body = 
-    req & L.set (rParamsL . paramsBodyL) (ParamBodyBL body)
-
-
--- ** Params Utils
+_mkParams :: Params
+_mkParams = Params [] [] ParamBodyNone
+
+setHeader :: SwaggerPetstoreRequest req contentType res -> [NH.Header] -> SwaggerPetstoreRequest req contentType res
+setHeader req header =
+  req `removeHeader` P.fmap P.fst header &
+  L.over (rParamsL . paramsHeadersL) (header P.++)
+
+removeHeader :: SwaggerPetstoreRequest req contentType res -> [NH.HeaderName] -> SwaggerPetstoreRequest req contentType res
+removeHeader req header =
+  req &
+  L.over
+    (rParamsL . paramsHeadersL)
+    (P.filter (\h -> cifst h `P.notElem` P.fmap CI.mk header))
+  where
+    cifst = CI.mk . P.fst
+
 
-toPath
-  :: WH.ToHttpApiData a
-  => a -> BCL.ByteString
-toPath = BB.toLazyByteString . WH.toEncodedUrlPiece
-
-toHeader :: WH.ToHttpApiData a => (NH.HeaderName, a) -> [NH.Header]
-toHeader x = [fmap WH.toHeader x]
-
-toForm :: WH.ToHttpApiData v => (BC.ByteString, v) -> WH.Form
-toForm (k,v) = WH.toForm [(BC.unpack k,v)]
-
-toQuery :: WH.ToHttpApiData a => (BC.ByteString, Maybe a) -> [NH.QueryItem]
-toQuery x = [(fmap . fmap) toQueryParam x]
-  where toQueryParam = T.encodeUtf8 . WH.toQueryParam
-
--- *** Swagger `CollectionFormat` Utils
-
--- | Determines the format of the array if type array is used.
-data CollectionFormat
-  = CommaSeparated -- ^ CSV format for multiple parameters.
-  | SpaceSeparated -- ^ Also called "SSV"
-  | TabSeparated -- ^ Also called "TSV"
-  | PipeSeparated -- ^ `value1|value2|value2`
-  | MultiParamArray -- ^ Using multiple GET parameters, e.g. `foo=bar&foo=baz`. This is valid only for parameters in "query" ('NH.Query') or "formData" ('WH.Form')
-
-toHeaderColl :: WH.ToHttpApiData a => CollectionFormat -> (NH.HeaderName, [a]) -> [NH.Header]
-toHeaderColl c xs = _toColl c toHeader xs
+_setContentTypeHeader :: forall req contentType res. MimeType contentType => SwaggerPetstoreRequest req contentType res -> SwaggerPetstoreRequest req contentType res
+_setContentTypeHeader req =
+    case mimeType (P.Proxy :: P.Proxy contentType) of 
+        Just m -> req `setHeader` [("content-type", BC.pack $ P.show m)]
+        Nothing -> req `removeHeader` ["content-type"]
+
+_setAcceptHeader :: forall req contentType res accept. MimeType accept => SwaggerPetstoreRequest req contentType res -> accept -> SwaggerPetstoreRequest req contentType res
+_setAcceptHeader req accept =
+    case mimeType' accept of 
+        Just m -> req `setHeader` [("accept", BC.pack $ P.show m)]
+        Nothing -> req `removeHeader` ["accept"]
+
+setQuery :: SwaggerPetstoreRequest req contentType res -> [NH.QueryItem] -> SwaggerPetstoreRequest req contentType res
+setQuery req query = 
+  req &
+  L.over
+    (rParamsL . paramsQueryL)
+    ((query P.++) . P.filter (\q -> cifst q `P.notElem` P.fmap cifst query))
+  where
+    cifst = CI.mk . P.fst
+
+addForm :: SwaggerPetstoreRequest req contentType res -> WH.Form -> SwaggerPetstoreRequest req contentType res
+addForm req newform = 
+    let form = case paramsBody (rParams req) of
+            ParamBodyFormUrlEncoded _form -> _form
+            _ -> mempty
+    in req & L.set (rParamsL . paramsBodyL) (ParamBodyFormUrlEncoded (newform <> form))
 
-toFormColl :: WH.ToHttpApiData v => CollectionFormat -> (BC.ByteString, [v]) -> WH.Form
-toFormColl c xs = WH.toForm $ fmap unpack $ _toColl c toHeader $ pack xs
-  where
-    pack (k,v) = (CI.mk k, v)
-    unpack (k,v) = (BC.unpack (CI.original k), BC.unpack v)
-
-toQueryColl :: WH.ToHttpApiData a => CollectionFormat -> (BC.ByteString, Maybe [a]) -> NH.Query
-toQueryColl c xs = _toCollA c toQuery xs
-
-_toColl :: P.Traversable f => CollectionFormat -> (f a -> [(b, BC.ByteString)]) -> f [a] -> [(b, BC.ByteString)]
-_toColl c encode xs = fmap (fmap P.fromJust) (_toCollA' c fencode BC.singleton (fmap Just xs))
-  where fencode = fmap (fmap Just) . encode . fmap P.fromJust
-        {-# INLINE fencode #-}
-
-_toCollA :: (P.Traversable f, P.Traversable t, P.Alternative t) => CollectionFormat -> (f (t a) -> [(b, t BC.ByteString)]) -> f (t [a]) -> [(b, t BC.ByteString)]
-_toCollA c encode xs = _toCollA' c encode BC.singleton xs
-
-_toCollA' :: (P.Monoid c, P.Traversable f, P.Traversable t, P.Alternative t) => CollectionFormat -> (f (t a) -> [(b, t c)]) -> (Char -> c) -> f (t [a]) -> [(b, t c)]
-_toCollA' c encode one xs = case c of
-  CommaSeparated -> go (one ',')
-  SpaceSeparated -> go (one ' ')
-  TabSeparated -> go (one '\t')
-  PipeSeparated -> go (one '|')
-  MultiParamArray -> expandList
-  where
-    go sep =
-      [P.foldl1 (\(sk, sv) (_, v) -> (sk, (combine sep <$> sv <*> v) <|> sv <|> v)) expandList]
-    combine sep x y = x <> sep <> y
-    expandList = (P.concatMap encode . (P.traverse . P.traverse) P.toList) xs
-    {-# INLINE go #-}
-    {-# INLINE expandList #-}
-    {-# INLINE combine #-}
-  
-
\ No newline at end of file +
_addMultiFormPart :: SwaggerPetstoreRequest req contentType res -> NH.Part -> SwaggerPetstoreRequest req contentType res +_addMultiFormPart req newpart = + let parts = case paramsBody (rParams req) of + ParamBodyMultipartFormData _parts -> _parts + _ -> [] + in req & L.set (rParamsL . paramsBodyL) (ParamBodyMultipartFormData (newpart : parts)) + +_setBodyBS :: SwaggerPetstoreRequest req contentType res -> B.ByteString -> SwaggerPetstoreRequest req contentType res +_setBodyBS req body = + req & L.set (rParamsL . paramsBodyL) (ParamBodyB body) + +_setBodyLBS :: SwaggerPetstoreRequest req contentType res -> BL.ByteString -> SwaggerPetstoreRequest req contentType res +_setBodyLBS req body = + req & L.set (rParamsL . paramsBodyL) (ParamBodyBL body) + +_hasAuthType :: AuthMethod authMethod => SwaggerPetstoreRequest req contentType res -> P.Proxy authMethod -> SwaggerPetstoreRequest req contentType res +_hasAuthType req proxy = + req & L.over rAuthTypesL (P.typeRep proxy :) + +-- ** Params Utils + +toPath + :: WH.ToHttpApiData a + => a -> BCL.ByteString +toPath = BB.toLazyByteString . WH.toEncodedUrlPiece + +toHeader :: WH.ToHttpApiData a => (NH.HeaderName, a) -> [NH.Header] +toHeader x = [fmap WH.toHeader x] + +toForm :: WH.ToHttpApiData v => (BC.ByteString, v) -> WH.Form +toForm (k,v) = WH.toForm [(BC.unpack k,v)] + +toQuery :: WH.ToHttpApiData a => (BC.ByteString, Maybe a) -> [NH.QueryItem] +toQuery x = [(fmap . fmap) toQueryParam x] + where toQueryParam = T.encodeUtf8 . WH.toQueryParam + +-- *** Swagger `CollectionFormat` Utils + +-- | Determines the format of the array if type array is used. +data CollectionFormat + = CommaSeparated -- ^ CSV format for multiple parameters. + | SpaceSeparated -- ^ Also called "SSV" + | TabSeparated -- ^ Also called "TSV" + | PipeSeparated -- ^ `value1|value2|value2` + | MultiParamArray -- ^ Using multiple GET parameters, e.g. `foo=bar&foo=baz`. This is valid only for parameters in "query" ('NH.Query') or "formData" ('WH.Form') + +toHeaderColl :: WH.ToHttpApiData a => CollectionFormat -> (NH.HeaderName, [a]) -> [NH.Header] +toHeaderColl c xs = _toColl c toHeader xs + +toFormColl :: WH.ToHttpApiData v => CollectionFormat -> (BC.ByteString, [v]) -> WH.Form +toFormColl c xs = WH.toForm $ fmap unpack $ _toColl c toHeader $ pack xs + where + pack (k,v) = (CI.mk k, v) + unpack (k,v) = (BC.unpack (CI.original k), BC.unpack v) + +toQueryColl :: WH.ToHttpApiData a => CollectionFormat -> (BC.ByteString, Maybe [a]) -> NH.Query +toQueryColl c xs = _toCollA c toQuery xs + +_toColl :: P.Traversable f => CollectionFormat -> (f a -> [(b, BC.ByteString)]) -> f [a] -> [(b, BC.ByteString)] +_toColl c encode xs = fmap (fmap P.fromJust) (_toCollA' c fencode BC.singleton (fmap Just xs)) + where fencode = fmap (fmap Just) . encode . fmap P.fromJust + {-# INLINE fencode #-} + +_toCollA :: (P.Traversable f, P.Traversable t, P.Alternative t) => CollectionFormat -> (f (t a) -> [(b, t BC.ByteString)]) -> f (t [a]) -> [(b, t BC.ByteString)] +_toCollA c encode xs = _toCollA' c encode BC.singleton xs + +_toCollA' :: (P.Monoid c, P.Traversable f, P.Traversable t, P.Alternative t) => CollectionFormat -> (f (t a) -> [(b, t c)]) -> (Char -> c) -> f (t [a]) -> [(b, t c)] +_toCollA' c encode one xs = case c of + CommaSeparated -> go (one ',') + SpaceSeparated -> go (one ' ') + TabSeparated -> go (one '\t') + PipeSeparated -> go (one '|') + MultiParamArray -> expandList + where + go sep = + [P.foldl1 (\(sk, sv) (_, v) -> (sk, (combine sep <$> sv <*> v) <|> sv <|> v)) expandList] + combine sep x y = x <> sep <> y + expandList = (P.concatMap encode . (P.traverse . P.traverse) P.toList) xs + {-# INLINE go #-} + {-# INLINE expandList #-} + {-# INLINE combine #-} + +-- * AuthMethods + +-- | Provides a method to apply auth methods to requests +class P.Typeable a => AuthMethod a where + applyAuthMethod :: SwaggerPetstoreRequest req contentType res -> a -> SwaggerPetstoreRequest req contentType res + +-- | An existential wrapper for any AuthMethod +data AnyAuthMethod = forall a. AuthMethod a => AnyAuthMethod a deriving (P.Typeable) + +instance AuthMethod AnyAuthMethod where applyAuthMethod req (AnyAuthMethod a) = applyAuthMethod req a + +-- ** AuthApiKeyApiKey +data AuthApiKeyApiKey = + AuthApiKeyApiKey Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthApiKeyApiKey where + applyAuthMethod req a@(AuthApiKeyApiKey secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("api_key", secret) + else req + +-- ** AuthApiKeyApiKeyQuery +data AuthApiKeyApiKeyQuery = + AuthApiKeyApiKeyQuery Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthApiKeyApiKeyQuery where + applyAuthMethod req a@(AuthApiKeyApiKeyQuery secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setQuery` toQuery ("api_key_query", Just secret) + else req + +-- ** AuthBasicHttpBasicTest +data AuthBasicHttpBasicTest = + AuthBasicHttpBasicTest B.ByteString B.ByteString -- ^ username password + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthBasicHttpBasicTest where + applyAuthMethod req a@(AuthBasicHttpBasicTest user pw) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("Authorization", T.decodeUtf8 cred) + else req + where cred = BC.append "Basic " (B64.encode $ BC.concat [ user, ":", pw ]) + +-- ** AuthOAuthPetstoreAuth +data AuthOAuthPetstoreAuth = + AuthOAuthPetstoreAuth Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthOAuthPetstoreAuth where + applyAuthMethod req a@(AuthOAuthPetstoreAuth secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("Authorization", "Bearer " <> secret) + else req + + +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Client.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Client.html index 664b2de3d633..c2683fa528d0 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Client.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Client.html @@ -1,265 +1,296 @@ -
{-|
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
+-}
+
+{-|
 Module : SwaggerPetstore.Client
 -}
-
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE RecordWildCards #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE DeriveFunctor #-}
-{-# LANGUAGE DeriveFoldable #-}
-{-# LANGUAGE DeriveTraversable #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds -fno-warn-unused-imports #-}
 
-module SwaggerPetstore.Client where
-
-import SwaggerPetstore.Model
-import SwaggerPetstore.API
-import SwaggerPetstore.MimeTypes
-import SwaggerPetstore.Logging
-
-import qualified Control.Monad.IO.Class as P
-import qualified Data.Aeson as A
-import qualified Data.Aeson.Types as A
-import qualified Data.Proxy as P (Proxy(..))
-import Data.Function ((&))
-import Data.Monoid ((<>))
-import Data.Text (Text)
-import GHC.Exts (IsString(..))
-import Web.FormUrlEncoded as WH
-import Web.HttpApiData as WH
-import Control.Monad.Catch (MonadThrow)
-
-import qualified Data.Time as TI
-import qualified Data.Map as Map
-import qualified Data.Text as T
-import qualified Data.Text.Encoding as T
-import qualified Text.Printf as T
-
-import qualified Data.ByteString as B
-import qualified Data.ByteString.Lazy as BL
-import qualified Data.ByteString.Char8 as BC
-import qualified Data.ByteString.Lazy.Char8 as BCL
-import qualified Data.ByteString.Builder as BB
-import qualified Network.HTTP.Client as NH
-import qualified Network.HTTP.Client.TLS as NH
-import qualified Network.HTTP.Client.MultipartFormData as NH
-import qualified Network.HTTP.Types.Method as NH
-import qualified Network.HTTP.Types as NH
-import qualified Network.HTTP.Types.URI as NH
-
-import qualified Control.Exception.Safe as E
--- * Config
-
--- | 
-data SwaggerPetstoreConfig = SwaggerPetstoreConfig
-  { configHost  :: BCL.ByteString -- ^ host supplied in the Request
-  , configUserAgent :: Text -- ^ user-agent supplied in the Request
-  , configLogExecWithContext :: LogExecWithContext -- ^ Run a block using a Logger instance
-  , configLogContext :: LogContext -- ^ Configures the logger
-  }
-
--- | display the config
-instance Show SwaggerPetstoreConfig where
-  show c =
-    T.printf
-      "{ configHost = %v, configUserAgent = %v, ..}"
-      (show (configHost c))
-      (show (configUserAgent c))
-
--- | constructs a default SwaggerPetstoreConfig
---
--- configHost:
---
--- @http://petstore.swagger.io:80/v2@
---
--- configUserAgent:
---
--- @"swagger-haskell-http-client/1.0.0"@
---
-newConfig :: IO SwaggerPetstoreConfig
-newConfig = do
-    logCxt <- initLogContext
-    return $ SwaggerPetstoreConfig
-        { configHost = "http://petstore.swagger.io:80/v2"
-        , configUserAgent = "swagger-haskell-http-client/1.0.0"
-        , configLogExecWithContext = runDefaultLogExecWithContext
-        , configLogContext = logCxt
-        }  
-
-withStdoutLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig
-withStdoutLogging p = do
-    logCxt <- stdoutLoggingContext (configLogContext p)
-    return $ p { configLogExecWithContext = stdoutLoggingExec, configLogContext = logCxt }
-
-withStderrLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig
-withStderrLogging p = do
-    logCxt <- stderrLoggingContext (configLogContext p)
-    return $ p { configLogExecWithContext = stderrLoggingExec, configLogContext = logCxt }
-
--- | updates the config to disable logging
-withNoLogging :: SwaggerPetstoreConfig -> SwaggerPetstoreConfig
-withNoLogging p = p { configLogExecWithContext =  runNullLogExec}
-
--- * Dispatch
-
--- ** Lbs
-
--- | send a request returning the raw http response
-dispatchLbs
-  :: (Produces req accept, MimeType contentType)
-  => NH.Manager -- ^ http-client Connection manager
-  -> SwaggerPetstoreConfig -- ^ config
-  -> SwaggerPetstoreRequest req contentType res -- ^ request
-  -> accept -- ^ "accept" 'MimeType'
-  -> IO (NH.Response BCL.ByteString) -- ^ response
-dispatchLbs manager config request accept = do
-  initReq <- _toInitRequest config request accept 
-  dispatchInitUnsafe manager config initReq
-
--- ** Mime
-
--- | pair of decoded http body and http response
-data MimeResult res =
-  MimeResult { mimeResult :: Either MimeError res -- ^ decoded http body
-             , mimeResultResponse :: NH.Response BCL.ByteString -- ^ http response 
-             }
-  deriving (Show, Functor, Foldable, Traversable)
-
--- | pair of unrender/parser error and http response
-data MimeError =
-  MimeError {
-    mimeError :: String -- ^ unrender/parser error
-  , mimeErrorResponse :: NH.Response BCL.ByteString -- ^ http response 
-  } deriving (Eq, Show)
-
--- | send a request returning the 'MimeResult'
-dispatchMime
-  :: (Produces req accept, MimeUnrender accept res, MimeType contentType)
-  => NH.Manager -- ^ http-client Connection manager
-  -> SwaggerPetstoreConfig -- ^ config
-  -> SwaggerPetstoreRequest req contentType res -- ^ request
-  -> accept -- ^ "accept" 'MimeType'
-  -> IO (MimeResult res) -- ^ response
-dispatchMime manager config request accept = do
-  httpResponse <- dispatchLbs manager config request accept
-  parsedResult <-
-    runConfigLogWithExceptions "Client" config $
-    do case mimeUnrender' accept (NH.responseBody httpResponse) of
-         Left s -> do
-           _log "Client" levelError (T.pack s)
-           pure (Left (MimeError s httpResponse))
-         Right r -> pure (Right r)
-  return (MimeResult parsedResult httpResponse)
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE DeriveFoldable #-}
+{-# LANGUAGE DeriveTraversable #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds -fno-warn-unused-imports #-}
+
+module SwaggerPetstore.Client where
+
+import SwaggerPetstore.Model
+import SwaggerPetstore.API
+import SwaggerPetstore.MimeTypes
+import SwaggerPetstore.Logging
+
+import qualified Control.Monad.IO.Class as P
+import qualified Data.Aeson as A
+import qualified Data.Aeson.Types as A
+import qualified Data.Proxy as P (Proxy(..))
+import Data.Function ((&))
+import Data.Monoid ((<>))
+import Data.Text (Text)
+import GHC.Exts (IsString(..))
+import Web.FormUrlEncoded as WH
+import Web.HttpApiData as WH
+import Control.Monad.Catch (MonadThrow)
+
+import qualified Data.Time as TI
+import qualified Data.Map as Map
+import qualified Data.Text as T
+import qualified Data.Text.Encoding as T
+import qualified Text.Printf as T
+
+import qualified Data.ByteString as B
+import qualified Data.ByteString.Lazy as BL
+import qualified Data.ByteString.Char8 as BC
+import qualified Data.ByteString.Lazy.Char8 as BCL
+import qualified Data.ByteString.Builder as BB
+import qualified Network.HTTP.Client as NH
+import qualified Network.HTTP.Client.TLS as NH
+import qualified Network.HTTP.Client.MultipartFormData as NH
+import qualified Network.HTTP.Types.Method as NH
+import qualified Network.HTTP.Types as NH
+import qualified Network.HTTP.Types.URI as NH
+
+import qualified Control.Exception.Safe as E
+-- * Config
+
+-- | 
+data SwaggerPetstoreConfig = SwaggerPetstoreConfig
+  { configHost  :: BCL.ByteString -- ^ host supplied in the Request
+  , configUserAgent :: Text -- ^ user-agent supplied in the Request
+  , configLogExecWithContext :: LogExecWithContext -- ^ Run a block using a Logger instance
+  , configLogContext :: LogContext -- ^ Configures the logger
+  , configAuthMethods :: [AnyAuthMethod] -- ^ List of configured auth methods
+  }
+
+-- | display the config
+instance Show SwaggerPetstoreConfig where
+  show c =
+    T.printf
+      "{ configHost = %v, configUserAgent = %v, ..}"
+      (show (configHost c))
+      (show (configUserAgent c))
+
+-- | constructs a default SwaggerPetstoreConfig
+--
+-- configHost:
+--
+-- @http://petstore.swagger.io:80/v2@
+--
+-- configUserAgent:
+--
+-- @"swagger-haskell-http-client/1.0.0"@
+--
+newConfig :: IO SwaggerPetstoreConfig
+newConfig = do
+    logCxt <- initLogContext
+    return $ SwaggerPetstoreConfig
+        { configHost = "http://petstore.swagger.io:80/v2"
+        , configUserAgent = "swagger-haskell-http-client/1.0.0"
+        , configLogExecWithContext = runDefaultLogExecWithContext
+        , configLogContext = logCxt
+        , configAuthMethods = []
+        }  
+
+-- | updates config use AuthMethod on matching requests
+addAuthMethod :: AuthMethod auth => SwaggerPetstoreConfig -> auth -> SwaggerPetstoreConfig
+addAuthMethod config@SwaggerPetstoreConfig {configAuthMethods = as} a =
+  config { configAuthMethods = AnyAuthMethod a : as}
+
+-- | updates the config to use stdout logging
+withStdoutLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig
+withStdoutLogging p = do
+    logCxt <- stdoutLoggingContext (configLogContext p)
+    return $ p { configLogExecWithContext = stdoutLoggingExec, configLogContext = logCxt }
+
+-- | updates the config to use stderr logging
+withStderrLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig
+withStderrLogging p = do
+    logCxt <- stderrLoggingContext (configLogContext p)
+    return $ p { configLogExecWithContext = stderrLoggingExec, configLogContext = logCxt }
+
+-- | updates the config to disable logging
+withNoLogging :: SwaggerPetstoreConfig -> SwaggerPetstoreConfig
+withNoLogging p = p { configLogExecWithContext =  runNullLogExec}
+
+-- * Dispatch
+
+-- ** Lbs
+
+-- | send a request returning the raw http response
+dispatchLbs
+  :: (Produces req accept, MimeType contentType)
+  => NH.Manager -- ^ http-client Connection manager
+  -> SwaggerPetstoreConfig -- ^ config
+  -> SwaggerPetstoreRequest req contentType res -- ^ request
+  -> accept -- ^ "accept" 'MimeType'
+  -> IO (NH.Response BCL.ByteString) -- ^ response
+dispatchLbs manager config request accept = do
+  initReq <- _toInitRequest config request accept 
+  dispatchInitUnsafe manager config initReq
+
+-- ** Mime
+
+-- | pair of decoded http body and http response
+data MimeResult res =
+  MimeResult { mimeResult :: Either MimeError res -- ^ decoded http body
+             , mimeResultResponse :: NH.Response BCL.ByteString -- ^ http response 
+             }
+  deriving (Show, Functor, Foldable, Traversable)
+
+-- | pair of unrender/parser error and http response
+data MimeError =
+  MimeError {
+    mimeError :: String -- ^ unrender/parser error
+  , mimeErrorResponse :: NH.Response BCL.ByteString -- ^ http response 
+  } deriving (Eq, Show)
 
--- | like 'dispatchMime', but only returns the decoded http body
-dispatchMime'
-  :: (Produces req accept, MimeUnrender accept res, MimeType contentType)
+-- | send a request returning the 'MimeResult'
+dispatchMime
+  :: (Produces req accept, MimeUnrender accept res, MimeType contentType)
   => NH.Manager -- ^ http-client Connection manager
   -> SwaggerPetstoreConfig -- ^ config
-  -> SwaggerPetstoreRequest req contentType res -- ^ request
-  -> accept -- ^ "accept" 'MimeType'
-  -> IO (Either MimeError res) -- ^ response
-dispatchMime' manager config request accept = do
-    MimeResult parsedResult _ <- dispatchMime manager config request accept 
-    return parsedResult
-
--- ** Unsafe
-
--- | like 'dispatchReqLbs', but does not validate the operation is a 'Producer' of the "accept" 'MimeType'.  (Useful if the server's response is undocumented)
-dispatchLbsUnsafe
-  :: (MimeType accept, MimeType contentType)
-  => NH.Manager -- ^ http-client Connection manager
-  -> SwaggerPetstoreConfig -- ^ config
-  -> SwaggerPetstoreRequest req contentType res -- ^ request
-  -> accept -- ^ "accept" 'MimeType'
-  -> IO (NH.Response BCL.ByteString) -- ^ response
-dispatchLbsUnsafe manager config request accept = do
-  initReq <- _toInitRequest config request accept
-  dispatchInitUnsafe manager config initReq
-
--- | dispatch an InitRequest
-dispatchInitUnsafe
-  :: NH.Manager -- ^ http-client Connection manager
-  -> SwaggerPetstoreConfig -- ^ config
-  -> InitRequest req contentType res accept -- ^ init request
-  -> IO (NH.Response BCL.ByteString) -- ^ response
-dispatchInitUnsafe manager config (InitRequest req) = do
-  runConfigLogWithExceptions src config $
-    do _log src levelInfo requestLogMsg
-       _log src levelDebug requestDbgLogMsg
-       res <- P.liftIO $ NH.httpLbs req manager
-       _log src levelInfo (responseLogMsg res)
-       _log src levelDebug ((T.pack . show) res)
-       return res
-  where
-    src = "Client"
-    endpoint =
-      T.pack $
-      BC.unpack $
-      NH.method req <> " " <> NH.host req <> NH.path req <> NH.queryString req
-    requestLogMsg = "REQ:" <> endpoint
-    requestDbgLogMsg =
-      "Headers=" <> (T.pack . show) (NH.requestHeaders req) <> " Body=" <>
-      (case NH.requestBody req of
-         NH.RequestBodyLBS xs -> T.decodeUtf8 (BL.toStrict xs)
-         _ -> "<RequestBody>")
-    responseStatusCode = (T.pack . show) . NH.statusCode . NH.responseStatus
-    responseLogMsg res =
-      "RES:statusCode=" <> responseStatusCode res <> " (" <> endpoint <> ")"
-
--- * InitRequest
-
--- | wraps an http-client 'Request' with request/response type parameters
-newtype InitRequest req contentType res accept = InitRequest
-  { unInitRequest :: NH.Request
-  } deriving (Show)
-
--- |  Build an http-client 'Request' record from the supplied config and request
-_toInitRequest
-  :: (MimeType accept, MimeType contentType)
-  => SwaggerPetstoreConfig -- ^ config
-  -> SwaggerPetstoreRequest req contentType res -- ^ request
-  -> accept -- ^ "accept" 'MimeType'
-  -> IO (InitRequest req contentType res accept) -- ^ initialized request
-_toInitRequest config req0 accept = do
-  parsedReq <- NH.parseRequest $ BCL.unpack $ BCL.append (configHost config) (BCL.concat (rUrlPath req0))
-  let req1 = _setAcceptHeader req0 accept & _setContentTypeHeader
-      reqHeaders = ("User-Agent", WH.toHeader (configUserAgent config)) : paramsHeaders (rParams req1)
-      reqQuery = NH.renderQuery True (paramsQuery (rParams req1))
-      pReq = parsedReq { NH.method = (rMethod req1)
-                       , NH.requestHeaders = reqHeaders
-                       , NH.queryString = reqQuery
-                       }
-  outReq <- case paramsBody (rParams req1) of
-    ParamBodyNone -> pure (pReq { NH.requestBody = mempty })
-    ParamBodyB bs -> pure (pReq { NH.requestBody = NH.RequestBodyBS bs })
-    ParamBodyBL bl -> pure (pReq { NH.requestBody = NH.RequestBodyLBS bl })
-    ParamBodyFormUrlEncoded form -> pure (pReq { NH.requestBody = NH.RequestBodyLBS (WH.urlEncodeForm form) })
-    ParamBodyMultipartFormData parts -> NH.formDataBody parts pReq
-
-  pure (InitRequest outReq)
-
--- | modify the underlying Request
-modifyInitRequest :: InitRequest req contentType res accept -> (NH.Request -> NH.Request) -> InitRequest req contentType res accept 
-modifyInitRequest (InitRequest req) f = InitRequest (f req)
-
--- | modify the underlying Request (monadic)
-modifyInitRequestM :: Monad m => InitRequest req contentType res accept -> (NH.Request -> m NH.Request) -> m (InitRequest req contentType res accept)
-modifyInitRequestM (InitRequest req) f = fmap InitRequest (f req)
-
--- ** Logging 
-
--- | Run a block using the configured logger instance
-runConfigLog
-  :: P.MonadIO m
-  => SwaggerPetstoreConfig -> LogExec m
-runConfigLog config = configLogExecWithContext config (configLogContext config)
-
--- | Run a block using the configured logger instance (logs exceptions)
-runConfigLogWithExceptions
-  :: (E.MonadCatch m, P.MonadIO m)
-  => T.Text -> SwaggerPetstoreConfig -> LogExec m
-runConfigLogWithExceptions src config = runConfigLog config . logExceptions src
-
\ No newline at end of file +
-> SwaggerPetstoreRequest req contentType res -- ^ request + -> accept -- ^ "accept" 'MimeType' + -> IO (MimeResult res) -- ^ response +dispatchMime manager config request accept = do + httpResponse <- dispatchLbs manager config request accept + parsedResult <- + runConfigLogWithExceptions "Client" config $ + do case mimeUnrender' accept (NH.responseBody httpResponse) of + Left s -> do + _log "Client" levelError (T.pack s) + pure (Left (MimeError s httpResponse)) + Right r -> pure (Right r) + return (MimeResult parsedResult httpResponse) + +-- | like 'dispatchMime', but only returns the decoded http body +dispatchMime' + :: (Produces req accept, MimeUnrender accept res, MimeType contentType) + => NH.Manager -- ^ http-client Connection manager + -> SwaggerPetstoreConfig -- ^ config + -> SwaggerPetstoreRequest req contentType res -- ^ request + -> accept -- ^ "accept" 'MimeType' + -> IO (Either MimeError res) -- ^ response +dispatchMime' manager config request accept = do + MimeResult parsedResult _ <- dispatchMime manager config request accept + return parsedResult + +-- ** Unsafe + +-- | like 'dispatchReqLbs', but does not validate the operation is a 'Producer' of the "accept" 'MimeType'. (Useful if the server's response is undocumented) +dispatchLbsUnsafe + :: (MimeType accept, MimeType contentType) + => NH.Manager -- ^ http-client Connection manager + -> SwaggerPetstoreConfig -- ^ config + -> SwaggerPetstoreRequest req contentType res -- ^ request + -> accept -- ^ "accept" 'MimeType' + -> IO (NH.Response BCL.ByteString) -- ^ response +dispatchLbsUnsafe manager config request accept = do + initReq <- _toInitRequest config request accept + dispatchInitUnsafe manager config initReq + +-- | dispatch an InitRequest +dispatchInitUnsafe + :: NH.Manager -- ^ http-client Connection manager + -> SwaggerPetstoreConfig -- ^ config + -> InitRequest req contentType res accept -- ^ init request + -> IO (NH.Response BCL.ByteString) -- ^ response +dispatchInitUnsafe manager config (InitRequest req) = do + runConfigLogWithExceptions src config $ + do _log src levelInfo requestLogMsg + _log src levelDebug requestDbgLogMsg + res <- P.liftIO $ NH.httpLbs req manager + _log src levelInfo (responseLogMsg res) + _log src levelDebug ((T.pack . show) res) + return res + where + src = "Client" + endpoint = + T.pack $ + BC.unpack $ + NH.method req <> " " <> NH.host req <> NH.path req <> NH.queryString req + requestLogMsg = "REQ:" <> endpoint + requestDbgLogMsg = + "Headers=" <> (T.pack . show) (NH.requestHeaders req) <> " Body=" <> + (case NH.requestBody req of + NH.RequestBodyLBS xs -> T.decodeUtf8 (BL.toStrict xs) + _ -> "<RequestBody>") + responseStatusCode = (T.pack . show) . NH.statusCode . NH.responseStatus + responseLogMsg res = + "RES:statusCode=" <> responseStatusCode res <> " (" <> endpoint <> ")" + +-- * InitRequest + +-- | wraps an http-client 'Request' with request/response type parameters +newtype InitRequest req contentType res accept = InitRequest + { unInitRequest :: NH.Request + } deriving (Show) + +-- | Build an http-client 'Request' record from the supplied config and request +_toInitRequest + :: (MimeType accept, MimeType contentType) + => SwaggerPetstoreConfig -- ^ config + -> SwaggerPetstoreRequest req contentType res -- ^ request + -> accept -- ^ "accept" 'MimeType' + -> IO (InitRequest req contentType res accept) -- ^ initialized request +_toInitRequest config req0 accept = do + parsedReq <- NH.parseRequest $ BCL.unpack $ BCL.append (configHost config) (BCL.concat (rUrlPath req0)) + let req1 = _applyAuthMethods req0 config + & _setContentTypeHeader + & flip _setAcceptHeader accept + reqHeaders = ("User-Agent", WH.toHeader (configUserAgent config)) : paramsHeaders (rParams req1) + reqQuery = NH.renderQuery True (paramsQuery (rParams req1)) + pReq = parsedReq { NH.method = (rMethod req1) + , NH.requestHeaders = reqHeaders + , NH.queryString = reqQuery + } + outReq <- case paramsBody (rParams req1) of + ParamBodyNone -> pure (pReq { NH.requestBody = mempty }) + ParamBodyB bs -> pure (pReq { NH.requestBody = NH.RequestBodyBS bs }) + ParamBodyBL bl -> pure (pReq { NH.requestBody = NH.RequestBodyLBS bl }) + ParamBodyFormUrlEncoded form -> pure (pReq { NH.requestBody = NH.RequestBodyLBS (WH.urlEncodeForm form) }) + ParamBodyMultipartFormData parts -> NH.formDataBody parts pReq + + pure (InitRequest outReq) + +-- | apply all matching AuthMethods in config to request +_applyAuthMethods + :: SwaggerPetstoreRequest req contentType res + -> SwaggerPetstoreConfig + -> SwaggerPetstoreRequest req contentType res +_applyAuthMethods req SwaggerPetstoreConfig {configAuthMethods = as} = + foldl go req as + where + go r (AnyAuthMethod a) = r `applyAuthMethod` a + +-- | modify the underlying Request +modifyInitRequest :: InitRequest req contentType res accept -> (NH.Request -> NH.Request) -> InitRequest req contentType res accept +modifyInitRequest (InitRequest req) f = InitRequest (f req) + +-- | modify the underlying Request (monadic) +modifyInitRequestM :: Monad m => InitRequest req contentType res accept -> (NH.Request -> m NH.Request) -> m (InitRequest req contentType res accept) +modifyInitRequestM (InitRequest req) f = fmap InitRequest (f req) + +-- ** Logging + +-- | Run a block using the configured logger instance +runConfigLog + :: P.MonadIO m + => SwaggerPetstoreConfig -> LogExec m +runConfigLog config = configLogExecWithContext config (configLogContext config) + +-- | Run a block using the configured logger instance (logs exceptions) +runConfigLogWithExceptions + :: (E.MonadCatch m, P.MonadIO m) + => T.Text -> SwaggerPetstoreConfig -> LogExec m +runConfigLogWithExceptions src config = runConfigLog config . logExceptions src +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Lens.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Lens.html index 42c518137fd8..8b8a1e21917d 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Lens.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Lens.html @@ -1,631 +1,641 @@ -
{-|
-Module : SwaggerPetstore.Lens
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
 -}
-
-{-# LANGUAGE KindSignatures #-}
-{-# LANGUAGE NamedFieldPuns #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE RecordWildCards #-}
-{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-matches -fno-warn-unused-binds -fno-warn-unused-imports #-}
 
-module SwaggerPetstore.Lens where
-
-import qualified Data.Aeson as A
-import qualified Data.ByteString.Lazy as BL
-import qualified Data.Data as P (Data, Typeable)
-import qualified Data.Map as Map
-import qualified Data.Set as Set
-import qualified Data.Time as TI
-
-import Data.Text (Text)
-
-import Prelude (($), (.),(<$>),(<*>),(=<<),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
-import qualified Prelude as P
-
-import SwaggerPetstore.Model
-
--- * Type Aliases
-
-type Lens_' s a = Lens_ s s a a
-type Lens_ s t a b = forall (f :: * -> *). Functor f => (a -> f b) -> s -> f t
+{-|
+Module : SwaggerPetstore.Lens
+-}
+
+{-# LANGUAGE KindSignatures #-}
+{-# LANGUAGE NamedFieldPuns #-}
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-matches -fno-warn-unused-binds -fno-warn-unused-imports #-}
+
+module SwaggerPetstore.Lens where
+
+import qualified Data.Aeson as A
+import qualified Data.ByteString.Lazy as BL
+import qualified Data.Data as P (Data, Typeable)
+import qualified Data.Map as Map
+import qualified Data.Set as Set
+import qualified Data.Time as TI
+
+import Data.Text (Text)
 
-
--- * AdditionalPropertiesClass
+import Prelude (($), (.),(<$>),(<*>),(=<<),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
+import qualified Prelude as P
 
--- | 'additionalPropertiesClassMapProperty' Lens
-additionalPropertiesClassMapPropertyL :: Lens_' AdditionalPropertiesClass (Maybe (Map.Map String Text))
-additionalPropertiesClassMapPropertyL f AdditionalPropertiesClass{..} = (\additionalPropertiesClassMapProperty -> AdditionalPropertiesClass { additionalPropertiesClassMapProperty, ..} ) <$> f additionalPropertiesClassMapProperty
-{-# INLINE additionalPropertiesClassMapPropertyL #-}
-
--- | 'additionalPropertiesClassMapOfMapProperty' Lens
-additionalPropertiesClassMapOfMapPropertyL :: Lens_' AdditionalPropertiesClass (Maybe (Map.Map String (Map.Map String Text)))
-additionalPropertiesClassMapOfMapPropertyL f AdditionalPropertiesClass{..} = (\additionalPropertiesClassMapOfMapProperty -> AdditionalPropertiesClass { additionalPropertiesClassMapOfMapProperty, ..} ) <$> f additionalPropertiesClassMapOfMapProperty
-{-# INLINE additionalPropertiesClassMapOfMapPropertyL #-}
+import SwaggerPetstore.Model
+
+-- * Type Aliases
+
+type Lens_' s a = Lens_ s s a a
+type Lens_ s t a b = forall (f :: * -> *). Functor f => (a -> f b) -> s -> f t
+
+
+-- * AdditionalPropertiesClass
 
-
-
--- * Animal
-
--- | 'animalClassName' Lens
-animalClassNameL :: Lens_' Animal (Text)
-animalClassNameL f Animal{..} = (\animalClassName -> Animal { animalClassName, ..} ) <$> f animalClassName
-{-# INLINE animalClassNameL #-}
-
--- | 'animalColor' Lens
-animalColorL :: Lens_' Animal (Maybe Text)
-animalColorL f Animal{..} = (\animalColor -> Animal { animalColor, ..} ) <$> f animalColor
-{-# INLINE animalColorL #-}
+-- | 'additionalPropertiesClassMapProperty' Lens
+additionalPropertiesClassMapPropertyL :: Lens_' AdditionalPropertiesClass (Maybe (Map.Map String Text))
+additionalPropertiesClassMapPropertyL f AdditionalPropertiesClass{..} = (\additionalPropertiesClassMapProperty -> AdditionalPropertiesClass { additionalPropertiesClassMapProperty, ..} ) <$> f additionalPropertiesClassMapProperty
+{-# INLINE additionalPropertiesClassMapPropertyL #-}
+
+-- | 'additionalPropertiesClassMapOfMapProperty' Lens
+additionalPropertiesClassMapOfMapPropertyL :: Lens_' AdditionalPropertiesClass (Maybe (Map.Map String (Map.Map String Text)))
+additionalPropertiesClassMapOfMapPropertyL f AdditionalPropertiesClass{..} = (\additionalPropertiesClassMapOfMapProperty -> AdditionalPropertiesClass { additionalPropertiesClassMapOfMapProperty, ..} ) <$> f additionalPropertiesClassMapOfMapProperty
+{-# INLINE additionalPropertiesClassMapOfMapPropertyL #-}
+
+
+
+-- * Animal
 
-
-
--- * AnimalFarm
-
+-- | 'animalClassName' Lens
+animalClassNameL :: Lens_' Animal (Text)
+animalClassNameL f Animal{..} = (\animalClassName -> Animal { animalClassName, ..} ) <$> f animalClassName
+{-# INLINE animalClassNameL #-}
 
-
--- * ApiResponse
-
--- | 'apiResponseCode' Lens
-apiResponseCodeL :: Lens_' ApiResponse (Maybe Int)
-apiResponseCodeL f ApiResponse{..} = (\apiResponseCode -> ApiResponse { apiResponseCode, ..} ) <$> f apiResponseCode
-{-# INLINE apiResponseCodeL #-}
-
--- | 'apiResponseType' Lens
-apiResponseTypeL :: Lens_' ApiResponse (Maybe Text)
-apiResponseTypeL f ApiResponse{..} = (\apiResponseType -> ApiResponse { apiResponseType, ..} ) <$> f apiResponseType
-{-# INLINE apiResponseTypeL #-}
+-- | 'animalColor' Lens
+animalColorL :: Lens_' Animal (Maybe Text)
+animalColorL f Animal{..} = (\animalColor -> Animal { animalColor, ..} ) <$> f animalColor
+{-# INLINE animalColorL #-}
+
+
+
+-- * AnimalFarm
+
+
+
+-- * ApiResponse
 
--- | 'apiResponseMessage' Lens
-apiResponseMessageL :: Lens_' ApiResponse (Maybe Text)
-apiResponseMessageL f ApiResponse{..} = (\apiResponseMessage -> ApiResponse { apiResponseMessage, ..} ) <$> f apiResponseMessage
-{-# INLINE apiResponseMessageL #-}
+-- | 'apiResponseCode' Lens
+apiResponseCodeL :: Lens_' ApiResponse (Maybe Int)
+apiResponseCodeL f ApiResponse{..} = (\apiResponseCode -> ApiResponse { apiResponseCode, ..} ) <$> f apiResponseCode
+{-# INLINE apiResponseCodeL #-}
 
-
-
--- * ArrayOfArrayOfNumberOnly
-
--- | 'arrayOfArrayOfNumberOnlyArrayArrayNumber' Lens
-arrayOfArrayOfNumberOnlyArrayArrayNumberL :: Lens_' ArrayOfArrayOfNumberOnly (Maybe [[Double]])
-arrayOfArrayOfNumberOnlyArrayArrayNumberL f ArrayOfArrayOfNumberOnly{..} = (\arrayOfArrayOfNumberOnlyArrayArrayNumber -> ArrayOfArrayOfNumberOnly { arrayOfArrayOfNumberOnlyArrayArrayNumber, ..} ) <$> f arrayOfArrayOfNumberOnlyArrayArrayNumber
-{-# INLINE arrayOfArrayOfNumberOnlyArrayArrayNumberL #-}
-
+-- | 'apiResponseType' Lens
+apiResponseTypeL :: Lens_' ApiResponse (Maybe Text)
+apiResponseTypeL f ApiResponse{..} = (\apiResponseType -> ApiResponse { apiResponseType, ..} ) <$> f apiResponseType
+{-# INLINE apiResponseTypeL #-}
+
+-- | 'apiResponseMessage' Lens
+apiResponseMessageL :: Lens_' ApiResponse (Maybe Text)
+apiResponseMessageL f ApiResponse{..} = (\apiResponseMessage -> ApiResponse { apiResponseMessage, ..} ) <$> f apiResponseMessage
+{-# INLINE apiResponseMessageL #-}
 
 
--- * ArrayOfNumberOnly
-
--- | 'arrayOfNumberOnlyArrayNumber' Lens
-arrayOfNumberOnlyArrayNumberL :: Lens_' ArrayOfNumberOnly (Maybe [Double])
-arrayOfNumberOnlyArrayNumberL f ArrayOfNumberOnly{..} = (\arrayOfNumberOnlyArrayNumber -> ArrayOfNumberOnly { arrayOfNumberOnlyArrayNumber, ..} ) <$> f arrayOfNumberOnlyArrayNumber
-{-# INLINE arrayOfNumberOnlyArrayNumberL #-}
-
+
+-- * ArrayOfArrayOfNumberOnly
+
+-- | 'arrayOfArrayOfNumberOnlyArrayArrayNumber' Lens
+arrayOfArrayOfNumberOnlyArrayArrayNumberL :: Lens_' ArrayOfArrayOfNumberOnly (Maybe [[Double]])
+arrayOfArrayOfNumberOnlyArrayArrayNumberL f ArrayOfArrayOfNumberOnly{..} = (\arrayOfArrayOfNumberOnlyArrayArrayNumber -> ArrayOfArrayOfNumberOnly { arrayOfArrayOfNumberOnlyArrayArrayNumber, ..} ) <$> f arrayOfArrayOfNumberOnlyArrayArrayNumber
+{-# INLINE arrayOfArrayOfNumberOnlyArrayArrayNumberL #-}
 
 
--- * ArrayTest
-
--- | 'arrayTestArrayOfString' Lens
-arrayTestArrayOfStringL :: Lens_' ArrayTest (Maybe [Text])
-arrayTestArrayOfStringL f ArrayTest{..} = (\arrayTestArrayOfString -> ArrayTest { arrayTestArrayOfString, ..} ) <$> f arrayTestArrayOfString
-{-# INLINE arrayTestArrayOfStringL #-}
-
--- | 'arrayTestArrayArrayOfInteger' Lens
-arrayTestArrayArrayOfIntegerL :: Lens_' ArrayTest (Maybe [[Integer]])
-arrayTestArrayArrayOfIntegerL f ArrayTest{..} = (\arrayTestArrayArrayOfInteger -> ArrayTest { arrayTestArrayArrayOfInteger, ..} ) <$> f arrayTestArrayArrayOfInteger
-{-# INLINE arrayTestArrayArrayOfIntegerL #-}
+
+-- * ArrayOfNumberOnly
+
+-- | 'arrayOfNumberOnlyArrayNumber' Lens
+arrayOfNumberOnlyArrayNumberL :: Lens_' ArrayOfNumberOnly (Maybe [Double])
+arrayOfNumberOnlyArrayNumberL f ArrayOfNumberOnly{..} = (\arrayOfNumberOnlyArrayNumber -> ArrayOfNumberOnly { arrayOfNumberOnlyArrayNumber, ..} ) <$> f arrayOfNumberOnlyArrayNumber
+{-# INLINE arrayOfNumberOnlyArrayNumberL #-}
+
+
+
+-- * ArrayTest
 
--- | 'arrayTestArrayArrayOfModel' Lens
-arrayTestArrayArrayOfModelL :: Lens_' ArrayTest (Maybe [[ReadOnlyFirst]])
-arrayTestArrayArrayOfModelL f ArrayTest{..} = (\arrayTestArrayArrayOfModel -> ArrayTest { arrayTestArrayArrayOfModel, ..} ) <$> f arrayTestArrayArrayOfModel
-{-# INLINE arrayTestArrayArrayOfModelL #-}
+-- | 'arrayTestArrayOfString' Lens
+arrayTestArrayOfStringL :: Lens_' ArrayTest (Maybe [Text])
+arrayTestArrayOfStringL f ArrayTest{..} = (\arrayTestArrayOfString -> ArrayTest { arrayTestArrayOfString, ..} ) <$> f arrayTestArrayOfString
+{-# INLINE arrayTestArrayOfStringL #-}
 
-
-
--- * Capitalization
-
--- | 'capitalizationSmallCamel' Lens
-capitalizationSmallCamelL :: Lens_' Capitalization (Maybe Text)
-capitalizationSmallCamelL f Capitalization{..} = (\capitalizationSmallCamel -> Capitalization { capitalizationSmallCamel, ..} ) <$> f capitalizationSmallCamel
-{-# INLINE capitalizationSmallCamelL #-}
-
--- | 'capitalizationCapitalCamel' Lens
-capitalizationCapitalCamelL :: Lens_' Capitalization (Maybe Text)
-capitalizationCapitalCamelL f Capitalization{..} = (\capitalizationCapitalCamel -> Capitalization { capitalizationCapitalCamel, ..} ) <$> f capitalizationCapitalCamel
-{-# INLINE capitalizationCapitalCamelL #-}
+-- | 'arrayTestArrayArrayOfInteger' Lens
+arrayTestArrayArrayOfIntegerL :: Lens_' ArrayTest (Maybe [[Integer]])
+arrayTestArrayArrayOfIntegerL f ArrayTest{..} = (\arrayTestArrayArrayOfInteger -> ArrayTest { arrayTestArrayArrayOfInteger, ..} ) <$> f arrayTestArrayArrayOfInteger
+{-# INLINE arrayTestArrayArrayOfIntegerL #-}
+
+-- | 'arrayTestArrayArrayOfModel' Lens
+arrayTestArrayArrayOfModelL :: Lens_' ArrayTest (Maybe [[ReadOnlyFirst]])
+arrayTestArrayArrayOfModelL f ArrayTest{..} = (\arrayTestArrayArrayOfModel -> ArrayTest { arrayTestArrayArrayOfModel, ..} ) <$> f arrayTestArrayArrayOfModel
+{-# INLINE arrayTestArrayArrayOfModelL #-}
+
+
+
+-- * Capitalization
 
--- | 'capitalizationSmallSnake' Lens
-capitalizationSmallSnakeL :: Lens_' Capitalization (Maybe Text)
-capitalizationSmallSnakeL f Capitalization{..} = (\capitalizationSmallSnake -> Capitalization { capitalizationSmallSnake, ..} ) <$> f capitalizationSmallSnake
-{-# INLINE capitalizationSmallSnakeL #-}
+-- | 'capitalizationSmallCamel' Lens
+capitalizationSmallCamelL :: Lens_' Capitalization (Maybe Text)
+capitalizationSmallCamelL f Capitalization{..} = (\capitalizationSmallCamel -> Capitalization { capitalizationSmallCamel, ..} ) <$> f capitalizationSmallCamel
+{-# INLINE capitalizationSmallCamelL #-}
 
--- | 'capitalizationCapitalSnake' Lens
-capitalizationCapitalSnakeL :: Lens_' Capitalization (Maybe Text)
-capitalizationCapitalSnakeL f Capitalization{..} = (\capitalizationCapitalSnake -> Capitalization { capitalizationCapitalSnake, ..} ) <$> f capitalizationCapitalSnake
-{-# INLINE capitalizationCapitalSnakeL #-}
+-- | 'capitalizationCapitalCamel' Lens
+capitalizationCapitalCamelL :: Lens_' Capitalization (Maybe Text)
+capitalizationCapitalCamelL f Capitalization{..} = (\capitalizationCapitalCamel -> Capitalization { capitalizationCapitalCamel, ..} ) <$> f capitalizationCapitalCamel
+{-# INLINE capitalizationCapitalCamelL #-}
 
--- | 'capitalizationScaEthFlowPoints' Lens
-capitalizationScaEthFlowPointsL :: Lens_' Capitalization (Maybe Text)
-capitalizationScaEthFlowPointsL f Capitalization{..} = (\capitalizationScaEthFlowPoints -> Capitalization { capitalizationScaEthFlowPoints, ..} ) <$> f capitalizationScaEthFlowPoints
-{-# INLINE capitalizationScaEthFlowPointsL #-}
+-- | 'capitalizationSmallSnake' Lens
+capitalizationSmallSnakeL :: Lens_' Capitalization (Maybe Text)
+capitalizationSmallSnakeL f Capitalization{..} = (\capitalizationSmallSnake -> Capitalization { capitalizationSmallSnake, ..} ) <$> f capitalizationSmallSnake
+{-# INLINE capitalizationSmallSnakeL #-}
 
--- | 'capitalizationAttName' Lens
-capitalizationAttNameL :: Lens_' Capitalization (Maybe Text)
-capitalizationAttNameL f Capitalization{..} = (\capitalizationAttName -> Capitalization { capitalizationAttName, ..} ) <$> f capitalizationAttName
-{-# INLINE capitalizationAttNameL #-}
+-- | 'capitalizationCapitalSnake' Lens
+capitalizationCapitalSnakeL :: Lens_' Capitalization (Maybe Text)
+capitalizationCapitalSnakeL f Capitalization{..} = (\capitalizationCapitalSnake -> Capitalization { capitalizationCapitalSnake, ..} ) <$> f capitalizationCapitalSnake
+{-# INLINE capitalizationCapitalSnakeL #-}
 
-
-
--- * Category
-
--- | 'categoryId' Lens
-categoryIdL :: Lens_' Category (Maybe Integer)
-categoryIdL f Category{..} = (\categoryId -> Category { categoryId, ..} ) <$> f categoryId
-{-# INLINE categoryIdL #-}
-
--- | 'categoryName' Lens
-categoryNameL :: Lens_' Category (Maybe Text)
-categoryNameL f Category{..} = (\categoryName -> Category { categoryName, ..} ) <$> f categoryName
-{-# INLINE categoryNameL #-}
+-- | 'capitalizationScaEthFlowPoints' Lens
+capitalizationScaEthFlowPointsL :: Lens_' Capitalization (Maybe Text)
+capitalizationScaEthFlowPointsL f Capitalization{..} = (\capitalizationScaEthFlowPoints -> Capitalization { capitalizationScaEthFlowPoints, ..} ) <$> f capitalizationScaEthFlowPoints
+{-# INLINE capitalizationScaEthFlowPointsL #-}
+
+-- | 'capitalizationAttName' Lens
+capitalizationAttNameL :: Lens_' Capitalization (Maybe Text)
+capitalizationAttNameL f Capitalization{..} = (\capitalizationAttName -> Capitalization { capitalizationAttName, ..} ) <$> f capitalizationAttName
+{-# INLINE capitalizationAttNameL #-}
+
+
+
+-- * Category
 
-
-
--- * ClassModel
-
--- | 'classModelClass' Lens
-classModelClassL :: Lens_' ClassModel (Maybe Text)
-classModelClassL f ClassModel{..} = (\classModelClass -> ClassModel { classModelClass, ..} ) <$> f classModelClass
-{-# INLINE classModelClassL #-}
-
+-- | 'categoryId' Lens
+categoryIdL :: Lens_' Category (Maybe Integer)
+categoryIdL f Category{..} = (\categoryId -> Category { categoryId, ..} ) <$> f categoryId
+{-# INLINE categoryIdL #-}
+
+-- | 'categoryName' Lens
+categoryNameL :: Lens_' Category (Maybe Text)
+categoryNameL f Category{..} = (\categoryName -> Category { categoryName, ..} ) <$> f categoryName
+{-# INLINE categoryNameL #-}
 
 
--- * Client
-
--- | 'clientClient' Lens
-clientClientL :: Lens_' Client (Maybe Text)
-clientClientL f Client{..} = (\clientClient -> Client { clientClient, ..} ) <$> f clientClient
-{-# INLINE clientClientL #-}
-
+
+-- * ClassModel
+
+-- | 'classModelClass' Lens
+classModelClassL :: Lens_' ClassModel (Maybe Text)
+classModelClassL f ClassModel{..} = (\classModelClass -> ClassModel { classModelClass, ..} ) <$> f classModelClass
+{-# INLINE classModelClassL #-}
 
 
--- * EnumArrays
-
--- | 'enumArraysJustSymbol' Lens
-enumArraysJustSymbolL :: Lens_' EnumArrays (Maybe Text)
-enumArraysJustSymbolL f EnumArrays{..} = (\enumArraysJustSymbol -> EnumArrays { enumArraysJustSymbol, ..} ) <$> f enumArraysJustSymbol
-{-# INLINE enumArraysJustSymbolL #-}
-
--- | 'enumArraysArrayEnum' Lens
-enumArraysArrayEnumL :: Lens_' EnumArrays (Maybe [Text])
-enumArraysArrayEnumL f EnumArrays{..} = (\enumArraysArrayEnum -> EnumArrays { enumArraysArrayEnum, ..} ) <$> f enumArraysArrayEnum
-{-# INLINE enumArraysArrayEnumL #-}
+
+-- * Client
+
+-- | 'clientClient' Lens
+clientClientL :: Lens_' Client (Maybe Text)
+clientClientL f Client{..} = (\clientClient -> Client { clientClient, ..} ) <$> f clientClient
+{-# INLINE clientClientL #-}
+
+
+
+-- * EnumArrays
 
-
-
--- * EnumClass
-
+-- | 'enumArraysJustSymbol' Lens
+enumArraysJustSymbolL :: Lens_' EnumArrays (Maybe Text)
+enumArraysJustSymbolL f EnumArrays{..} = (\enumArraysJustSymbol -> EnumArrays { enumArraysJustSymbol, ..} ) <$> f enumArraysJustSymbol
+{-# INLINE enumArraysJustSymbolL #-}
 
-
--- * EnumTest
-
--- | 'enumTestEnumString' Lens
-enumTestEnumStringL :: Lens_' EnumTest (Maybe Text)
-enumTestEnumStringL f EnumTest{..} = (\enumTestEnumString -> EnumTest { enumTestEnumString, ..} ) <$> f enumTestEnumString
-{-# INLINE enumTestEnumStringL #-}
-
--- | 'enumTestEnumInteger' Lens
-enumTestEnumIntegerL :: Lens_' EnumTest (Maybe Int)
-enumTestEnumIntegerL f EnumTest{..} = (\enumTestEnumInteger -> EnumTest { enumTestEnumInteger, ..} ) <$> f enumTestEnumInteger
-{-# INLINE enumTestEnumIntegerL #-}
+-- | 'enumArraysArrayEnum' Lens
+enumArraysArrayEnumL :: Lens_' EnumArrays (Maybe [Text])
+enumArraysArrayEnumL f EnumArrays{..} = (\enumArraysArrayEnum -> EnumArrays { enumArraysArrayEnum, ..} ) <$> f enumArraysArrayEnum
+{-# INLINE enumArraysArrayEnumL #-}
+
+
+
+-- * EnumClass
+
+
+
+-- * EnumTest
 
--- | 'enumTestEnumNumber' Lens
-enumTestEnumNumberL :: Lens_' EnumTest (Maybe Double)
-enumTestEnumNumberL f EnumTest{..} = (\enumTestEnumNumber -> EnumTest { enumTestEnumNumber, ..} ) <$> f enumTestEnumNumber
-{-# INLINE enumTestEnumNumberL #-}
+-- | 'enumTestEnumString' Lens
+enumTestEnumStringL :: Lens_' EnumTest (Maybe Text)
+enumTestEnumStringL f EnumTest{..} = (\enumTestEnumString -> EnumTest { enumTestEnumString, ..} ) <$> f enumTestEnumString
+{-# INLINE enumTestEnumStringL #-}
 
--- | 'enumTestOuterEnum' Lens
-enumTestOuterEnumL :: Lens_' EnumTest (Maybe OuterEnum)
-enumTestOuterEnumL f EnumTest{..} = (\enumTestOuterEnum -> EnumTest { enumTestOuterEnum, ..} ) <$> f enumTestOuterEnum
-{-# INLINE enumTestOuterEnumL #-}
+-- | 'enumTestEnumInteger' Lens
+enumTestEnumIntegerL :: Lens_' EnumTest (Maybe Int)
+enumTestEnumIntegerL f EnumTest{..} = (\enumTestEnumInteger -> EnumTest { enumTestEnumInteger, ..} ) <$> f enumTestEnumInteger
+{-# INLINE enumTestEnumIntegerL #-}
 
-
-
--- * FormatTest
-
--- | 'formatTestInteger' Lens
-formatTestIntegerL :: Lens_' FormatTest (Maybe Int)
-formatTestIntegerL f FormatTest{..} = (\formatTestInteger -> FormatTest { formatTestInteger, ..} ) <$> f formatTestInteger
-{-# INLINE formatTestIntegerL #-}
-
--- | 'formatTestInt32' Lens
-formatTestInt32L :: Lens_' FormatTest (Maybe Int)
-formatTestInt32L f FormatTest{..} = (\formatTestInt32 -> FormatTest { formatTestInt32, ..} ) <$> f formatTestInt32
-{-# INLINE formatTestInt32L #-}
+-- | 'enumTestEnumNumber' Lens
+enumTestEnumNumberL :: Lens_' EnumTest (Maybe Double)
+enumTestEnumNumberL f EnumTest{..} = (\enumTestEnumNumber -> EnumTest { enumTestEnumNumber, ..} ) <$> f enumTestEnumNumber
+{-# INLINE enumTestEnumNumberL #-}
+
+-- | 'enumTestOuterEnum' Lens
+enumTestOuterEnumL :: Lens_' EnumTest (Maybe OuterEnum)
+enumTestOuterEnumL f EnumTest{..} = (\enumTestOuterEnum -> EnumTest { enumTestOuterEnum, ..} ) <$> f enumTestOuterEnum
+{-# INLINE enumTestOuterEnumL #-}
+
+
+
+-- * FormatTest
 
--- | 'formatTestInt64' Lens
-formatTestInt64L :: Lens_' FormatTest (Maybe Integer)
-formatTestInt64L f FormatTest{..} = (\formatTestInt64 -> FormatTest { formatTestInt64, ..} ) <$> f formatTestInt64
-{-# INLINE formatTestInt64L #-}
+-- | 'formatTestInteger' Lens
+formatTestIntegerL :: Lens_' FormatTest (Maybe Int)
+formatTestIntegerL f FormatTest{..} = (\formatTestInteger -> FormatTest { formatTestInteger, ..} ) <$> f formatTestInteger
+{-# INLINE formatTestIntegerL #-}
 
--- | 'formatTestNumber' Lens
-formatTestNumberL :: Lens_' FormatTest (Double)
-formatTestNumberL f FormatTest{..} = (\formatTestNumber -> FormatTest { formatTestNumber, ..} ) <$> f formatTestNumber
-{-# INLINE formatTestNumberL #-}
+-- | 'formatTestInt32' Lens
+formatTestInt32L :: Lens_' FormatTest (Maybe Int)
+formatTestInt32L f FormatTest{..} = (\formatTestInt32 -> FormatTest { formatTestInt32, ..} ) <$> f formatTestInt32
+{-# INLINE formatTestInt32L #-}
 
--- | 'formatTestFloat' Lens
-formatTestFloatL :: Lens_' FormatTest (Maybe Float)
-formatTestFloatL f FormatTest{..} = (\formatTestFloat -> FormatTest { formatTestFloat, ..} ) <$> f formatTestFloat
-{-# INLINE formatTestFloatL #-}
+-- | 'formatTestInt64' Lens
+formatTestInt64L :: Lens_' FormatTest (Maybe Integer)
+formatTestInt64L f FormatTest{..} = (\formatTestInt64 -> FormatTest { formatTestInt64, ..} ) <$> f formatTestInt64
+{-# INLINE formatTestInt64L #-}
 
--- | 'formatTestDouble' Lens
-formatTestDoubleL :: Lens_' FormatTest (Maybe Double)
-formatTestDoubleL f FormatTest{..} = (\formatTestDouble -> FormatTest { formatTestDouble, ..} ) <$> f formatTestDouble
-{-# INLINE formatTestDoubleL #-}
+-- | 'formatTestNumber' Lens
+formatTestNumberL :: Lens_' FormatTest (Double)
+formatTestNumberL f FormatTest{..} = (\formatTestNumber -> FormatTest { formatTestNumber, ..} ) <$> f formatTestNumber
+{-# INLINE formatTestNumberL #-}
 
--- | 'formatTestString' Lens
-formatTestStringL :: Lens_' FormatTest (Maybe Text)
-formatTestStringL f FormatTest{..} = (\formatTestString -> FormatTest { formatTestString, ..} ) <$> f formatTestString
-{-# INLINE formatTestStringL #-}
+-- | 'formatTestFloat' Lens
+formatTestFloatL :: Lens_' FormatTest (Maybe Float)
+formatTestFloatL f FormatTest{..} = (\formatTestFloat -> FormatTest { formatTestFloat, ..} ) <$> f formatTestFloat
+{-# INLINE formatTestFloatL #-}
 
--- | 'formatTestByte' Lens
-formatTestByteL :: Lens_' FormatTest (ByteArray)
-formatTestByteL f FormatTest{..} = (\formatTestByte -> FormatTest { formatTestByte, ..} ) <$> f formatTestByte
-{-# INLINE formatTestByteL #-}
+-- | 'formatTestDouble' Lens
+formatTestDoubleL :: Lens_' FormatTest (Maybe Double)
+formatTestDoubleL f FormatTest{..} = (\formatTestDouble -> FormatTest { formatTestDouble, ..} ) <$> f formatTestDouble
+{-# INLINE formatTestDoubleL #-}
 
--- | 'formatTestBinary' Lens
-formatTestBinaryL :: Lens_' FormatTest (Maybe Binary)
-formatTestBinaryL f FormatTest{..} = (\formatTestBinary -> FormatTest { formatTestBinary, ..} ) <$> f formatTestBinary
-{-# INLINE formatTestBinaryL #-}
+-- | 'formatTestString' Lens
+formatTestStringL :: Lens_' FormatTest (Maybe Text)
+formatTestStringL f FormatTest{..} = (\formatTestString -> FormatTest { formatTestString, ..} ) <$> f formatTestString
+{-# INLINE formatTestStringL #-}
 
--- | 'formatTestDate' Lens
-formatTestDateL :: Lens_' FormatTest (Date)
-formatTestDateL f FormatTest{..} = (\formatTestDate -> FormatTest { formatTestDate, ..} ) <$> f formatTestDate
-{-# INLINE formatTestDateL #-}
+-- | 'formatTestByte' Lens
+formatTestByteL :: Lens_' FormatTest (ByteArray)
+formatTestByteL f FormatTest{..} = (\formatTestByte -> FormatTest { formatTestByte, ..} ) <$> f formatTestByte
+{-# INLINE formatTestByteL #-}
 
--- | 'formatTestDateTime' Lens
-formatTestDateTimeL :: Lens_' FormatTest (Maybe DateTime)
-formatTestDateTimeL f FormatTest{..} = (\formatTestDateTime -> FormatTest { formatTestDateTime, ..} ) <$> f formatTestDateTime
-{-# INLINE formatTestDateTimeL #-}
+-- | 'formatTestBinary' Lens
+formatTestBinaryL :: Lens_' FormatTest (Maybe Binary)
+formatTestBinaryL f FormatTest{..} = (\formatTestBinary -> FormatTest { formatTestBinary, ..} ) <$> f formatTestBinary
+{-# INLINE formatTestBinaryL #-}
 
--- | 'formatTestUuid' Lens
-formatTestUuidL :: Lens_' FormatTest (Maybe Text)
-formatTestUuidL f FormatTest{..} = (\formatTestUuid -> FormatTest { formatTestUuid, ..} ) <$> f formatTestUuid
-{-# INLINE formatTestUuidL #-}
+-- | 'formatTestDate' Lens
+formatTestDateL :: Lens_' FormatTest (Date)
+formatTestDateL f FormatTest{..} = (\formatTestDate -> FormatTest { formatTestDate, ..} ) <$> f formatTestDate
+{-# INLINE formatTestDateL #-}
 
--- | 'formatTestPassword' Lens
-formatTestPasswordL :: Lens_' FormatTest (Text)
-formatTestPasswordL f FormatTest{..} = (\formatTestPassword -> FormatTest { formatTestPassword, ..} ) <$> f formatTestPassword
-{-# INLINE formatTestPasswordL #-}
+-- | 'formatTestDateTime' Lens
+formatTestDateTimeL :: Lens_' FormatTest (Maybe DateTime)
+formatTestDateTimeL f FormatTest{..} = (\formatTestDateTime -> FormatTest { formatTestDateTime, ..} ) <$> f formatTestDateTime
+{-# INLINE formatTestDateTimeL #-}
 
-
-
--- * HasOnlyReadOnly
-
--- | 'hasOnlyReadOnlyBar' Lens
-hasOnlyReadOnlyBarL :: Lens_' HasOnlyReadOnly (Maybe Text)
-hasOnlyReadOnlyBarL f HasOnlyReadOnly{..} = (\hasOnlyReadOnlyBar -> HasOnlyReadOnly { hasOnlyReadOnlyBar, ..} ) <$> f hasOnlyReadOnlyBar
-{-# INLINE hasOnlyReadOnlyBarL #-}
-
--- | 'hasOnlyReadOnlyFoo' Lens
-hasOnlyReadOnlyFooL :: Lens_' HasOnlyReadOnly (Maybe Text)
-hasOnlyReadOnlyFooL f HasOnlyReadOnly{..} = (\hasOnlyReadOnlyFoo -> HasOnlyReadOnly { hasOnlyReadOnlyFoo, ..} ) <$> f hasOnlyReadOnlyFoo
-{-# INLINE hasOnlyReadOnlyFooL #-}
+-- | 'formatTestUuid' Lens
+formatTestUuidL :: Lens_' FormatTest (Maybe Text)
+formatTestUuidL f FormatTest{..} = (\formatTestUuid -> FormatTest { formatTestUuid, ..} ) <$> f formatTestUuid
+{-# INLINE formatTestUuidL #-}
+
+-- | 'formatTestPassword' Lens
+formatTestPasswordL :: Lens_' FormatTest (Text)
+formatTestPasswordL f FormatTest{..} = (\formatTestPassword -> FormatTest { formatTestPassword, ..} ) <$> f formatTestPassword
+{-# INLINE formatTestPasswordL #-}
+
+
+
+-- * HasOnlyReadOnly
 
-
-
--- * MapTest
-
--- | 'mapTestMapMapOfString' Lens
-mapTestMapMapOfStringL :: Lens_' MapTest (Maybe (Map.Map String (Map.Map String Text)))
-mapTestMapMapOfStringL f MapTest{..} = (\mapTestMapMapOfString -> MapTest { mapTestMapMapOfString, ..} ) <$> f mapTestMapMapOfString
-{-# INLINE mapTestMapMapOfStringL #-}
-
--- | 'mapTestMapOfEnumString' Lens
-mapTestMapOfEnumStringL :: Lens_' MapTest (Maybe (Map.Map String Text))
-mapTestMapOfEnumStringL f MapTest{..} = (\mapTestMapOfEnumString -> MapTest { mapTestMapOfEnumString, ..} ) <$> f mapTestMapOfEnumString
-{-# INLINE mapTestMapOfEnumStringL #-}
+-- | 'hasOnlyReadOnlyBar' Lens
+hasOnlyReadOnlyBarL :: Lens_' HasOnlyReadOnly (Maybe Text)
+hasOnlyReadOnlyBarL f HasOnlyReadOnly{..} = (\hasOnlyReadOnlyBar -> HasOnlyReadOnly { hasOnlyReadOnlyBar, ..} ) <$> f hasOnlyReadOnlyBar
+{-# INLINE hasOnlyReadOnlyBarL #-}
+
+-- | 'hasOnlyReadOnlyFoo' Lens
+hasOnlyReadOnlyFooL :: Lens_' HasOnlyReadOnly (Maybe Text)
+hasOnlyReadOnlyFooL f HasOnlyReadOnly{..} = (\hasOnlyReadOnlyFoo -> HasOnlyReadOnly { hasOnlyReadOnlyFoo, ..} ) <$> f hasOnlyReadOnlyFoo
+{-# INLINE hasOnlyReadOnlyFooL #-}
+
+
+
+-- * MapTest
 
-
-
--- * MixedPropertiesAndAdditionalPropertiesClass
-
--- | 'mixedPropertiesAndAdditionalPropertiesClassUuid' Lens
-mixedPropertiesAndAdditionalPropertiesClassUuidL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe Text)
-mixedPropertiesAndAdditionalPropertiesClassUuidL f MixedPropertiesAndAdditionalPropertiesClass{..} = (\mixedPropertiesAndAdditionalPropertiesClassUuid -> MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassUuid, ..} ) <$> f mixedPropertiesAndAdditionalPropertiesClassUuid
-{-# INLINE mixedPropertiesAndAdditionalPropertiesClassUuidL #-}
-
--- | 'mixedPropertiesAndAdditionalPropertiesClassDateTime' Lens
-mixedPropertiesAndAdditionalPropertiesClassDateTimeL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe DateTime)
-mixedPropertiesAndAdditionalPropertiesClassDateTimeL f MixedPropertiesAndAdditionalPropertiesClass{..} = (\mixedPropertiesAndAdditionalPropertiesClassDateTime -> MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassDateTime, ..} ) <$> f mixedPropertiesAndAdditionalPropertiesClassDateTime
-{-# INLINE mixedPropertiesAndAdditionalPropertiesClassDateTimeL #-}
+-- | 'mapTestMapMapOfString' Lens
+mapTestMapMapOfStringL :: Lens_' MapTest (Maybe (Map.Map String (Map.Map String Text)))
+mapTestMapMapOfStringL f MapTest{..} = (\mapTestMapMapOfString -> MapTest { mapTestMapMapOfString, ..} ) <$> f mapTestMapMapOfString
+{-# INLINE mapTestMapMapOfStringL #-}
+
+-- | 'mapTestMapOfEnumString' Lens
+mapTestMapOfEnumStringL :: Lens_' MapTest (Maybe (Map.Map String Text))
+mapTestMapOfEnumStringL f MapTest{..} = (\mapTestMapOfEnumString -> MapTest { mapTestMapOfEnumString, ..} ) <$> f mapTestMapOfEnumString
+{-# INLINE mapTestMapOfEnumStringL #-}
+
+
+
+-- * MixedPropertiesAndAdditionalPropertiesClass
 
--- | 'mixedPropertiesAndAdditionalPropertiesClassMap' Lens
-mixedPropertiesAndAdditionalPropertiesClassMapL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe (Map.Map String Animal))
-mixedPropertiesAndAdditionalPropertiesClassMapL f MixedPropertiesAndAdditionalPropertiesClass{..} = (\mixedPropertiesAndAdditionalPropertiesClassMap -> MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassMap, ..} ) <$> f mixedPropertiesAndAdditionalPropertiesClassMap
-{-# INLINE mixedPropertiesAndAdditionalPropertiesClassMapL #-}
+-- | 'mixedPropertiesAndAdditionalPropertiesClassUuid' Lens
+mixedPropertiesAndAdditionalPropertiesClassUuidL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe Text)
+mixedPropertiesAndAdditionalPropertiesClassUuidL f MixedPropertiesAndAdditionalPropertiesClass{..} = (\mixedPropertiesAndAdditionalPropertiesClassUuid -> MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassUuid, ..} ) <$> f mixedPropertiesAndAdditionalPropertiesClassUuid
+{-# INLINE mixedPropertiesAndAdditionalPropertiesClassUuidL #-}
 
-
-
--- * Model200Response
-
--- | 'model200ResponseName' Lens
-model200ResponseNameL :: Lens_' Model200Response (Maybe Int)
-model200ResponseNameL f Model200Response{..} = (\model200ResponseName -> Model200Response { model200ResponseName, ..} ) <$> f model200ResponseName
-{-# INLINE model200ResponseNameL #-}
-
--- | 'model200ResponseClass' Lens
-model200ResponseClassL :: Lens_' Model200Response (Maybe Text)
-model200ResponseClassL f Model200Response{..} = (\model200ResponseClass -> Model200Response { model200ResponseClass, ..} ) <$> f model200ResponseClass
-{-# INLINE model200ResponseClassL #-}
+-- | 'mixedPropertiesAndAdditionalPropertiesClassDateTime' Lens
+mixedPropertiesAndAdditionalPropertiesClassDateTimeL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe DateTime)
+mixedPropertiesAndAdditionalPropertiesClassDateTimeL f MixedPropertiesAndAdditionalPropertiesClass{..} = (\mixedPropertiesAndAdditionalPropertiesClassDateTime -> MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassDateTime, ..} ) <$> f mixedPropertiesAndAdditionalPropertiesClassDateTime
+{-# INLINE mixedPropertiesAndAdditionalPropertiesClassDateTimeL #-}
+
+-- | 'mixedPropertiesAndAdditionalPropertiesClassMap' Lens
+mixedPropertiesAndAdditionalPropertiesClassMapL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe (Map.Map String Animal))
+mixedPropertiesAndAdditionalPropertiesClassMapL f MixedPropertiesAndAdditionalPropertiesClass{..} = (\mixedPropertiesAndAdditionalPropertiesClassMap -> MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassMap, ..} ) <$> f mixedPropertiesAndAdditionalPropertiesClassMap
+{-# INLINE mixedPropertiesAndAdditionalPropertiesClassMapL #-}
+
+
+
+-- * Model200Response
 
-
-
--- * ModelList
-
--- | 'modelList123List' Lens
-modelList123ListL :: Lens_' ModelList (Maybe Text)
-modelList123ListL f ModelList{..} = (\modelList123List -> ModelList { modelList123List, ..} ) <$> f modelList123List
-{-# INLINE modelList123ListL #-}
-
+-- | 'model200ResponseName' Lens
+model200ResponseNameL :: Lens_' Model200Response (Maybe Int)
+model200ResponseNameL f Model200Response{..} = (\model200ResponseName -> Model200Response { model200ResponseName, ..} ) <$> f model200ResponseName
+{-# INLINE model200ResponseNameL #-}
+
+-- | 'model200ResponseClass' Lens
+model200ResponseClassL :: Lens_' Model200Response (Maybe Text)
+model200ResponseClassL f Model200Response{..} = (\model200ResponseClass -> Model200Response { model200ResponseClass, ..} ) <$> f model200ResponseClass
+{-# INLINE model200ResponseClassL #-}
 
 
--- * ModelReturn
-
--- | 'modelReturnReturn' Lens
-modelReturnReturnL :: Lens_' ModelReturn (Maybe Int)
-modelReturnReturnL f ModelReturn{..} = (\modelReturnReturn -> ModelReturn { modelReturnReturn, ..} ) <$> f modelReturnReturn
-{-# INLINE modelReturnReturnL #-}
-
+
+-- * ModelList
+
+-- | 'modelList123List' Lens
+modelList123ListL :: Lens_' ModelList (Maybe Text)
+modelList123ListL f ModelList{..} = (\modelList123List -> ModelList { modelList123List, ..} ) <$> f modelList123List
+{-# INLINE modelList123ListL #-}
 
 
--- * Name
-
--- | 'nameName' Lens
-nameNameL :: Lens_' Name (Int)
-nameNameL f Name{..} = (\nameName -> Name { nameName, ..} ) <$> f nameName
-{-# INLINE nameNameL #-}
-
--- | 'nameSnakeCase' Lens
-nameSnakeCaseL :: Lens_' Name (Maybe Int)
-nameSnakeCaseL f Name{..} = (\nameSnakeCase -> Name { nameSnakeCase, ..} ) <$> f nameSnakeCase
-{-# INLINE nameSnakeCaseL #-}
+
+-- * ModelReturn
+
+-- | 'modelReturnReturn' Lens
+modelReturnReturnL :: Lens_' ModelReturn (Maybe Int)
+modelReturnReturnL f ModelReturn{..} = (\modelReturnReturn -> ModelReturn { modelReturnReturn, ..} ) <$> f modelReturnReturn
+{-# INLINE modelReturnReturnL #-}
+
+
+
+-- * Name
 
--- | 'nameProperty' Lens
-namePropertyL :: Lens_' Name (Maybe Text)
-namePropertyL f Name{..} = (\nameProperty -> Name { nameProperty, ..} ) <$> f nameProperty
-{-# INLINE namePropertyL #-}
+-- | 'nameName' Lens
+nameNameL :: Lens_' Name (Int)
+nameNameL f Name{..} = (\nameName -> Name { nameName, ..} ) <$> f nameName
+{-# INLINE nameNameL #-}
 
--- | 'name123Number' Lens
-name123NumberL :: Lens_' Name (Maybe Int)
-name123NumberL f Name{..} = (\name123Number -> Name { name123Number, ..} ) <$> f name123Number
-{-# INLINE name123NumberL #-}
+-- | 'nameSnakeCase' Lens
+nameSnakeCaseL :: Lens_' Name (Maybe Int)
+nameSnakeCaseL f Name{..} = (\nameSnakeCase -> Name { nameSnakeCase, ..} ) <$> f nameSnakeCase
+{-# INLINE nameSnakeCaseL #-}
 
-
-
--- * NumberOnly
-
--- | 'numberOnlyJustNumber' Lens
-numberOnlyJustNumberL :: Lens_' NumberOnly (Maybe Double)
-numberOnlyJustNumberL f NumberOnly{..} = (\numberOnlyJustNumber -> NumberOnly { numberOnlyJustNumber, ..} ) <$> f numberOnlyJustNumber
-{-# INLINE numberOnlyJustNumberL #-}
-
+-- | 'nameProperty' Lens
+namePropertyL :: Lens_' Name (Maybe Text)
+namePropertyL f Name{..} = (\nameProperty -> Name { nameProperty, ..} ) <$> f nameProperty
+{-# INLINE namePropertyL #-}
+
+-- | 'name123Number' Lens
+name123NumberL :: Lens_' Name (Maybe Int)
+name123NumberL f Name{..} = (\name123Number -> Name { name123Number, ..} ) <$> f name123Number
+{-# INLINE name123NumberL #-}
 
 
--- * Order
-
--- | 'orderId' Lens
-orderIdL :: Lens_' Order (Maybe Integer)
-orderIdL f Order{..} = (\orderId -> Order { orderId, ..} ) <$> f orderId
-{-# INLINE orderIdL #-}
-
--- | 'orderPetId' Lens
-orderPetIdL :: Lens_' Order (Maybe Integer)
-orderPetIdL f Order{..} = (\orderPetId -> Order { orderPetId, ..} ) <$> f orderPetId
-{-# INLINE orderPetIdL #-}
+
+-- * NumberOnly
+
+-- | 'numberOnlyJustNumber' Lens
+numberOnlyJustNumberL :: Lens_' NumberOnly (Maybe Double)
+numberOnlyJustNumberL f NumberOnly{..} = (\numberOnlyJustNumber -> NumberOnly { numberOnlyJustNumber, ..} ) <$> f numberOnlyJustNumber
+{-# INLINE numberOnlyJustNumberL #-}
+
+
+
+-- * Order
 
--- | 'orderQuantity' Lens
-orderQuantityL :: Lens_' Order (Maybe Int)
-orderQuantityL f Order{..} = (\orderQuantity -> Order { orderQuantity, ..} ) <$> f orderQuantity
-{-# INLINE orderQuantityL #-}
+-- | 'orderId' Lens
+orderIdL :: Lens_' Order (Maybe Integer)
+orderIdL f Order{..} = (\orderId -> Order { orderId, ..} ) <$> f orderId
+{-# INLINE orderIdL #-}
 
--- | 'orderShipDate' Lens
-orderShipDateL :: Lens_' Order (Maybe DateTime)
-orderShipDateL f Order{..} = (\orderShipDate -> Order { orderShipDate, ..} ) <$> f orderShipDate
-{-# INLINE orderShipDateL #-}
+-- | 'orderPetId' Lens
+orderPetIdL :: Lens_' Order (Maybe Integer)
+orderPetIdL f Order{..} = (\orderPetId -> Order { orderPetId, ..} ) <$> f orderPetId
+{-# INLINE orderPetIdL #-}
 
--- | 'orderStatus' Lens
-orderStatusL :: Lens_' Order (Maybe Text)
-orderStatusL f Order{..} = (\orderStatus -> Order { orderStatus, ..} ) <$> f orderStatus
-{-# INLINE orderStatusL #-}
+-- | 'orderQuantity' Lens
+orderQuantityL :: Lens_' Order (Maybe Int)
+orderQuantityL f Order{..} = (\orderQuantity -> Order { orderQuantity, ..} ) <$> f orderQuantity
+{-# INLINE orderQuantityL #-}
 
--- | 'orderComplete' Lens
-orderCompleteL :: Lens_' Order (Maybe Bool)
-orderCompleteL f Order{..} = (\orderComplete -> Order { orderComplete, ..} ) <$> f orderComplete
-{-# INLINE orderCompleteL #-}
+-- | 'orderShipDate' Lens
+orderShipDateL :: Lens_' Order (Maybe DateTime)
+orderShipDateL f Order{..} = (\orderShipDate -> Order { orderShipDate, ..} ) <$> f orderShipDate
+{-# INLINE orderShipDateL #-}
 
-
-
--- * OuterBoolean
-
+-- | 'orderStatus' Lens
+orderStatusL :: Lens_' Order (Maybe Text)
+orderStatusL f Order{..} = (\orderStatus -> Order { orderStatus, ..} ) <$> f orderStatus
+{-# INLINE orderStatusL #-}
 
-
--- * OuterComposite
-
--- | 'outerCompositeMyNumber' Lens
-outerCompositeMyNumberL :: Lens_' OuterComposite (Maybe OuterNumber)
-outerCompositeMyNumberL f OuterComposite{..} = (\outerCompositeMyNumber -> OuterComposite { outerCompositeMyNumber, ..} ) <$> f outerCompositeMyNumber
-{-# INLINE outerCompositeMyNumberL #-}
-
--- | 'outerCompositeMyString' Lens
-outerCompositeMyStringL :: Lens_' OuterComposite (Maybe OuterString)
-outerCompositeMyStringL f OuterComposite{..} = (\outerCompositeMyString -> OuterComposite { outerCompositeMyString, ..} ) <$> f outerCompositeMyString
-{-# INLINE outerCompositeMyStringL #-}
+-- | 'orderComplete' Lens
+orderCompleteL :: Lens_' Order (Maybe Bool)
+orderCompleteL f Order{..} = (\orderComplete -> Order { orderComplete, ..} ) <$> f orderComplete
+{-# INLINE orderCompleteL #-}
+
+
+
+-- * OuterBoolean
+
+
+
+-- * OuterComposite
 
--- | 'outerCompositeMyBoolean' Lens
-outerCompositeMyBooleanL :: Lens_' OuterComposite (Maybe OuterBoolean)
-outerCompositeMyBooleanL f OuterComposite{..} = (\outerCompositeMyBoolean -> OuterComposite { outerCompositeMyBoolean, ..} ) <$> f outerCompositeMyBoolean
-{-# INLINE outerCompositeMyBooleanL #-}
+-- | 'outerCompositeMyNumber' Lens
+outerCompositeMyNumberL :: Lens_' OuterComposite (Maybe OuterNumber)
+outerCompositeMyNumberL f OuterComposite{..} = (\outerCompositeMyNumber -> OuterComposite { outerCompositeMyNumber, ..} ) <$> f outerCompositeMyNumber
+{-# INLINE outerCompositeMyNumberL #-}
 
-
-
--- * OuterEnum
-
+-- | 'outerCompositeMyString' Lens
+outerCompositeMyStringL :: Lens_' OuterComposite (Maybe OuterString)
+outerCompositeMyStringL f OuterComposite{..} = (\outerCompositeMyString -> OuterComposite { outerCompositeMyString, ..} ) <$> f outerCompositeMyString
+{-# INLINE outerCompositeMyStringL #-}
 
-
--- * OuterNumber
-
-
+-- | 'outerCompositeMyBoolean' Lens
+outerCompositeMyBooleanL :: Lens_' OuterComposite (Maybe OuterBoolean)
+outerCompositeMyBooleanL f OuterComposite{..} = (\outerCompositeMyBoolean -> OuterComposite { outerCompositeMyBoolean, ..} ) <$> f outerCompositeMyBoolean
+{-# INLINE outerCompositeMyBooleanL #-}
 
--- * OuterString
+
 
-
+-- * OuterEnum
 
--- * Pet
+
 
--- | 'petId' Lens
-petIdL :: Lens_' Pet (Maybe Integer)
-petIdL f Pet{..} = (\petId -> Pet { petId, ..} ) <$> f petId
-{-# INLINE petIdL #-}
-
--- | 'petCategory' Lens
-petCategoryL :: Lens_' Pet (Maybe Category)
-petCategoryL f Pet{..} = (\petCategory -> Pet { petCategory, ..} ) <$> f petCategory
-{-# INLINE petCategoryL #-}
+-- * OuterNumber
+
+
+
+-- * OuterString
+
+
+
+-- * Pet
 
--- | 'petName' Lens
-petNameL :: Lens_' Pet (Text)
-petNameL f Pet{..} = (\petName -> Pet { petName, ..} ) <$> f petName
-{-# INLINE petNameL #-}
+-- | 'petId' Lens
+petIdL :: Lens_' Pet (Maybe Integer)
+petIdL f Pet{..} = (\petId -> Pet { petId, ..} ) <$> f petId
+{-# INLINE petIdL #-}
 
--- | 'petPhotoUrls' Lens
-petPhotoUrlsL :: Lens_' Pet ([Text])
-petPhotoUrlsL f Pet{..} = (\petPhotoUrls -> Pet { petPhotoUrls, ..} ) <$> f petPhotoUrls
-{-# INLINE petPhotoUrlsL #-}
+-- | 'petCategory' Lens
+petCategoryL :: Lens_' Pet (Maybe Category)
+petCategoryL f Pet{..} = (\petCategory -> Pet { petCategory, ..} ) <$> f petCategory
+{-# INLINE petCategoryL #-}
 
--- | 'petTags' Lens
-petTagsL :: Lens_' Pet (Maybe [Tag])
-petTagsL f Pet{..} = (\petTags -> Pet { petTags, ..} ) <$> f petTags
-{-# INLINE petTagsL #-}
+-- | 'petName' Lens
+petNameL :: Lens_' Pet (Text)
+petNameL f Pet{..} = (\petName -> Pet { petName, ..} ) <$> f petName
+{-# INLINE petNameL #-}
 
--- | 'petStatus' Lens
-petStatusL :: Lens_' Pet (Maybe Text)
-petStatusL f Pet{..} = (\petStatus -> Pet { petStatus, ..} ) <$> f petStatus
-{-# INLINE petStatusL #-}
+-- | 'petPhotoUrls' Lens
+petPhotoUrlsL :: Lens_' Pet ([Text])
+petPhotoUrlsL f Pet{..} = (\petPhotoUrls -> Pet { petPhotoUrls, ..} ) <$> f petPhotoUrls
+{-# INLINE petPhotoUrlsL #-}
 
-
-
--- * ReadOnlyFirst
-
--- | 'readOnlyFirstBar' Lens
-readOnlyFirstBarL :: Lens_' ReadOnlyFirst (Maybe Text)
-readOnlyFirstBarL f ReadOnlyFirst{..} = (\readOnlyFirstBar -> ReadOnlyFirst { readOnlyFirstBar, ..} ) <$> f readOnlyFirstBar
-{-# INLINE readOnlyFirstBarL #-}
-
--- | 'readOnlyFirstBaz' Lens
-readOnlyFirstBazL :: Lens_' ReadOnlyFirst (Maybe Text)
-readOnlyFirstBazL f ReadOnlyFirst{..} = (\readOnlyFirstBaz -> ReadOnlyFirst { readOnlyFirstBaz, ..} ) <$> f readOnlyFirstBaz
-{-# INLINE readOnlyFirstBazL #-}
+-- | 'petTags' Lens
+petTagsL :: Lens_' Pet (Maybe [Tag])
+petTagsL f Pet{..} = (\petTags -> Pet { petTags, ..} ) <$> f petTags
+{-# INLINE petTagsL #-}
+
+-- | 'petStatus' Lens
+petStatusL :: Lens_' Pet (Maybe Text)
+petStatusL f Pet{..} = (\petStatus -> Pet { petStatus, ..} ) <$> f petStatus
+{-# INLINE petStatusL #-}
+
+
+
+-- * ReadOnlyFirst
 
-
-
--- * SpecialModelName
-
--- | 'specialModelNameSpecialPropertyName' Lens
-specialModelNameSpecialPropertyNameL :: Lens_' SpecialModelName (Maybe Integer)
-specialModelNameSpecialPropertyNameL f SpecialModelName{..} = (\specialModelNameSpecialPropertyName -> SpecialModelName { specialModelNameSpecialPropertyName, ..} ) <$> f specialModelNameSpecialPropertyName
-{-# INLINE specialModelNameSpecialPropertyNameL #-}
-
+-- | 'readOnlyFirstBar' Lens
+readOnlyFirstBarL :: Lens_' ReadOnlyFirst (Maybe Text)
+readOnlyFirstBarL f ReadOnlyFirst{..} = (\readOnlyFirstBar -> ReadOnlyFirst { readOnlyFirstBar, ..} ) <$> f readOnlyFirstBar
+{-# INLINE readOnlyFirstBarL #-}
+
+-- | 'readOnlyFirstBaz' Lens
+readOnlyFirstBazL :: Lens_' ReadOnlyFirst (Maybe Text)
+readOnlyFirstBazL f ReadOnlyFirst{..} = (\readOnlyFirstBaz -> ReadOnlyFirst { readOnlyFirstBaz, ..} ) <$> f readOnlyFirstBaz
+{-# INLINE readOnlyFirstBazL #-}
 
 
--- * Tag
-
--- | 'tagId' Lens
-tagIdL :: Lens_' Tag (Maybe Integer)
-tagIdL f Tag{..} = (\tagId -> Tag { tagId, ..} ) <$> f tagId
-{-# INLINE tagIdL #-}
-
--- | 'tagName' Lens
-tagNameL :: Lens_' Tag (Maybe Text)
-tagNameL f Tag{..} = (\tagName -> Tag { tagName, ..} ) <$> f tagName
-{-# INLINE tagNameL #-}
+
+-- * SpecialModelName
+
+-- | 'specialModelNameSpecialPropertyName' Lens
+specialModelNameSpecialPropertyNameL :: Lens_' SpecialModelName (Maybe Integer)
+specialModelNameSpecialPropertyNameL f SpecialModelName{..} = (\specialModelNameSpecialPropertyName -> SpecialModelName { specialModelNameSpecialPropertyName, ..} ) <$> f specialModelNameSpecialPropertyName
+{-# INLINE specialModelNameSpecialPropertyNameL #-}
+
+
+
+-- * Tag
 
-
-
--- * User
-
--- | 'userId' Lens
-userIdL :: Lens_' User (Maybe Integer)
-userIdL f User{..} = (\userId -> User { userId, ..} ) <$> f userId
-{-# INLINE userIdL #-}
-
--- | 'userUsername' Lens
-userUsernameL :: Lens_' User (Maybe Text)
-userUsernameL f User{..} = (\userUsername -> User { userUsername, ..} ) <$> f userUsername
-{-# INLINE userUsernameL #-}
+-- | 'tagId' Lens
+tagIdL :: Lens_' Tag (Maybe Integer)
+tagIdL f Tag{..} = (\tagId -> Tag { tagId, ..} ) <$> f tagId
+{-# INLINE tagIdL #-}
+
+-- | 'tagName' Lens
+tagNameL :: Lens_' Tag (Maybe Text)
+tagNameL f Tag{..} = (\tagName -> Tag { tagName, ..} ) <$> f tagName
+{-# INLINE tagNameL #-}
+
+
+
+-- * User
 
--- | 'userFirstName' Lens
-userFirstNameL :: Lens_' User (Maybe Text)
-userFirstNameL f User{..} = (\userFirstName -> User { userFirstName, ..} ) <$> f userFirstName
-{-# INLINE userFirstNameL #-}
+-- | 'userId' Lens
+userIdL :: Lens_' User (Maybe Integer)
+userIdL f User{..} = (\userId -> User { userId, ..} ) <$> f userId
+{-# INLINE userIdL #-}
 
--- | 'userLastName' Lens
-userLastNameL :: Lens_' User (Maybe Text)
-userLastNameL f User{..} = (\userLastName -> User { userLastName, ..} ) <$> f userLastName
-{-# INLINE userLastNameL #-}
+-- | 'userUsername' Lens
+userUsernameL :: Lens_' User (Maybe Text)
+userUsernameL f User{..} = (\userUsername -> User { userUsername, ..} ) <$> f userUsername
+{-# INLINE userUsernameL #-}
 
--- | 'userEmail' Lens
-userEmailL :: Lens_' User (Maybe Text)
-userEmailL f User{..} = (\userEmail -> User { userEmail, ..} ) <$> f userEmail
-{-# INLINE userEmailL #-}
+-- | 'userFirstName' Lens
+userFirstNameL :: Lens_' User (Maybe Text)
+userFirstNameL f User{..} = (\userFirstName -> User { userFirstName, ..} ) <$> f userFirstName
+{-# INLINE userFirstNameL #-}
 
--- | 'userPassword' Lens
-userPasswordL :: Lens_' User (Maybe Text)
-userPasswordL f User{..} = (\userPassword -> User { userPassword, ..} ) <$> f userPassword
-{-# INLINE userPasswordL #-}
+-- | 'userLastName' Lens
+userLastNameL :: Lens_' User (Maybe Text)
+userLastNameL f User{..} = (\userLastName -> User { userLastName, ..} ) <$> f userLastName
+{-# INLINE userLastNameL #-}
 
--- | 'userPhone' Lens
-userPhoneL :: Lens_' User (Maybe Text)
-userPhoneL f User{..} = (\userPhone -> User { userPhone, ..} ) <$> f userPhone
-{-# INLINE userPhoneL #-}
+-- | 'userEmail' Lens
+userEmailL :: Lens_' User (Maybe Text)
+userEmailL f User{..} = (\userEmail -> User { userEmail, ..} ) <$> f userEmail
+{-# INLINE userEmailL #-}
 
--- | 'userUserStatus' Lens
-userUserStatusL :: Lens_' User (Maybe Int)
-userUserStatusL f User{..} = (\userUserStatus -> User { userUserStatus, ..} ) <$> f userUserStatus
-{-# INLINE userUserStatusL #-}
+-- | 'userPassword' Lens
+userPasswordL :: Lens_' User (Maybe Text)
+userPasswordL f User{..} = (\userPassword -> User { userPassword, ..} ) <$> f userPassword
+{-# INLINE userPasswordL #-}
 
-
-
--- * Cat
-
--- | 'catClassName' Lens
-catClassNameL :: Lens_' Cat (Text)
-catClassNameL f Cat{..} = (\catClassName -> Cat { catClassName, ..} ) <$> f catClassName
-{-# INLINE catClassNameL #-}
-
--- | 'catColor' Lens
-catColorL :: Lens_' Cat (Maybe Text)
-catColorL f Cat{..} = (\catColor -> Cat { catColor, ..} ) <$> f catColor
-{-# INLINE catColorL #-}
+-- | 'userPhone' Lens
+userPhoneL :: Lens_' User (Maybe Text)
+userPhoneL f User{..} = (\userPhone -> User { userPhone, ..} ) <$> f userPhone
+{-# INLINE userPhoneL #-}
+
+-- | 'userUserStatus' Lens
+userUserStatusL :: Lens_' User (Maybe Int)
+userUserStatusL f User{..} = (\userUserStatus -> User { userUserStatus, ..} ) <$> f userUserStatus
+{-# INLINE userUserStatusL #-}
+
+
+
+-- * Cat
 
--- | 'catDeclawed' Lens
-catDeclawedL :: Lens_' Cat (Maybe Bool)
-catDeclawedL f Cat{..} = (\catDeclawed -> Cat { catDeclawed, ..} ) <$> f catDeclawed
-{-# INLINE catDeclawedL #-}
+-- | 'catClassName' Lens
+catClassNameL :: Lens_' Cat (Text)
+catClassNameL f Cat{..} = (\catClassName -> Cat { catClassName, ..} ) <$> f catClassName
+{-# INLINE catClassNameL #-}
 
-
-
--- * Dog
-
--- | 'dogClassName' Lens
-dogClassNameL :: Lens_' Dog (Text)
-dogClassNameL f Dog{..} = (\dogClassName -> Dog { dogClassName, ..} ) <$> f dogClassName
-{-# INLINE dogClassNameL #-}
-
--- | 'dogColor' Lens
-dogColorL :: Lens_' Dog (Maybe Text)
-dogColorL f Dog{..} = (\dogColor -> Dog { dogColor, ..} ) <$> f dogColor
-{-# INLINE dogColorL #-}
+-- | 'catColor' Lens
+catColorL :: Lens_' Cat (Maybe Text)
+catColorL f Cat{..} = (\catColor -> Cat { catColor, ..} ) <$> f catColor
+{-# INLINE catColorL #-}
+
+-- | 'catDeclawed' Lens
+catDeclawedL :: Lens_' Cat (Maybe Bool)
+catDeclawedL f Cat{..} = (\catDeclawed -> Cat { catDeclawed, ..} ) <$> f catDeclawed
+{-# INLINE catDeclawedL #-}
+
+
+
+-- * Dog
 
--- | 'dogBreed' Lens
-dogBreedL :: Lens_' Dog (Maybe Text)
-dogBreedL f Dog{..} = (\dogBreed -> Dog { dogBreed, ..} ) <$> f dogBreed
-{-# INLINE dogBreedL #-}
+-- | 'dogClassName' Lens
+dogClassNameL :: Lens_' Dog (Text)
+dogClassNameL f Dog{..} = (\dogClassName -> Dog { dogClassName, ..} ) <$> f dogClassName
+{-# INLINE dogClassNameL #-}
 
-
-
\ No newline at end of file +
-- | 'dogColor' Lens +dogColorL :: Lens_' Dog (Maybe Text) +dogColorL f Dog{..} = (\dogColor -> Dog { dogColor, ..} ) <$> f dogColor +{-# INLINE dogColorL #-} + +-- | 'dogBreed' Lens +dogBreedL :: Lens_' Dog (Maybe Text) +dogBreedL f Dog{..} = (\dogBreed -> Dog { dogBreed, ..} ) <$> f dogBreed +{-# INLINE dogBreedL #-} + + +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Logging.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Logging.html index f4a1beb42231..5877ed4c1c7c 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Logging.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Logging.html @@ -1,109 +1,119 @@ -
{-|
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
+-}
+
+{-|
 Module : SwaggerPetstore.Logging
 Katip Logging functions
 -}
-
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module SwaggerPetstore.Logging where
-
-import Data.Text (Text)
-import GHC.Exts (IsString(..))
-
-import qualified Control.Exception.Safe as E
-import qualified Control.Monad.IO.Class as P
-import qualified Control.Monad.Trans.Reader as P
-import qualified Data.Text as T
-import qualified Lens.Micro as L
-import qualified System.IO as IO
+
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+
+module SwaggerPetstore.Logging where
 
-import qualified Katip as LG
-
--- * Type Aliases (for compatability)
-
--- | Runs a Katip logging block with the Log environment
-type LogExecWithContext = forall m. P.MonadIO m =>
-                                    LogContext -> LogExec m
-
--- | A Katip logging block
-type LogExec m = forall a. LG.KatipT m a -> m a
-
--- | A Katip Log environment
-type LogContext = LG.LogEnv
+import Data.Text (Text)
+import GHC.Exts (IsString(..))
+
+import qualified Control.Exception.Safe as E
+import qualified Control.Monad.IO.Class as P
+import qualified Control.Monad.Trans.Reader as P
+import qualified Data.Text as T
+import qualified Lens.Micro as L
+import qualified System.IO as IO
+
+import qualified Katip as LG
+
+-- * Type Aliases (for compatability)
 
--- | A Katip Log severity
-type LogLevel = LG.Severity
-
--- * default logger
-
--- | the default log environment
-initLogContext :: IO LogContext
-initLogContext = LG.initLogEnv "SwaggerPetstore" "dev"
-
--- | Runs a Katip logging block with the Log environment
-runDefaultLogExecWithContext :: LogExecWithContext
-runDefaultLogExecWithContext = LG.runKatipT
+-- | Runs a Katip logging block with the Log environment
+type LogExecWithContext = forall m. P.MonadIO m =>
+                                    LogContext -> LogExec m
+
+-- | A Katip logging block
+type LogExec m = forall a. LG.KatipT m a -> m a
+
+-- | A Katip Log environment
+type LogContext = LG.LogEnv
+
+-- | A Katip Log severity
+type LogLevel = LG.Severity
 
--- * stdout logger
+-- * default logger
 
--- | Runs a Katip logging block with the Log environment
-stdoutLoggingExec :: LogExecWithContext
-stdoutLoggingExec = runDefaultLogExecWithContext
+-- | the default log environment
+initLogContext :: IO LogContext
+initLogContext = LG.initLogEnv "SwaggerPetstore" "dev"
 
--- | A Katip Log environment which targets stdout
-stdoutLoggingContext :: LogContext -> IO LogContext
-stdoutLoggingContext cxt = do
-    handleScribe <- LG.mkHandleScribe LG.ColorIfTerminal IO.stdout LG.InfoS LG.V2
-    LG.registerScribe "stdout" handleScribe LG.defaultScribeSettings cxt
+-- | Runs a Katip logging block with the Log environment
+runDefaultLogExecWithContext :: LogExecWithContext
+runDefaultLogExecWithContext = LG.runKatipT
+
+-- * stdout logger
 
--- * stderr logger
-
--- | Runs a Katip logging block with the Log environment
-stderrLoggingExec :: LogExecWithContext
-stderrLoggingExec = runDefaultLogExecWithContext
-
--- | A Katip Log environment which targets stderr
-stderrLoggingContext :: LogContext -> IO LogContext
-stderrLoggingContext cxt = do
-    handleScribe <- LG.mkHandleScribe LG.ColorIfTerminal IO.stderr LG.InfoS LG.V2
-    LG.registerScribe "stderr" handleScribe LG.defaultScribeSettings cxt
+-- | Runs a Katip logging block with the Log environment
+stdoutLoggingExec :: LogExecWithContext
+stdoutLoggingExec = runDefaultLogExecWithContext
+
+-- | A Katip Log environment which targets stdout
+stdoutLoggingContext :: LogContext -> IO LogContext
+stdoutLoggingContext cxt = do
+    handleScribe <- LG.mkHandleScribe LG.ColorIfTerminal IO.stdout LG.InfoS LG.V2
+    LG.registerScribe "stdout" handleScribe LG.defaultScribeSettings cxt
+
+-- * stderr logger
 
--- * Null logger
-
--- | Disables Katip logging
-runNullLogExec :: LogExecWithContext
-runNullLogExec le (LG.KatipT f) = P.runReaderT f (L.set LG.logEnvScribes mempty le)
-
--- * Log Msg
-
--- | Log a katip message
-_log :: (Applicative m, LG.Katip m) => Text -> LogLevel -> Text -> m ()
-_log src level msg = do
-  LG.logMsg (fromString $ T.unpack src) level (LG.logStr msg)
-
--- * Log Exceptions
-
--- | re-throws exceptions after logging them
-logExceptions
-  :: (LG.Katip m, E.MonadCatch m, Applicative m)
-  => Text -> m a -> m a
-logExceptions src =
-  E.handle
-    (\(e :: E.SomeException) -> do
-       _log src LG.ErrorS ((T.pack . show) e)
-       E.throw e)
+-- | Runs a Katip logging block with the Log environment
+stderrLoggingExec :: LogExecWithContext
+stderrLoggingExec = runDefaultLogExecWithContext
+
+-- | A Katip Log environment which targets stderr
+stderrLoggingContext :: LogContext -> IO LogContext
+stderrLoggingContext cxt = do
+    handleScribe <- LG.mkHandleScribe LG.ColorIfTerminal IO.stderr LG.InfoS LG.V2
+    LG.registerScribe "stderr" handleScribe LG.defaultScribeSettings cxt
+
+-- * Null logger
+
+-- | Disables Katip logging
+runNullLogExec :: LogExecWithContext
+runNullLogExec le (LG.KatipT f) = P.runReaderT f (L.set LG.logEnvScribes mempty le)
+
+-- * Log Msg
+
+-- | Log a katip message
+_log :: (Applicative m, LG.Katip m) => Text -> LogLevel -> Text -> m ()
+_log src level msg = do
+  LG.logMsg (fromString $ T.unpack src) level (LG.logStr msg)
+
+-- * Log Exceptions
 
--- * Log Level
-
-levelInfo :: LogLevel
-levelInfo = LG.InfoS
-
-levelError :: LogLevel
-levelError = LG.ErrorS
-
-levelDebug :: LogLevel
-levelDebug = LG.DebugS
-
-
\ No newline at end of file +
-- | re-throws exceptions after logging them +logExceptions + :: (LG.Katip m, E.MonadCatch m, Applicative m) + => Text -> m a -> m a +logExceptions src = + E.handle + (\(e :: E.SomeException) -> do + _log src LG.ErrorS ((T.pack . show) e) + E.throw e) + +-- * Log Level + +levelInfo :: LogLevel +levelInfo = LG.InfoS + +levelError :: LogLevel +levelError = LG.ErrorS + +levelDebug :: LogLevel +levelDebug = LG.DebugS + +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.MimeTypes.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.MimeTypes.html index d2c23acd46ce..2b02c676a815 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.MimeTypes.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.MimeTypes.html @@ -1,220 +1,229 @@ -

-{-|
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
+-}
+
+{-|
 Module : SwaggerPetstore.MimeTypes
 -}
-
-{-# LANGUAGE ConstraintKinds #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds -fno-warn-unused-imports #-}
-
-module SwaggerPetstore.MimeTypes where
-
-import SwaggerPetstore.Model as M
-
-import qualified Data.Aeson as A
-
-import qualified Data.ByteString as B
-import qualified Data.ByteString.Lazy as BL
-import qualified Data.ByteString.Builder as BB
-import qualified Data.ByteString.Char8 as BC
-import qualified Data.ByteString.Lazy.Char8 as BCL
-
+
+{-# LANGUAGE ConstraintKinds #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds -fno-warn-unused-imports #-}
+
+module SwaggerPetstore.MimeTypes where
+
+import SwaggerPetstore.Model as M
 
-import qualified Network.HTTP.Media as ME
+import qualified Data.Aeson as A
 
-import qualified Web.FormUrlEncoded as WH
-import qualified Web.HttpApiData as WH
-
-import qualified Data.Data as P (Typeable)
-import qualified Data.Proxy as P (Proxy(..))
-import qualified Data.Text as T
-import qualified Data.String as P
-import qualified Data.Text.Encoding as T
-import qualified Control.Arrow as P (left)
-
-import Prelude (($), (.),(<$>),(<*>),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty)
-import qualified Prelude as P
-
--- * Content Negotiation
-
--- | A type for responses without content-body.
-data NoContent = NoContent
-  deriving (P.Show, P.Eq)
+import qualified Data.ByteString as B
+import qualified Data.ByteString.Lazy as BL
+import qualified Data.ByteString.Builder as BB
+import qualified Data.ByteString.Char8 as BC
+import qualified Data.ByteString.Lazy.Char8 as BCL
+
+
+import qualified Network.HTTP.Media as ME
+
+import qualified Web.FormUrlEncoded as WH
+import qualified Web.HttpApiData as WH
+
+import qualified Data.Data as P (Typeable)
+import qualified Data.Proxy as P (Proxy(..))
+import qualified Data.Text as T
+import qualified Data.String as P
+import qualified Data.Text.Encoding as T
+import qualified Control.Arrow as P (left)
 
--- ** Mime Types
-
-data MimeJSON = MimeJSON deriving (P.Typeable)
-data MimeXML = MimeXML deriving (P.Typeable)
-data MimePlainText = MimePlainText deriving (P.Typeable)
-data MimeFormUrlEncoded = MimeFormUrlEncoded deriving (P.Typeable)
-data MimeMultipartFormData = MimeMultipartFormData deriving (P.Typeable)
-data MimeOctetStream = MimeOctetStream deriving (P.Typeable)
-data MimeNoContent = MimeNoContent deriving (P.Typeable)
-data MimeAny = MimeAny deriving (P.Typeable)
+import Prelude (($), (.),(<$>),(<*>),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty)
+import qualified Prelude as P
+
+-- * Content Negotiation
+
+-- | A type for responses without content-body.
+data NoContent = NoContent
+  deriving (P.Show, P.Eq)
+
+-- ** Mime Types
 
-data MimeXmlCharsetutf8 = MimeXmlCharsetutf8 deriving (P.Typeable)
-data MimeJsonCharsetutf8 = MimeJsonCharsetutf8 deriving (P.Typeable)
-
--- ** MimeType Class
-
-class P.Typeable mtype => MimeType mtype  where
-  {-# MINIMAL mimeType | mimeTypes #-}
-
-  mimeTypes :: P.Proxy mtype -> [ME.MediaType]
-  mimeTypes p =
-    case mimeType p of
-      Just x -> [x]
-      Nothing -> []
+data MimeJSON = MimeJSON deriving (P.Typeable)
+data MimeXML = MimeXML deriving (P.Typeable)
+data MimePlainText = MimePlainText deriving (P.Typeable)
+data MimeFormUrlEncoded = MimeFormUrlEncoded deriving (P.Typeable)
+data MimeMultipartFormData = MimeMultipartFormData deriving (P.Typeable)
+data MimeOctetStream = MimeOctetStream deriving (P.Typeable)
+data MimeNoContent = MimeNoContent deriving (P.Typeable)
+data MimeAny = MimeAny deriving (P.Typeable)
+
+data MimeXmlCharsetutf8 = MimeXmlCharsetutf8 deriving (P.Typeable)
+data MimeJsonCharsetutf8 = MimeJsonCharsetutf8 deriving (P.Typeable)
+
+-- ** MimeType Class
 
-  mimeType :: P.Proxy mtype -> Maybe ME.MediaType
-  mimeType p =
-    case mimeTypes p of
-      [] -> Nothing
-      (x:_) -> Just x
-
-  mimeType' :: mtype -> Maybe ME.MediaType
-  mimeType' _ = mimeType (P.Proxy :: P.Proxy mtype)
-  mimeTypes' :: mtype -> [ME.MediaType]
-  mimeTypes' _ = mimeTypes (P.Proxy :: P.Proxy mtype)
-
--- ** MimeType Instances
-
--- | @application/json; charset=utf-8@
-instance MimeType MimeJSON where
-  mimeType _ = Just $ P.fromString "application/json"
--- | @application/xml; charset=utf-8@
-instance MimeType MimeXML where
-  mimeType _ = Just $ P.fromString "application/xml"
--- | @application/x-www-form-urlencoded@
-instance MimeType MimeFormUrlEncoded where
-  mimeType _ = Just $ P.fromString "application/x-www-form-urlencoded"
--- | @multipart/form-data@
-instance MimeType MimeMultipartFormData where
-  mimeType _ = Just $ P.fromString "multipart/form-data"
--- | @text/plain; charset=utf-8@
-instance MimeType MimePlainText where
-  mimeType _ = Just $ P.fromString "text/plain"
--- | @application/octet-stream@
-instance MimeType MimeOctetStream where
-  mimeType _ = Just $ P.fromString "application/octet-stream"
--- | @"*/*"@
-instance MimeType MimeAny where
-  mimeType _ = Just $ P.fromString "*/*"
-instance MimeType MimeNoContent where
-  mimeType _ = Nothing
-
--- | @application/xml; charset=utf-8@
-instance MimeType MimeXmlCharsetutf8 where
-  mimeType _ = Just $ P.fromString "application/xml; charset=utf-8"
-
--- | @application/json; charset=utf-8@
-instance MimeType MimeJsonCharsetutf8 where
-  mimeType _ = Just $ P.fromString "application/json; charset=utf-8"
-instance A.ToJSON a => MimeRender MimeJsonCharsetutf8 a where mimeRender _ = A.encode
-instance A.FromJSON a => MimeUnrender MimeJsonCharsetutf8 a where mimeUnrender _ = A.eitherDecode
-
-
--- ** MimeRender Class
+class P.Typeable mtype => MimeType mtype  where
+  {-# MINIMAL mimeType | mimeTypes #-}
+
+  mimeTypes :: P.Proxy mtype -> [ME.MediaType]
+  mimeTypes p =
+    case mimeType p of
+      Just x -> [x]
+      Nothing -> []
+
+  mimeType :: P.Proxy mtype -> Maybe ME.MediaType
+  mimeType p =
+    case mimeTypes p of
+      [] -> Nothing
+      (x:_) -> Just x
+
+  mimeType' :: mtype -> Maybe ME.MediaType
+  mimeType' _ = mimeType (P.Proxy :: P.Proxy mtype)
+  mimeTypes' :: mtype -> [ME.MediaType]
+  mimeTypes' _ = mimeTypes (P.Proxy :: P.Proxy mtype)
+
+-- ** MimeType Instances
+
+-- | @application/json; charset=utf-8@
+instance MimeType MimeJSON where
+  mimeType _ = Just $ P.fromString "application/json"
+-- | @application/xml; charset=utf-8@
+instance MimeType MimeXML where
+  mimeType _ = Just $ P.fromString "application/xml"
+-- | @application/x-www-form-urlencoded@
+instance MimeType MimeFormUrlEncoded where
+  mimeType _ = Just $ P.fromString "application/x-www-form-urlencoded"
+-- | @multipart/form-data@
+instance MimeType MimeMultipartFormData where
+  mimeType _ = Just $ P.fromString "multipart/form-data"
+-- | @text/plain; charset=utf-8@
+instance MimeType MimePlainText where
+  mimeType _ = Just $ P.fromString "text/plain"
+-- | @application/octet-stream@
+instance MimeType MimeOctetStream where
+  mimeType _ = Just $ P.fromString "application/octet-stream"
+-- | @"*/*"@
+instance MimeType MimeAny where
+  mimeType _ = Just $ P.fromString "*/*"
+instance MimeType MimeNoContent where
+  mimeType _ = Nothing
+
+-- | @application/xml; charset=utf-8@
+instance MimeType MimeXmlCharsetutf8 where
+  mimeType _ = Just $ P.fromString "application/xml; charset=utf-8"
 
-class MimeType mtype => MimeRender mtype x where
-    mimeRender  :: P.Proxy mtype -> x -> BL.ByteString
-    mimeRender' :: mtype -> x -> BL.ByteString
-    mimeRender' _ x = mimeRender (P.Proxy :: P.Proxy mtype) x
-
+-- | @application/json; charset=utf-8@
+instance MimeType MimeJsonCharsetutf8 where
+  mimeType _ = Just $ P.fromString "application/json; charset=utf-8"
+instance A.ToJSON a => MimeRender MimeJsonCharsetutf8 a where mimeRender _ = A.encode
+instance A.FromJSON a => MimeUnrender MimeJsonCharsetutf8 a where mimeUnrender _ = A.eitherDecode
 
--- ** MimeRender Instances
-
--- | `A.encode`
-instance A.ToJSON a => MimeRender MimeJSON a where mimeRender _ = A.encode
--- | @WH.urlEncodeAsForm@
-instance WH.ToForm a => MimeRender MimeFormUrlEncoded a where mimeRender _ = WH.urlEncodeAsForm
-
--- | @P.id@
-instance MimeRender MimePlainText BL.ByteString where mimeRender _ = P.id
--- | @BL.fromStrict . T.encodeUtf8@
-instance MimeRender MimePlainText T.Text where mimeRender _ = BL.fromStrict . T.encodeUtf8
--- | @BCL.pack@
-instance MimeRender MimePlainText String where mimeRender _ = BCL.pack
-
--- | @P.id@
-instance MimeRender MimeOctetStream BL.ByteString where mimeRender _ = P.id
--- | @BL.fromStrict . T.encodeUtf8@
-instance MimeRender MimeOctetStream T.Text where mimeRender _ = BL.fromStrict . T.encodeUtf8
--- | @BCL.pack@
-instance MimeRender MimeOctetStream String where mimeRender _ = BCL.pack
-
-instance MimeRender MimeMultipartFormData BL.ByteString where mimeRender _ = P.id
-instance MimeRender MimeMultipartFormData Binary where mimeRender _ = unBinary
-
-instance MimeRender MimeMultipartFormData ByteArray where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Bool where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Char where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Date where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData DateTime where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Double where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Float where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Int where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData Integer where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData String where mimeRender _ = mimeRenderDefaultMultipartFormData
-instance MimeRender MimeMultipartFormData T.Text where mimeRender _ = mimeRenderDefaultMultipartFormData
-
-mimeRenderDefaultMultipartFormData :: WH.ToHttpApiData a => a -> BL.ByteString
-mimeRenderDefaultMultipartFormData = BL.fromStrict . T.encodeUtf8 . WH.toQueryParam
-
--- | @P.Right . P.const NoContent@
-instance MimeRender MimeNoContent NoContent where mimeRender _ = P.const BCL.empty
-
--- instance MimeRender MimeOctetStream Double where mimeRender _ = BB.toLazyByteString . BB.doubleDec
--- instance MimeRender MimeOctetStream Float where mimeRender _ = BB.toLazyByteString . BB.floatDec
--- instance MimeRender MimeOctetStream Int where mimeRender _ = BB.toLazyByteString . BB.intDec
--- instance MimeRender MimeOctetStream Integer where mimeRender _ = BB.toLazyByteString . BB.integerDec
-
--- instance MimeRender MimeXmlCharsetutf8 T.Text where mimeRender _ = undefined
--- instance MimeRender MimeJsonCharsetutf8 T.Text where mimeRender _ = undefined
-
--- ** MimeUnrender Class
-
-class MimeType mtype => MimeUnrender mtype o where
-    mimeUnrender :: P.Proxy mtype -> BL.ByteString -> P.Either String o
-    mimeUnrender' :: mtype -> BL.ByteString -> P.Either String o
-    mimeUnrender' _ x = mimeUnrender (P.Proxy :: P.Proxy mtype) x
-
--- ** MimeUnrender Instances
+
+-- ** MimeRender Class
+
+class MimeType mtype => MimeRender mtype x where
+    mimeRender  :: P.Proxy mtype -> x -> BL.ByteString
+    mimeRender' :: mtype -> x -> BL.ByteString
+    mimeRender' _ x = mimeRender (P.Proxy :: P.Proxy mtype) x
+
+
+-- ** MimeRender Instances
+
+-- | `A.encode`
+instance A.ToJSON a => MimeRender MimeJSON a where mimeRender _ = A.encode
+-- | @WH.urlEncodeAsForm@
+instance WH.ToForm a => MimeRender MimeFormUrlEncoded a where mimeRender _ = WH.urlEncodeAsForm
+
+-- | @P.id@
+instance MimeRender MimePlainText BL.ByteString where mimeRender _ = P.id
+-- | @BL.fromStrict . T.encodeUtf8@
+instance MimeRender MimePlainText T.Text where mimeRender _ = BL.fromStrict . T.encodeUtf8
+-- | @BCL.pack@
+instance MimeRender MimePlainText String where mimeRender _ = BCL.pack
+
+-- | @P.id@
+instance MimeRender MimeOctetStream BL.ByteString where mimeRender _ = P.id
+-- | @BL.fromStrict . T.encodeUtf8@
+instance MimeRender MimeOctetStream T.Text where mimeRender _ = BL.fromStrict . T.encodeUtf8
+-- | @BCL.pack@
+instance MimeRender MimeOctetStream String where mimeRender _ = BCL.pack
+
+instance MimeRender MimeMultipartFormData BL.ByteString where mimeRender _ = P.id
+instance MimeRender MimeMultipartFormData Binary where mimeRender _ = unBinary
+
+instance MimeRender MimeMultipartFormData ByteArray where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Bool where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Char where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Date where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData DateTime where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Double where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Float where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Int where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData Integer where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData String where mimeRender _ = mimeRenderDefaultMultipartFormData
+instance MimeRender MimeMultipartFormData T.Text where mimeRender _ = mimeRenderDefaultMultipartFormData
+
+mimeRenderDefaultMultipartFormData :: WH.ToHttpApiData a => a -> BL.ByteString
+mimeRenderDefaultMultipartFormData = BL.fromStrict . T.encodeUtf8 . WH.toQueryParam
+
+-- | @P.Right . P.const NoContent@
+instance MimeRender MimeNoContent NoContent where mimeRender _ = P.const BCL.empty
+
+-- instance MimeRender MimeOctetStream Double where mimeRender _ = BB.toLazyByteString . BB.doubleDec
+-- instance MimeRender MimeOctetStream Float where mimeRender _ = BB.toLazyByteString . BB.floatDec
+-- instance MimeRender MimeOctetStream Int where mimeRender _ = BB.toLazyByteString . BB.intDec
+-- instance MimeRender MimeOctetStream Integer where mimeRender _ = BB.toLazyByteString . BB.integerDec
+
+-- instance MimeRender MimeXmlCharsetutf8 T.Text where mimeRender _ = undefined
+-- instance MimeRender MimeJsonCharsetutf8 T.Text where mimeRender _ = undefined
 
--- | @A.eitherDecode@
-instance A.FromJSON a => MimeUnrender MimeJSON a where mimeUnrender _ = A.eitherDecode
--- | @P.left T.unpack . WH.urlDecodeAsForm@
-instance WH.FromForm a => MimeUnrender MimeFormUrlEncoded a where mimeUnrender _ = P.left T.unpack . WH.urlDecodeAsForm
--- | @P.Right . P.id@
-
-instance MimeUnrender MimePlainText BL.ByteString where mimeUnrender _ = P.Right . P.id
--- | @P.left P.show . TL.decodeUtf8'@
-instance MimeUnrender MimePlainText T.Text where mimeUnrender _ = P.left P.show . T.decodeUtf8' . BL.toStrict
--- | @P.Right . BCL.unpack@
-instance MimeUnrender MimePlainText String where mimeUnrender _ = P.Right . BCL.unpack
-
--- | @P.Right . P.id@
-instance MimeUnrender MimeOctetStream BL.ByteString where mimeUnrender _ = P.Right . P.id
--- | @P.left P.show . T.decodeUtf8' . BL.toStrict@
-instance MimeUnrender MimeOctetStream T.Text where mimeUnrender _ = P.left P.show . T.decodeUtf8' . BL.toStrict
--- | @P.Right . BCL.unpack@
-instance MimeUnrender MimeOctetStream String where mimeUnrender _ = P.Right . BCL.unpack
-
--- | @P.Right . P.const NoContent@
-instance MimeUnrender MimeNoContent NoContent where mimeUnrender _ = P.Right . P.const NoContent
-
--- instance MimeUnrender MimeXmlCharsetutf8 T.Text where mimeUnrender _ = undefined
--- instance MimeUnrender MimeJsonCharsetutf8 T.Text where mimeUnrender _ = undefined
-
--- ** Request Consumes
-
-class MimeType mtype => Consumes req mtype where
-
--- ** Request Produces
+-- ** MimeUnrender Class
+
+class MimeType mtype => MimeUnrender mtype o where
+    mimeUnrender :: P.Proxy mtype -> BL.ByteString -> P.Either String o
+    mimeUnrender' :: mtype -> BL.ByteString -> P.Either String o
+    mimeUnrender' _ x = mimeUnrender (P.Proxy :: P.Proxy mtype) x
+
+-- ** MimeUnrender Instances
+
+-- | @A.eitherDecode@
+instance A.FromJSON a => MimeUnrender MimeJSON a where mimeUnrender _ = A.eitherDecode
+-- | @P.left T.unpack . WH.urlDecodeAsForm@
+instance WH.FromForm a => MimeUnrender MimeFormUrlEncoded a where mimeUnrender _ = P.left T.unpack . WH.urlDecodeAsForm
+-- | @P.Right . P.id@
+
+instance MimeUnrender MimePlainText BL.ByteString where mimeUnrender _ = P.Right . P.id
+-- | @P.left P.show . TL.decodeUtf8'@
+instance MimeUnrender MimePlainText T.Text where mimeUnrender _ = P.left P.show . T.decodeUtf8' . BL.toStrict
+-- | @P.Right . BCL.unpack@
+instance MimeUnrender MimePlainText String where mimeUnrender _ = P.Right . BCL.unpack
+
+-- | @P.Right . P.id@
+instance MimeUnrender MimeOctetStream BL.ByteString where mimeUnrender _ = P.Right . P.id
+-- | @P.left P.show . T.decodeUtf8' . BL.toStrict@
+instance MimeUnrender MimeOctetStream T.Text where mimeUnrender _ = P.left P.show . T.decodeUtf8' . BL.toStrict
+-- | @P.Right . BCL.unpack@
+instance MimeUnrender MimeOctetStream String where mimeUnrender _ = P.Right . BCL.unpack
+
+-- | @P.Right . P.const NoContent@
+instance MimeUnrender MimeNoContent NoContent where mimeUnrender _ = P.Right . P.const NoContent
 
-class MimeType mtype => Produces req mtype where
-
\ No newline at end of file +
-- instance MimeUnrender MimeXmlCharsetutf8 T.Text where mimeUnrender _ = undefined +-- instance MimeUnrender MimeJsonCharsetutf8 T.Text where mimeUnrender _ = undefined + +-- ** Request Consumes + +class MimeType mtype => Consumes req mtype where + +-- ** Request Produces + +class MimeType mtype => Produces req mtype where +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Model.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Model.html index 643a514eb4c6..cbb9e7343854 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Model.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.Model.html @@ -1,1416 +1,1538 @@ -
{-|
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
+-}
+
+{-|
 Module : SwaggerPetstore.Model
 -}
-
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveFoldable #-}
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE DeriveTraversable #-}
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-{-# LANGUAGE NamedFieldPuns #-}
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE RecordWildCards #-}
-{-# LANGUAGE TupleSections #-}
-{-# LANGUAGE TypeFamilies #-}
-{-# OPTIONS_GHC -fno-warn-unused-matches -fno-warn-unused-binds -fno-warn-unused-imports #-}
-
-module SwaggerPetstore.Model where
-
-import Data.Aeson ((.:),(.:!),(.:?),(.=))
-
-import qualified Data.Aeson as A
-import qualified Data.ByteString as B
-import qualified Data.ByteString.Lazy as BL
-import qualified Data.ByteString.Base64.Lazy as BL64
-import qualified Data.Data as P (Data, Typeable)
-import qualified Data.HashMap.Lazy as HM
-import qualified Data.Map as Map
-import qualified Data.Set as Set
-import qualified Data.Maybe as P
-import qualified Data.Foldable as P
-import qualified Web.FormUrlEncoded as WH
-import qualified Web.HttpApiData as WH
-import qualified Control.DeepSeq as NF
-import qualified Data.Ix as P
-import qualified Data.Text as T
-import qualified Data.Text.Encoding as T
-import qualified Control.Arrow as P (left)
-import Data.Text (Text)
-
-import qualified Data.Time as TI
-import qualified Data.Time.ISO8601 as TI
-
-import Control.Applicative ((<|>))
-import Control.Applicative (Alternative)
-import Prelude (($), (.),(<$>),(<*>),(>>=),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
-import qualified Prelude as P
-
-
+
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveFoldable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveTraversable #-}
+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+{-# LANGUAGE NamedFieldPuns #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TupleSections #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches -fno-warn-unused-binds -fno-warn-unused-imports #-}
+
+module SwaggerPetstore.Model where
+
+import Data.Aeson ((.:),(.:!),(.:?),(.=))
+
+import qualified Data.Aeson as A
+import qualified Data.ByteString as B
+import qualified Data.ByteString.Lazy as BL
+import qualified Data.ByteString.Base64.Lazy as BL64
+import qualified Data.Data as P (Data, Typeable)
+import qualified Data.HashMap.Lazy as HM
+import qualified Data.Map as Map
+import qualified Data.Set as Set
+import qualified Data.Maybe as P
+import qualified Data.Foldable as P
+import qualified Web.FormUrlEncoded as WH
+import qualified Web.HttpApiData as WH
+import qualified Control.DeepSeq as NF
+import qualified Data.Ix as P
+import qualified Data.Text as T
+import qualified Data.Text.Encoding as T
+import qualified Control.Arrow as P (left)
+import Data.Text (Text)
 
--- * Models
-
+import qualified Data.Time as TI
+import qualified Data.Time.ISO8601 as TI
 
--- ** AdditionalPropertiesClass
--- |
-data AdditionalPropertiesClass = AdditionalPropertiesClass
-  { additionalPropertiesClassMapProperty :: !(Maybe (Map.Map String Text)) -- ^ "map_property"
-  , additionalPropertiesClassMapOfMapProperty :: !(Maybe (Map.Map String (Map.Map String Text))) -- ^ "map_of_map_property"
-  } deriving (P.Show,P.Eq,P.Typeable)
+import Control.Applicative ((<|>))
+import Control.Applicative (Alternative)
+import Prelude (($), (.),(<$>),(<*>),(>>=),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
+import qualified Prelude as P
+
+
 
-instance A.FromJSON AdditionalPropertiesClass where
-  parseJSON = A.withObject "AdditionalPropertiesClass" $ \o ->
-    AdditionalPropertiesClass
-      <$> (o .:? "map_property")
-      <*> (o .:? "map_of_map_property")
-
-instance A.ToJSON AdditionalPropertiesClass where
-  toJSON AdditionalPropertiesClass {..} =
-   _omitNulls
-      [ "map_property" .= additionalPropertiesClassMapProperty
-      , "map_of_map_property" .= additionalPropertiesClassMapOfMapProperty
-      ]
-
-
--- | Construct a value of type 'AdditionalPropertiesClass' (by applying it's required fields, if any)
-mkAdditionalPropertiesClass
-  :: AdditionalPropertiesClass
-mkAdditionalPropertiesClass =
-  AdditionalPropertiesClass
-  { additionalPropertiesClassMapProperty = Nothing
-  , additionalPropertiesClassMapOfMapProperty = Nothing
-  }
-  
-
--- ** Animal
--- |
-data Animal = Animal
-  { animalClassName :: !(Text) -- ^ /Required/ "className"
-  , animalColor :: !(Maybe Text) -- ^ "color"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Animal where
-  parseJSON = A.withObject "Animal" $ \o ->
-    Animal
-      <$> (o .:  "className")
-      <*> (o .:? "color")
+-- * Models
+
+
+-- ** AdditionalPropertiesClass
+-- | AdditionalPropertiesClass
+data AdditionalPropertiesClass = AdditionalPropertiesClass
+  { additionalPropertiesClassMapProperty :: !(Maybe (Map.Map String Text)) -- ^ "map_property"
+  , additionalPropertiesClassMapOfMapProperty :: !(Maybe (Map.Map String (Map.Map String Text))) -- ^ "map_of_map_property"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON AdditionalPropertiesClass
+instance A.FromJSON AdditionalPropertiesClass where
+  parseJSON = A.withObject "AdditionalPropertiesClass" $ \o ->
+    AdditionalPropertiesClass
+      <$> (o .:? "map_property")
+      <*> (o .:? "map_of_map_property")
+
+-- | ToJSON AdditionalPropertiesClass
+instance A.ToJSON AdditionalPropertiesClass where
+  toJSON AdditionalPropertiesClass {..} =
+   _omitNulls
+      [ "map_property" .= additionalPropertiesClassMapProperty
+      , "map_of_map_property" .= additionalPropertiesClassMapOfMapProperty
+      ]
+
+
+-- | Construct a value of type 'AdditionalPropertiesClass' (by applying it's required fields, if any)
+mkAdditionalPropertiesClass
+  :: AdditionalPropertiesClass
+mkAdditionalPropertiesClass =
+  AdditionalPropertiesClass
+  { additionalPropertiesClassMapProperty = Nothing
+  , additionalPropertiesClassMapOfMapProperty = Nothing
+  }
+  
 
-instance A.ToJSON Animal where
-  toJSON Animal {..} =
-   _omitNulls
-      [ "className" .= animalClassName
-      , "color" .= animalColor
-      ]
+-- ** Animal
+-- | Animal
+data Animal = Animal
+  { animalClassName :: !(Text) -- ^ /Required/ "className"
+  , animalColor :: !(Maybe Text) -- ^ "color"
+  } deriving (P.Show,P.Eq,P.Typeable)
 
 
--- | Construct a value of type 'Animal' (by applying it's required fields, if any)
-mkAnimal
-  :: Text -- ^ 'animalClassName' 
-  -> Animal
-mkAnimal animalClassName =
-  Animal
-  { animalClassName
-  , animalColor = Nothing
-  }
-  
-
--- ** AnimalFarm
--- |
-data AnimalFarm = AnimalFarm
-  { 
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON AnimalFarm where
-  parseJSON = A.withObject "AnimalFarm" $ \o ->
-    pure AnimalFarm
-      
-
-instance A.ToJSON AnimalFarm where
-  toJSON AnimalFarm  =
-   _omitNulls
-      [ 
-      ]
-
-
--- | Construct a value of type 'AnimalFarm' (by applying it's required fields, if any)
-mkAnimalFarm
-  :: AnimalFarm
-mkAnimalFarm =
-  AnimalFarm
-  { 
-  }
-  
-
--- ** ApiResponse
--- |
-data ApiResponse = ApiResponse
-  { apiResponseCode :: !(Maybe Int) -- ^ "code"
-  , apiResponseType :: !(Maybe Text) -- ^ "type"
-  , apiResponseMessage :: !(Maybe Text) -- ^ "message"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ApiResponse where
-  parseJSON = A.withObject "ApiResponse" $ \o ->
-    ApiResponse
-      <$> (o .:? "code")
-      <*> (o .:? "type")
-      <*> (o .:? "message")
-
-instance A.ToJSON ApiResponse where
-  toJSON ApiResponse {..} =
-   _omitNulls
-      [ "code" .= apiResponseCode
-      , "type" .= apiResponseType
-      , "message" .= apiResponseMessage
-      ]
-
-
--- | Construct a value of type 'ApiResponse' (by applying it's required fields, if any)
-mkApiResponse
-  :: ApiResponse
-mkApiResponse =
-  ApiResponse
-  { apiResponseCode = Nothing
-  , apiResponseType = Nothing
-  , apiResponseMessage = Nothing
-  }
-  
-
--- ** ArrayOfArrayOfNumberOnly
--- |
-data ArrayOfArrayOfNumberOnly = ArrayOfArrayOfNumberOnly
-  { arrayOfArrayOfNumberOnlyArrayArrayNumber :: !(Maybe [[Double]]) -- ^ "ArrayArrayNumber"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ArrayOfArrayOfNumberOnly where
-  parseJSON = A.withObject "ArrayOfArrayOfNumberOnly" $ \o ->
-    ArrayOfArrayOfNumberOnly
-      <$> (o .:? "ArrayArrayNumber")
+-- | FromJSON Animal
+instance A.FromJSON Animal where
+  parseJSON = A.withObject "Animal" $ \o ->
+    Animal
+      <$> (o .:  "className")
+      <*> (o .:? "color")
+
+-- | ToJSON Animal
+instance A.ToJSON Animal where
+  toJSON Animal {..} =
+   _omitNulls
+      [ "className" .= animalClassName
+      , "color" .= animalColor
+      ]
+
+
+-- | Construct a value of type 'Animal' (by applying it's required fields, if any)
+mkAnimal
+  :: Text -- ^ 'animalClassName' 
+  -> Animal
+mkAnimal animalClassName =
+  Animal
+  { animalClassName
+  , animalColor = Nothing
+  }
+  
+
+-- ** AnimalFarm
+-- | AnimalFarm
+data AnimalFarm = AnimalFarm
+  { 
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON AnimalFarm
+instance A.FromJSON AnimalFarm where
+  parseJSON = A.withObject "AnimalFarm" $ \o ->
+    pure AnimalFarm
+      
+
+-- | ToJSON AnimalFarm
+instance A.ToJSON AnimalFarm where
+  toJSON AnimalFarm  =
+   _omitNulls
+      [ 
+      ]
+
+
+-- | Construct a value of type 'AnimalFarm' (by applying it's required fields, if any)
+mkAnimalFarm
+  :: AnimalFarm
+mkAnimalFarm =
+  AnimalFarm
+  { 
+  }
+  
+
+-- ** ApiResponse
+-- | ApiResponse
+data ApiResponse = ApiResponse
+  { apiResponseCode :: !(Maybe Int) -- ^ "code"
+  , apiResponseType :: !(Maybe Text) -- ^ "type"
+  , apiResponseMessage :: !(Maybe Text) -- ^ "message"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON ApiResponse
+instance A.FromJSON ApiResponse where
+  parseJSON = A.withObject "ApiResponse" $ \o ->
+    ApiResponse
+      <$> (o .:? "code")
+      <*> (o .:? "type")
+      <*> (o .:? "message")
+
+-- | ToJSON ApiResponse
+instance A.ToJSON ApiResponse where
+  toJSON ApiResponse {..} =
+   _omitNulls
+      [ "code" .= apiResponseCode
+      , "type" .= apiResponseType
+      , "message" .= apiResponseMessage
+      ]
+
 
-instance A.ToJSON ArrayOfArrayOfNumberOnly where
-  toJSON ArrayOfArrayOfNumberOnly {..} =
-   _omitNulls
-      [ "ArrayArrayNumber" .= arrayOfArrayOfNumberOnlyArrayArrayNumber
-      ]
-
-
--- | Construct a value of type 'ArrayOfArrayOfNumberOnly' (by applying it's required fields, if any)
-mkArrayOfArrayOfNumberOnly
-  :: ArrayOfArrayOfNumberOnly
-mkArrayOfArrayOfNumberOnly =
-  ArrayOfArrayOfNumberOnly
-  { arrayOfArrayOfNumberOnlyArrayArrayNumber = Nothing
-  }
-  
-
--- ** ArrayOfNumberOnly
--- |
-data ArrayOfNumberOnly = ArrayOfNumberOnly
-  { arrayOfNumberOnlyArrayNumber :: !(Maybe [Double]) -- ^ "ArrayNumber"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ArrayOfNumberOnly where
-  parseJSON = A.withObject "ArrayOfNumberOnly" $ \o ->
-    ArrayOfNumberOnly
-      <$> (o .:? "ArrayNumber")
-
-instance A.ToJSON ArrayOfNumberOnly where
-  toJSON ArrayOfNumberOnly {..} =
-   _omitNulls
-      [ "ArrayNumber" .= arrayOfNumberOnlyArrayNumber
-      ]
-
-
--- | Construct a value of type 'ArrayOfNumberOnly' (by applying it's required fields, if any)
-mkArrayOfNumberOnly
-  :: ArrayOfNumberOnly
-mkArrayOfNumberOnly =
-  ArrayOfNumberOnly
-  { arrayOfNumberOnlyArrayNumber = Nothing
-  }
-  
-
--- ** ArrayTest
--- |
-data ArrayTest = ArrayTest
-  { arrayTestArrayOfString :: !(Maybe [Text]) -- ^ "array_of_string"
-  , arrayTestArrayArrayOfInteger :: !(Maybe [[Integer]]) -- ^ "array_array_of_integer"
-  , arrayTestArrayArrayOfModel :: !(Maybe [[ReadOnlyFirst]]) -- ^ "array_array_of_model"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ArrayTest where
-  parseJSON = A.withObject "ArrayTest" $ \o ->
-    ArrayTest
-      <$> (o .:? "array_of_string")
-      <*> (o .:? "array_array_of_integer")
-      <*> (o .:? "array_array_of_model")
-
-instance A.ToJSON ArrayTest where
-  toJSON ArrayTest {..} =
-   _omitNulls
-      [ "array_of_string" .= arrayTestArrayOfString
-      , "array_array_of_integer" .= arrayTestArrayArrayOfInteger
-      , "array_array_of_model" .= arrayTestArrayArrayOfModel
-      ]
-
-
--- | Construct a value of type 'ArrayTest' (by applying it's required fields, if any)
-mkArrayTest
-  :: ArrayTest
-mkArrayTest =
-  ArrayTest
-  { arrayTestArrayOfString = Nothing
-  , arrayTestArrayArrayOfInteger = Nothing
-  , arrayTestArrayArrayOfModel = Nothing
-  }
-  
-
--- ** Capitalization
--- |
-data Capitalization = Capitalization
-  { capitalizationSmallCamel :: !(Maybe Text) -- ^ "smallCamel"
-  , capitalizationCapitalCamel :: !(Maybe Text) -- ^ "CapitalCamel"
-  , capitalizationSmallSnake :: !(Maybe Text) -- ^ "small_Snake"
-  , capitalizationCapitalSnake :: !(Maybe Text) -- ^ "Capital_Snake"
-  , capitalizationScaEthFlowPoints :: !(Maybe Text) -- ^ "SCA_ETH_Flow_Points"
-  , capitalizationAttName :: !(Maybe Text) -- ^ "ATT_NAME" - Name of the pet 
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Capitalization where
-  parseJSON = A.withObject "Capitalization" $ \o ->
-    Capitalization
-      <$> (o .:? "smallCamel")
-      <*> (o .:? "CapitalCamel")
-      <*> (o .:? "small_Snake")
-      <*> (o .:? "Capital_Snake")
-      <*> (o .:? "SCA_ETH_Flow_Points")
-      <*> (o .:? "ATT_NAME")
-
-instance A.ToJSON Capitalization where
-  toJSON Capitalization {..} =
-   _omitNulls
-      [ "smallCamel" .= capitalizationSmallCamel
-      , "CapitalCamel" .= capitalizationCapitalCamel
-      , "small_Snake" .= capitalizationSmallSnake
-      , "Capital_Snake" .= capitalizationCapitalSnake
-      , "SCA_ETH_Flow_Points" .= capitalizationScaEthFlowPoints
-      , "ATT_NAME" .= capitalizationAttName
-      ]
-
-
--- | Construct a value of type 'Capitalization' (by applying it's required fields, if any)
-mkCapitalization
-  :: Capitalization
-mkCapitalization =
-  Capitalization
-  { capitalizationSmallCamel = Nothing
-  , capitalizationCapitalCamel = Nothing
-  , capitalizationSmallSnake = Nothing
-  , capitalizationCapitalSnake = Nothing
-  , capitalizationScaEthFlowPoints = Nothing
-  , capitalizationAttName = Nothing
-  }
-  
-
--- ** Category
--- |
-data Category = Category
-  { categoryId :: !(Maybe Integer) -- ^ "id"
-  , categoryName :: !(Maybe Text) -- ^ "name"
-  } deriving (P.Show,P.Eq,P.Typeable)
+-- | Construct a value of type 'ApiResponse' (by applying it's required fields, if any)
+mkApiResponse
+  :: ApiResponse
+mkApiResponse =
+  ApiResponse
+  { apiResponseCode = Nothing
+  , apiResponseType = Nothing
+  , apiResponseMessage = Nothing
+  }
+  
+
+-- ** ArrayOfArrayOfNumberOnly
+-- | ArrayOfArrayOfNumberOnly
+data ArrayOfArrayOfNumberOnly = ArrayOfArrayOfNumberOnly
+  { arrayOfArrayOfNumberOnlyArrayArrayNumber :: !(Maybe [[Double]]) -- ^ "ArrayArrayNumber"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON ArrayOfArrayOfNumberOnly
+instance A.FromJSON ArrayOfArrayOfNumberOnly where
+  parseJSON = A.withObject "ArrayOfArrayOfNumberOnly" $ \o ->
+    ArrayOfArrayOfNumberOnly
+      <$> (o .:? "ArrayArrayNumber")
+
+-- | ToJSON ArrayOfArrayOfNumberOnly
+instance A.ToJSON ArrayOfArrayOfNumberOnly where
+  toJSON ArrayOfArrayOfNumberOnly {..} =
+   _omitNulls
+      [ "ArrayArrayNumber" .= arrayOfArrayOfNumberOnlyArrayArrayNumber
+      ]
+
+
+-- | Construct a value of type 'ArrayOfArrayOfNumberOnly' (by applying it's required fields, if any)
+mkArrayOfArrayOfNumberOnly
+  :: ArrayOfArrayOfNumberOnly
+mkArrayOfArrayOfNumberOnly =
+  ArrayOfArrayOfNumberOnly
+  { arrayOfArrayOfNumberOnlyArrayArrayNumber = Nothing
+  }
+  
+
+-- ** ArrayOfNumberOnly
+-- | ArrayOfNumberOnly
+data ArrayOfNumberOnly = ArrayOfNumberOnly
+  { arrayOfNumberOnlyArrayNumber :: !(Maybe [Double]) -- ^ "ArrayNumber"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON ArrayOfNumberOnly
+instance A.FromJSON ArrayOfNumberOnly where
+  parseJSON = A.withObject "ArrayOfNumberOnly" $ \o ->
+    ArrayOfNumberOnly
+      <$> (o .:? "ArrayNumber")
+
+-- | ToJSON ArrayOfNumberOnly
+instance A.ToJSON ArrayOfNumberOnly where
+  toJSON ArrayOfNumberOnly {..} =
+   _omitNulls
+      [ "ArrayNumber" .= arrayOfNumberOnlyArrayNumber
+      ]
+
+
+-- | Construct a value of type 'ArrayOfNumberOnly' (by applying it's required fields, if any)
+mkArrayOfNumberOnly
+  :: ArrayOfNumberOnly
+mkArrayOfNumberOnly =
+  ArrayOfNumberOnly
+  { arrayOfNumberOnlyArrayNumber = Nothing
+  }
+  
+
+-- ** ArrayTest
+-- | ArrayTest
+data ArrayTest = ArrayTest
+  { arrayTestArrayOfString :: !(Maybe [Text]) -- ^ "array_of_string"
+  , arrayTestArrayArrayOfInteger :: !(Maybe [[Integer]]) -- ^ "array_array_of_integer"
+  , arrayTestArrayArrayOfModel :: !(Maybe [[ReadOnlyFirst]]) -- ^ "array_array_of_model"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON ArrayTest
+instance A.FromJSON ArrayTest where
+  parseJSON = A.withObject "ArrayTest" $ \o ->
+    ArrayTest
+      <$> (o .:? "array_of_string")
+      <*> (o .:? "array_array_of_integer")
+      <*> (o .:? "array_array_of_model")
+
+-- | ToJSON ArrayTest
+instance A.ToJSON ArrayTest where
+  toJSON ArrayTest {..} =
+   _omitNulls
+      [ "array_of_string" .= arrayTestArrayOfString
+      , "array_array_of_integer" .= arrayTestArrayArrayOfInteger
+      , "array_array_of_model" .= arrayTestArrayArrayOfModel
+      ]
+
+
+-- | Construct a value of type 'ArrayTest' (by applying it's required fields, if any)
+mkArrayTest
+  :: ArrayTest
+mkArrayTest =
+  ArrayTest
+  { arrayTestArrayOfString = Nothing
+  , arrayTestArrayArrayOfInteger = Nothing
+  , arrayTestArrayArrayOfModel = Nothing
+  }
+  
+
+-- ** Capitalization
+-- | Capitalization
+data Capitalization = Capitalization
+  { capitalizationSmallCamel :: !(Maybe Text) -- ^ "smallCamel"
+  , capitalizationCapitalCamel :: !(Maybe Text) -- ^ "CapitalCamel"
+  , capitalizationSmallSnake :: !(Maybe Text) -- ^ "small_Snake"
+  , capitalizationCapitalSnake :: !(Maybe Text) -- ^ "Capital_Snake"
+  , capitalizationScaEthFlowPoints :: !(Maybe Text) -- ^ "SCA_ETH_Flow_Points"
+  , capitalizationAttName :: !(Maybe Text) -- ^ "ATT_NAME" - Name of the pet 
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Capitalization
+instance A.FromJSON Capitalization where
+  parseJSON = A.withObject "Capitalization" $ \o ->
+    Capitalization
+      <$> (o .:? "smallCamel")
+      <*> (o .:? "CapitalCamel")
+      <*> (o .:? "small_Snake")
+      <*> (o .:? "Capital_Snake")
+      <*> (o .:? "SCA_ETH_Flow_Points")
+      <*> (o .:? "ATT_NAME")
 
-instance A.FromJSON Category where
-  parseJSON = A.withObject "Category" $ \o ->
-    Category
-      <$> (o .:? "id")
-      <*> (o .:? "name")
-
-instance A.ToJSON Category where
-  toJSON Category {..} =
-   _omitNulls
-      [ "id" .= categoryId
-      , "name" .= categoryName
-      ]
+-- | ToJSON Capitalization
+instance A.ToJSON Capitalization where
+  toJSON Capitalization {..} =
+   _omitNulls
+      [ "smallCamel" .= capitalizationSmallCamel
+      , "CapitalCamel" .= capitalizationCapitalCamel
+      , "small_Snake" .= capitalizationSmallSnake
+      , "Capital_Snake" .= capitalizationCapitalSnake
+      , "SCA_ETH_Flow_Points" .= capitalizationScaEthFlowPoints
+      , "ATT_NAME" .= capitalizationAttName
+      ]
+
 
-
--- | Construct a value of type 'Category' (by applying it's required fields, if any)
-mkCategory
-  :: Category
-mkCategory =
-  Category
-  { categoryId = Nothing
-  , categoryName = Nothing
-  }
-  
-
--- ** ClassModel
--- |
--- Model for testing model with \"_class\" property
-data ClassModel = ClassModel
-  { classModelClass :: !(Maybe Text) -- ^ "_class"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ClassModel where
-  parseJSON = A.withObject "ClassModel" $ \o ->
-    ClassModel
-      <$> (o .:? "_class")
-
-instance A.ToJSON ClassModel where
-  toJSON ClassModel {..} =
-   _omitNulls
-      [ "_class" .= classModelClass
-      ]
+-- | Construct a value of type 'Capitalization' (by applying it's required fields, if any)
+mkCapitalization
+  :: Capitalization
+mkCapitalization =
+  Capitalization
+  { capitalizationSmallCamel = Nothing
+  , capitalizationCapitalCamel = Nothing
+  , capitalizationSmallSnake = Nothing
+  , capitalizationCapitalSnake = Nothing
+  , capitalizationScaEthFlowPoints = Nothing
+  , capitalizationAttName = Nothing
+  }
+  
+
+-- ** Category
+-- | Category
+data Category = Category
+  { categoryId :: !(Maybe Integer) -- ^ "id"
+  , categoryName :: !(Maybe Text) -- ^ "name"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Category
+instance A.FromJSON Category where
+  parseJSON = A.withObject "Category" $ \o ->
+    Category
+      <$> (o .:? "id")
+      <*> (o .:? "name")
 
-
--- | Construct a value of type 'ClassModel' (by applying it's required fields, if any)
-mkClassModel
-  :: ClassModel
-mkClassModel =
-  ClassModel
-  { classModelClass = Nothing
-  }
-  
-
--- ** Client
--- |
-data Client = Client
-  { clientClient :: !(Maybe Text) -- ^ "client"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Client where
-  parseJSON = A.withObject "Client" $ \o ->
-    Client
-      <$> (o .:? "client")
-
-instance A.ToJSON Client where
-  toJSON Client {..} =
-   _omitNulls
-      [ "client" .= clientClient
-      ]
+-- | ToJSON Category
+instance A.ToJSON Category where
+  toJSON Category {..} =
+   _omitNulls
+      [ "id" .= categoryId
+      , "name" .= categoryName
+      ]
+
+
+-- | Construct a value of type 'Category' (by applying it's required fields, if any)
+mkCategory
+  :: Category
+mkCategory =
+  Category
+  { categoryId = Nothing
+  , categoryName = Nothing
+  }
+  
+
+-- ** ClassModel
+-- | ClassModel
+-- Model for testing model with \"_class\" property
+data ClassModel = ClassModel
+  { classModelClass :: !(Maybe Text) -- ^ "_class"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
 
-
--- | Construct a value of type 'Client' (by applying it's required fields, if any)
-mkClient
-  :: Client
-mkClient =
-  Client
-  { clientClient = Nothing
-  }
-  
-
--- ** EnumArrays
--- |
-data EnumArrays = EnumArrays
-  { enumArraysJustSymbol :: !(Maybe Text) -- ^ "just_symbol"
-  , enumArraysArrayEnum :: !(Maybe [Text]) -- ^ "array_enum"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON EnumArrays where
-  parseJSON = A.withObject "EnumArrays" $ \o ->
-    EnumArrays
-      <$> (o .:? "just_symbol")
-      <*> (o .:? "array_enum")
+-- | FromJSON ClassModel
+instance A.FromJSON ClassModel where
+  parseJSON = A.withObject "ClassModel" $ \o ->
+    ClassModel
+      <$> (o .:? "_class")
+
+-- | ToJSON ClassModel
+instance A.ToJSON ClassModel where
+  toJSON ClassModel {..} =
+   _omitNulls
+      [ "_class" .= classModelClass
+      ]
+
+
+-- | Construct a value of type 'ClassModel' (by applying it's required fields, if any)
+mkClassModel
+  :: ClassModel
+mkClassModel =
+  ClassModel
+  { classModelClass = Nothing
+  }
+  
 
-instance A.ToJSON EnumArrays where
-  toJSON EnumArrays {..} =
-   _omitNulls
-      [ "just_symbol" .= enumArraysJustSymbol
-      , "array_enum" .= enumArraysArrayEnum
-      ]
+-- ** Client
+-- | Client
+data Client = Client
+  { clientClient :: !(Maybe Text) -- ^ "client"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
 
-
--- | Construct a value of type 'EnumArrays' (by applying it's required fields, if any)
-mkEnumArrays
-  :: EnumArrays
-mkEnumArrays =
-  EnumArrays
-  { enumArraysJustSymbol = Nothing
-  , enumArraysArrayEnum = Nothing
-  }
-  
-
--- ** EnumClass
--- |
-data EnumClass = EnumClass
-  { 
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON EnumClass where
-  parseJSON = A.withObject "EnumClass" $ \o ->
-    pure EnumClass
-      
-
-instance A.ToJSON EnumClass where
-  toJSON EnumClass  =
-   _omitNulls
-      [ 
-      ]
-
-
--- | Construct a value of type 'EnumClass' (by applying it's required fields, if any)
-mkEnumClass
-  :: EnumClass
-mkEnumClass =
-  EnumClass
-  { 
-  }
-  
+-- | FromJSON Client
+instance A.FromJSON Client where
+  parseJSON = A.withObject "Client" $ \o ->
+    Client
+      <$> (o .:? "client")
+
+-- | ToJSON Client
+instance A.ToJSON Client where
+  toJSON Client {..} =
+   _omitNulls
+      [ "client" .= clientClient
+      ]
+
+
+-- | Construct a value of type 'Client' (by applying it's required fields, if any)
+mkClient
+  :: Client
+mkClient =
+  Client
+  { clientClient = Nothing
+  }
+  
+
+-- ** EnumArrays
+-- | EnumArrays
+data EnumArrays = EnumArrays
+  { enumArraysJustSymbol :: !(Maybe Text) -- ^ "just_symbol"
+  , enumArraysArrayEnum :: !(Maybe [Text]) -- ^ "array_enum"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON EnumArrays
+instance A.FromJSON EnumArrays where
+  parseJSON = A.withObject "EnumArrays" $ \o ->
+    EnumArrays
+      <$> (o .:? "just_symbol")
+      <*> (o .:? "array_enum")
 
--- ** EnumTest
--- |
-data EnumTest = EnumTest
-  { enumTestEnumString :: !(Maybe Text) -- ^ "enum_string"
-  , enumTestEnumInteger :: !(Maybe Int) -- ^ "enum_integer"
-  , enumTestEnumNumber :: !(Maybe Double) -- ^ "enum_number"
-  , enumTestOuterEnum :: !(Maybe OuterEnum) -- ^ "outerEnum"
-  } deriving (P.Show,P.Eq,P.Typeable)
+-- | ToJSON EnumArrays
+instance A.ToJSON EnumArrays where
+  toJSON EnumArrays {..} =
+   _omitNulls
+      [ "just_symbol" .= enumArraysJustSymbol
+      , "array_enum" .= enumArraysArrayEnum
+      ]
+
 
-instance A.FromJSON EnumTest where
-  parseJSON = A.withObject "EnumTest" $ \o ->
-    EnumTest
-      <$> (o .:? "enum_string")
-      <*> (o .:? "enum_integer")
-      <*> (o .:? "enum_number")
-      <*> (o .:? "outerEnum")
-
-instance A.ToJSON EnumTest where
-  toJSON EnumTest {..} =
-   _omitNulls
-      [ "enum_string" .= enumTestEnumString
-      , "enum_integer" .= enumTestEnumInteger
-      , "enum_number" .= enumTestEnumNumber
-      , "outerEnum" .= enumTestOuterEnum
-      ]
+-- | Construct a value of type 'EnumArrays' (by applying it's required fields, if any)
+mkEnumArrays
+  :: EnumArrays
+mkEnumArrays =
+  EnumArrays
+  { enumArraysJustSymbol = Nothing
+  , enumArraysArrayEnum = Nothing
+  }
+  
+
+-- ** EnumClass
+-- | EnumClass
+data EnumClass = EnumClass
+  { 
+  } deriving (P.Show,P.Eq,P.Typeable)
+
 
-
--- | Construct a value of type 'EnumTest' (by applying it's required fields, if any)
-mkEnumTest
-  :: EnumTest
-mkEnumTest =
-  EnumTest
-  { enumTestEnumString = Nothing
-  , enumTestEnumInteger = Nothing
-  , enumTestEnumNumber = Nothing
-  , enumTestOuterEnum = Nothing
-  }
-  
+-- | FromJSON EnumClass
+instance A.FromJSON EnumClass where
+  parseJSON = A.withObject "EnumClass" $ \o ->
+    pure EnumClass
+      
+
+-- | ToJSON EnumClass
+instance A.ToJSON EnumClass where
+  toJSON EnumClass  =
+   _omitNulls
+      [ 
+      ]
 
--- ** FormatTest
--- |
-data FormatTest = FormatTest
-  { formatTestInteger :: !(Maybe Int) -- ^ "integer"
-  , formatTestInt32 :: !(Maybe Int) -- ^ "int32"
-  , formatTestInt64 :: !(Maybe Integer) -- ^ "int64"
-  , formatTestNumber :: !(Double) -- ^ /Required/ "number"
-  , formatTestFloat :: !(Maybe Float) -- ^ "float"
-  , formatTestDouble :: !(Maybe Double) -- ^ "double"
-  , formatTestString :: !(Maybe Text) -- ^ "string"
-  , formatTestByte :: !(ByteArray) -- ^ /Required/ "byte"
-  , formatTestBinary :: !(Maybe Binary) -- ^ "binary"
-  , formatTestDate :: !(Date) -- ^ /Required/ "date"
-  , formatTestDateTime :: !(Maybe DateTime) -- ^ "dateTime"
-  , formatTestUuid :: !(Maybe Text) -- ^ "uuid"
-  , formatTestPassword :: !(Text) -- ^ /Required/ "password"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON FormatTest where
-  parseJSON = A.withObject "FormatTest" $ \o ->
-    FormatTest
-      <$> (o .:? "integer")
-      <*> (o .:? "int32")
-      <*> (o .:? "int64")
-      <*> (o .:  "number")
-      <*> (o .:? "float")
-      <*> (o .:? "double")
-      <*> (o .:? "string")
-      <*> (o .:  "byte")
-      <*> (o .:? "binary")
-      <*> (o .:  "date")
-      <*> (o .:? "dateTime")
-      <*> (o .:? "uuid")
-      <*> (o .:  "password")
-
-instance A.ToJSON FormatTest where
-  toJSON FormatTest {..} =
-   _omitNulls
-      [ "integer" .= formatTestInteger
-      , "int32" .= formatTestInt32
-      , "int64" .= formatTestInt64
-      , "number" .= formatTestNumber
-      , "float" .= formatTestFloat
-      , "double" .= formatTestDouble
-      , "string" .= formatTestString
-      , "byte" .= formatTestByte
-      , "binary" .= formatTestBinary
-      , "date" .= formatTestDate
-      , "dateTime" .= formatTestDateTime
-      , "uuid" .= formatTestUuid
-      , "password" .= formatTestPassword
-      ]
-
-
--- | Construct a value of type 'FormatTest' (by applying it's required fields, if any)
-mkFormatTest
-  :: Double -- ^ 'formatTestNumber' 
-  -> ByteArray -- ^ 'formatTestByte' 
-  -> Date -- ^ 'formatTestDate' 
-  -> Text -- ^ 'formatTestPassword' 
-  -> FormatTest
-mkFormatTest formatTestNumber formatTestByte formatTestDate formatTestPassword =
-  FormatTest
-  { formatTestInteger = Nothing
-  , formatTestInt32 = Nothing
-  , formatTestInt64 = Nothing
-  , formatTestNumber
-  , formatTestFloat = Nothing
-  , formatTestDouble = Nothing
-  , formatTestString = Nothing
-  , formatTestByte
-  , formatTestBinary = Nothing
-  , formatTestDate
-  , formatTestDateTime = Nothing
-  , formatTestUuid = Nothing
-  , formatTestPassword
-  }
-  
-
--- ** HasOnlyReadOnly
--- |
-data HasOnlyReadOnly = HasOnlyReadOnly
-  { hasOnlyReadOnlyBar :: !(Maybe Text) -- ^ "bar"
-  , hasOnlyReadOnlyFoo :: !(Maybe Text) -- ^ "foo"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON HasOnlyReadOnly where
-  parseJSON = A.withObject "HasOnlyReadOnly" $ \o ->
-    HasOnlyReadOnly
-      <$> (o .:? "bar")
-      <*> (o .:? "foo")
-
-instance A.ToJSON HasOnlyReadOnly where
-  toJSON HasOnlyReadOnly {..} =
-   _omitNulls
-      [ "bar" .= hasOnlyReadOnlyBar
-      , "foo" .= hasOnlyReadOnlyFoo
-      ]
-
-
--- | Construct a value of type 'HasOnlyReadOnly' (by applying it's required fields, if any)
-mkHasOnlyReadOnly
-  :: HasOnlyReadOnly
-mkHasOnlyReadOnly =
-  HasOnlyReadOnly
-  { hasOnlyReadOnlyBar = Nothing
-  , hasOnlyReadOnlyFoo = Nothing
-  }
-  
-
--- ** MapTest
--- |
-data MapTest = MapTest
-  { mapTestMapMapOfString :: !(Maybe (Map.Map String (Map.Map String Text))) -- ^ "map_map_of_string"
-  , mapTestMapOfEnumString :: !(Maybe (Map.Map String Text)) -- ^ "map_of_enum_string"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON MapTest where
-  parseJSON = A.withObject "MapTest" $ \o ->
-    MapTest
-      <$> (o .:? "map_map_of_string")
-      <*> (o .:? "map_of_enum_string")
-
-instance A.ToJSON MapTest where
-  toJSON MapTest {..} =
-   _omitNulls
-      [ "map_map_of_string" .= mapTestMapMapOfString
-      , "map_of_enum_string" .= mapTestMapOfEnumString
-      ]
-
-
--- | Construct a value of type 'MapTest' (by applying it's required fields, if any)
-mkMapTest
-  :: MapTest
-mkMapTest =
-  MapTest
-  { mapTestMapMapOfString = Nothing
-  , mapTestMapOfEnumString = Nothing
-  }
-  
+
+-- | Construct a value of type 'EnumClass' (by applying it's required fields, if any)
+mkEnumClass
+  :: EnumClass
+mkEnumClass =
+  EnumClass
+  { 
+  }
+  
+
+-- ** EnumTest
+-- | EnumTest
+data EnumTest = EnumTest
+  { enumTestEnumString :: !(Maybe Text) -- ^ "enum_string"
+  , enumTestEnumInteger :: !(Maybe Int) -- ^ "enum_integer"
+  , enumTestEnumNumber :: !(Maybe Double) -- ^ "enum_number"
+  , enumTestOuterEnum :: !(Maybe OuterEnum) -- ^ "outerEnum"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON EnumTest
+instance A.FromJSON EnumTest where
+  parseJSON = A.withObject "EnumTest" $ \o ->
+    EnumTest
+      <$> (o .:? "enum_string")
+      <*> (o .:? "enum_integer")
+      <*> (o .:? "enum_number")
+      <*> (o .:? "outerEnum")
+
+-- | ToJSON EnumTest
+instance A.ToJSON EnumTest where
+  toJSON EnumTest {..} =
+   _omitNulls
+      [ "enum_string" .= enumTestEnumString
+      , "enum_integer" .= enumTestEnumInteger
+      , "enum_number" .= enumTestEnumNumber
+      , "outerEnum" .= enumTestOuterEnum
+      ]
+
+
+-- | Construct a value of type 'EnumTest' (by applying it's required fields, if any)
+mkEnumTest
+  :: EnumTest
+mkEnumTest =
+  EnumTest
+  { enumTestEnumString = Nothing
+  , enumTestEnumInteger = Nothing
+  , enumTestEnumNumber = Nothing
+  , enumTestOuterEnum = Nothing
+  }
+  
+
+-- ** FormatTest
+-- | FormatTest
+data FormatTest = FormatTest
+  { formatTestInteger :: !(Maybe Int) -- ^ "integer"
+  , formatTestInt32 :: !(Maybe Int) -- ^ "int32"
+  , formatTestInt64 :: !(Maybe Integer) -- ^ "int64"
+  , formatTestNumber :: !(Double) -- ^ /Required/ "number"
+  , formatTestFloat :: !(Maybe Float) -- ^ "float"
+  , formatTestDouble :: !(Maybe Double) -- ^ "double"
+  , formatTestString :: !(Maybe Text) -- ^ "string"
+  , formatTestByte :: !(ByteArray) -- ^ /Required/ "byte"
+  , formatTestBinary :: !(Maybe Binary) -- ^ "binary"
+  , formatTestDate :: !(Date) -- ^ /Required/ "date"
+  , formatTestDateTime :: !(Maybe DateTime) -- ^ "dateTime"
+  , formatTestUuid :: !(Maybe Text) -- ^ "uuid"
+  , formatTestPassword :: !(Text) -- ^ /Required/ "password"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON FormatTest
+instance A.FromJSON FormatTest where
+  parseJSON = A.withObject "FormatTest" $ \o ->
+    FormatTest
+      <$> (o .:? "integer")
+      <*> (o .:? "int32")
+      <*> (o .:? "int64")
+      <*> (o .:  "number")
+      <*> (o .:? "float")
+      <*> (o .:? "double")
+      <*> (o .:? "string")
+      <*> (o .:  "byte")
+      <*> (o .:? "binary")
+      <*> (o .:  "date")
+      <*> (o .:? "dateTime")
+      <*> (o .:? "uuid")
+      <*> (o .:  "password")
+
+-- | ToJSON FormatTest
+instance A.ToJSON FormatTest where
+  toJSON FormatTest {..} =
+   _omitNulls
+      [ "integer" .= formatTestInteger
+      , "int32" .= formatTestInt32
+      , "int64" .= formatTestInt64
+      , "number" .= formatTestNumber
+      , "float" .= formatTestFloat
+      , "double" .= formatTestDouble
+      , "string" .= formatTestString
+      , "byte" .= formatTestByte
+      , "binary" .= formatTestBinary
+      , "date" .= formatTestDate
+      , "dateTime" .= formatTestDateTime
+      , "uuid" .= formatTestUuid
+      , "password" .= formatTestPassword
+      ]
+
+
+-- | Construct a value of type 'FormatTest' (by applying it's required fields, if any)
+mkFormatTest
+  :: Double -- ^ 'formatTestNumber' 
+  -> ByteArray -- ^ 'formatTestByte' 
+  -> Date -- ^ 'formatTestDate' 
+  -> Text -- ^ 'formatTestPassword' 
+  -> FormatTest
+mkFormatTest formatTestNumber formatTestByte formatTestDate formatTestPassword =
+  FormatTest
+  { formatTestInteger = Nothing
+  , formatTestInt32 = Nothing
+  , formatTestInt64 = Nothing
+  , formatTestNumber
+  , formatTestFloat = Nothing
+  , formatTestDouble = Nothing
+  , formatTestString = Nothing
+  , formatTestByte
+  , formatTestBinary = Nothing
+  , formatTestDate
+  , formatTestDateTime = Nothing
+  , formatTestUuid = Nothing
+  , formatTestPassword
+  }
+  
+
+-- ** HasOnlyReadOnly
+-- | HasOnlyReadOnly
+data HasOnlyReadOnly = HasOnlyReadOnly
+  { hasOnlyReadOnlyBar :: !(Maybe Text) -- ^ "bar"
+  , hasOnlyReadOnlyFoo :: !(Maybe Text) -- ^ "foo"
+  } deriving (P.Show,P.Eq,P.Typeable)
 
--- ** MixedPropertiesAndAdditionalPropertiesClass
--- |
-data MixedPropertiesAndAdditionalPropertiesClass = MixedPropertiesAndAdditionalPropertiesClass
-  { mixedPropertiesAndAdditionalPropertiesClassUuid :: !(Maybe Text) -- ^ "uuid"
-  , mixedPropertiesAndAdditionalPropertiesClassDateTime :: !(Maybe DateTime) -- ^ "dateTime"
-  , mixedPropertiesAndAdditionalPropertiesClassMap :: !(Maybe (Map.Map String Animal)) -- ^ "map"
-  } deriving (P.Show,P.Eq,P.Typeable)
+
+-- | FromJSON HasOnlyReadOnly
+instance A.FromJSON HasOnlyReadOnly where
+  parseJSON = A.withObject "HasOnlyReadOnly" $ \o ->
+    HasOnlyReadOnly
+      <$> (o .:? "bar")
+      <*> (o .:? "foo")
 
-instance A.FromJSON MixedPropertiesAndAdditionalPropertiesClass where
-  parseJSON = A.withObject "MixedPropertiesAndAdditionalPropertiesClass" $ \o ->
-    MixedPropertiesAndAdditionalPropertiesClass
-      <$> (o .:? "uuid")
-      <*> (o .:? "dateTime")
-      <*> (o .:? "map")
-
-instance A.ToJSON MixedPropertiesAndAdditionalPropertiesClass where
-  toJSON MixedPropertiesAndAdditionalPropertiesClass {..} =
-   _omitNulls
-      [ "uuid" .= mixedPropertiesAndAdditionalPropertiesClassUuid
-      , "dateTime" .= mixedPropertiesAndAdditionalPropertiesClassDateTime
-      , "map" .= mixedPropertiesAndAdditionalPropertiesClassMap
-      ]
-
-
--- | Construct a value of type 'MixedPropertiesAndAdditionalPropertiesClass' (by applying it's required fields, if any)
-mkMixedPropertiesAndAdditionalPropertiesClass
-  :: MixedPropertiesAndAdditionalPropertiesClass
-mkMixedPropertiesAndAdditionalPropertiesClass =
-  MixedPropertiesAndAdditionalPropertiesClass
-  { mixedPropertiesAndAdditionalPropertiesClassUuid = Nothing
-  , mixedPropertiesAndAdditionalPropertiesClassDateTime = Nothing
-  , mixedPropertiesAndAdditionalPropertiesClassMap = Nothing
-  }
-  
+-- | ToJSON HasOnlyReadOnly
+instance A.ToJSON HasOnlyReadOnly where
+  toJSON HasOnlyReadOnly {..} =
+   _omitNulls
+      [ "bar" .= hasOnlyReadOnlyBar
+      , "foo" .= hasOnlyReadOnlyFoo
+      ]
+
+
+-- | Construct a value of type 'HasOnlyReadOnly' (by applying it's required fields, if any)
+mkHasOnlyReadOnly
+  :: HasOnlyReadOnly
+mkHasOnlyReadOnly =
+  HasOnlyReadOnly
+  { hasOnlyReadOnlyBar = Nothing
+  , hasOnlyReadOnlyFoo = Nothing
+  }
+  
+
+-- ** MapTest
+-- | MapTest
+data MapTest = MapTest
+  { mapTestMapMapOfString :: !(Maybe (Map.Map String (Map.Map String Text))) -- ^ "map_map_of_string"
+  , mapTestMapOfEnumString :: !(Maybe (Map.Map String Text)) -- ^ "map_of_enum_string"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
 
--- ** Model200Response
--- |
--- Model for testing model name starting with number
-data Model200Response = Model200Response
-  { model200ResponseName :: !(Maybe Int) -- ^ "name"
-  , model200ResponseClass :: !(Maybe Text) -- ^ "class"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Model200Response where
-  parseJSON = A.withObject "Model200Response" $ \o ->
-    Model200Response
-      <$> (o .:? "name")
-      <*> (o .:? "class")
-
-instance A.ToJSON Model200Response where
-  toJSON Model200Response {..} =
-   _omitNulls
-      [ "name" .= model200ResponseName
-      , "class" .= model200ResponseClass
-      ]
-
-
--- | Construct a value of type 'Model200Response' (by applying it's required fields, if any)
-mkModel200Response
-  :: Model200Response
-mkModel200Response =
-  Model200Response
-  { model200ResponseName = Nothing
-  , model200ResponseClass = Nothing
-  }
-  
-
--- ** ModelList
--- |
-data ModelList = ModelList
-  { modelList123List :: !(Maybe Text) -- ^ "123-list"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ModelList where
-  parseJSON = A.withObject "ModelList" $ \o ->
-    ModelList
-      <$> (o .:? "123-list")
+-- | FromJSON MapTest
+instance A.FromJSON MapTest where
+  parseJSON = A.withObject "MapTest" $ \o ->
+    MapTest
+      <$> (o .:? "map_map_of_string")
+      <*> (o .:? "map_of_enum_string")
+
+-- | ToJSON MapTest
+instance A.ToJSON MapTest where
+  toJSON MapTest {..} =
+   _omitNulls
+      [ "map_map_of_string" .= mapTestMapMapOfString
+      , "map_of_enum_string" .= mapTestMapOfEnumString
+      ]
+
+
+-- | Construct a value of type 'MapTest' (by applying it's required fields, if any)
+mkMapTest
+  :: MapTest
+mkMapTest =
+  MapTest
+  { mapTestMapMapOfString = Nothing
+  , mapTestMapOfEnumString = Nothing
+  }
+  
+
+-- ** MixedPropertiesAndAdditionalPropertiesClass
+-- | MixedPropertiesAndAdditionalPropertiesClass
+data MixedPropertiesAndAdditionalPropertiesClass = MixedPropertiesAndAdditionalPropertiesClass
+  { mixedPropertiesAndAdditionalPropertiesClassUuid :: !(Maybe Text) -- ^ "uuid"
+  , mixedPropertiesAndAdditionalPropertiesClassDateTime :: !(Maybe DateTime) -- ^ "dateTime"
+  , mixedPropertiesAndAdditionalPropertiesClassMap :: !(Maybe (Map.Map String Animal)) -- ^ "map"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON MixedPropertiesAndAdditionalPropertiesClass
+instance A.FromJSON MixedPropertiesAndAdditionalPropertiesClass where
+  parseJSON = A.withObject "MixedPropertiesAndAdditionalPropertiesClass" $ \o ->
+    MixedPropertiesAndAdditionalPropertiesClass
+      <$> (o .:? "uuid")
+      <*> (o .:? "dateTime")
+      <*> (o .:? "map")
 
-instance A.ToJSON ModelList where
-  toJSON ModelList {..} =
-   _omitNulls
-      [ "123-list" .= modelList123List
-      ]
-
-
--- | Construct a value of type 'ModelList' (by applying it's required fields, if any)
-mkModelList
-  :: ModelList
-mkModelList =
-  ModelList
-  { modelList123List = Nothing
-  }
-  
-
--- ** ModelReturn
--- |
--- Model for testing reserved words
-data ModelReturn = ModelReturn
-  { modelReturnReturn :: !(Maybe Int) -- ^ "return"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ModelReturn where
-  parseJSON = A.withObject "ModelReturn" $ \o ->
-    ModelReturn
-      <$> (o .:? "return")
-
-instance A.ToJSON ModelReturn where
-  toJSON ModelReturn {..} =
-   _omitNulls
-      [ "return" .= modelReturnReturn
-      ]
-
-
--- | Construct a value of type 'ModelReturn' (by applying it's required fields, if any)
-mkModelReturn
-  :: ModelReturn
-mkModelReturn =
-  ModelReturn
-  { modelReturnReturn = Nothing
-  }
-  
-
--- ** Name
--- |
--- Model for testing model name same as property name
-data Name = Name
-  { nameName :: !(Int) -- ^ /Required/ "name"
-  , nameSnakeCase :: !(Maybe Int) -- ^ "snake_case"
-  , nameProperty :: !(Maybe Text) -- ^ "property"
-  , name123Number :: !(Maybe Int) -- ^ "123Number"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Name where
-  parseJSON = A.withObject "Name" $ \o ->
-    Name
-      <$> (o .:  "name")
-      <*> (o .:? "snake_case")
-      <*> (o .:? "property")
-      <*> (o .:? "123Number")
+-- | ToJSON MixedPropertiesAndAdditionalPropertiesClass
+instance A.ToJSON MixedPropertiesAndAdditionalPropertiesClass where
+  toJSON MixedPropertiesAndAdditionalPropertiesClass {..} =
+   _omitNulls
+      [ "uuid" .= mixedPropertiesAndAdditionalPropertiesClassUuid
+      , "dateTime" .= mixedPropertiesAndAdditionalPropertiesClassDateTime
+      , "map" .= mixedPropertiesAndAdditionalPropertiesClassMap
+      ]
+
+
+-- | Construct a value of type 'MixedPropertiesAndAdditionalPropertiesClass' (by applying it's required fields, if any)
+mkMixedPropertiesAndAdditionalPropertiesClass
+  :: MixedPropertiesAndAdditionalPropertiesClass
+mkMixedPropertiesAndAdditionalPropertiesClass =
+  MixedPropertiesAndAdditionalPropertiesClass
+  { mixedPropertiesAndAdditionalPropertiesClassUuid = Nothing
+  , mixedPropertiesAndAdditionalPropertiesClassDateTime = Nothing
+  , mixedPropertiesAndAdditionalPropertiesClassMap = Nothing
+  }
+  
+
+-- ** Model200Response
+-- | Model200Response
+-- Model for testing model name starting with number
+data Model200Response = Model200Response
+  { model200ResponseName :: !(Maybe Int) -- ^ "name"
+  , model200ResponseClass :: !(Maybe Text) -- ^ "class"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Model200Response
+instance A.FromJSON Model200Response where
+  parseJSON = A.withObject "Model200Response" $ \o ->
+    Model200Response
+      <$> (o .:? "name")
+      <*> (o .:? "class")
+
+-- | ToJSON Model200Response
+instance A.ToJSON Model200Response where
+  toJSON Model200Response {..} =
+   _omitNulls
+      [ "name" .= model200ResponseName
+      , "class" .= model200ResponseClass
+      ]
+
+
+-- | Construct a value of type 'Model200Response' (by applying it's required fields, if any)
+mkModel200Response
+  :: Model200Response
+mkModel200Response =
+  Model200Response
+  { model200ResponseName = Nothing
+  , model200ResponseClass = Nothing
+  }
+  
+
+-- ** ModelList
+-- | ModelList
+data ModelList = ModelList
+  { modelList123List :: !(Maybe Text) -- ^ "123-list"
+  } deriving (P.Show,P.Eq,P.Typeable)
 
-instance A.ToJSON Name where
-  toJSON Name {..} =
-   _omitNulls
-      [ "name" .= nameName
-      , "snake_case" .= nameSnakeCase
-      , "property" .= nameProperty
-      , "123Number" .= name123Number
-      ]
-
-
--- | Construct a value of type 'Name' (by applying it's required fields, if any)
-mkName
-  :: Int -- ^ 'nameName' 
-  -> Name
-mkName nameName =
-  Name
-  { nameName
-  , nameSnakeCase = Nothing
-  , nameProperty = Nothing
-  , name123Number = Nothing
-  }
-  
-
--- ** NumberOnly
--- |
-data NumberOnly = NumberOnly
-  { numberOnlyJustNumber :: !(Maybe Double) -- ^ "JustNumber"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON NumberOnly where
-  parseJSON = A.withObject "NumberOnly" $ \o ->
-    NumberOnly
-      <$> (o .:? "JustNumber")
-
-instance A.ToJSON NumberOnly where
-  toJSON NumberOnly {..} =
-   _omitNulls
-      [ "JustNumber" .= numberOnlyJustNumber
-      ]
-
-
--- | Construct a value of type 'NumberOnly' (by applying it's required fields, if any)
-mkNumberOnly
-  :: NumberOnly
-mkNumberOnly =
-  NumberOnly
-  { numberOnlyJustNumber = Nothing
-  }
-  
-
--- ** Order
--- |
-data Order = Order
-  { orderId :: !(Maybe Integer) -- ^ "id"
-  , orderPetId :: !(Maybe Integer) -- ^ "petId"
-  , orderQuantity :: !(Maybe Int) -- ^ "quantity"
-  , orderShipDate :: !(Maybe DateTime) -- ^ "shipDate"
-  , orderStatus :: !(Maybe Text) -- ^ "status" - Order Status
-  , orderComplete :: !(Maybe Bool) -- ^ "complete"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Order where
-  parseJSON = A.withObject "Order" $ \o ->
-    Order
-      <$> (o .:? "id")
-      <*> (o .:? "petId")
-      <*> (o .:? "quantity")
-      <*> (o .:? "shipDate")
-      <*> (o .:? "status")
-      <*> (o .:? "complete")
-
-instance A.ToJSON Order where
-  toJSON Order {..} =
-   _omitNulls
-      [ "id" .= orderId
-      , "petId" .= orderPetId
-      , "quantity" .= orderQuantity
-      , "shipDate" .= orderShipDate
-      , "status" .= orderStatus
-      , "complete" .= orderComplete
-      ]
-
-
--- | Construct a value of type 'Order' (by applying it's required fields, if any)
-mkOrder
-  :: Order
-mkOrder =
-  Order
-  { orderId = Nothing
-  , orderPetId = Nothing
-  , orderQuantity = Nothing
-  , orderShipDate = Nothing
-  , orderStatus = Nothing
-  , orderComplete = Nothing
-  }
-  
-
--- ** OuterBoolean
--- |
-data OuterBoolean = OuterBoolean
-  { 
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON OuterBoolean where
-  parseJSON = A.withObject "OuterBoolean" $ \o ->
-    pure OuterBoolean
-      
-
-instance A.ToJSON OuterBoolean where
-  toJSON OuterBoolean  =
-   _omitNulls
-      [ 
-      ]
-
-
--- | Construct a value of type 'OuterBoolean' (by applying it's required fields, if any)
-mkOuterBoolean
-  :: OuterBoolean
-mkOuterBoolean =
-  OuterBoolean
-  { 
-  }
-  
-
--- ** OuterComposite
--- |
-data OuterComposite = OuterComposite
-  { outerCompositeMyNumber :: !(Maybe OuterNumber) -- ^ "my_number"
-  , outerCompositeMyString :: !(Maybe OuterString) -- ^ "my_string"
-  , outerCompositeMyBoolean :: !(Maybe OuterBoolean) -- ^ "my_boolean"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON OuterComposite where
-  parseJSON = A.withObject "OuterComposite" $ \o ->
-    OuterComposite
-      <$> (o .:? "my_number")
-      <*> (o .:? "my_string")
-      <*> (o .:? "my_boolean")
-
-instance A.ToJSON OuterComposite where
-  toJSON OuterComposite {..} =
-   _omitNulls
-      [ "my_number" .= outerCompositeMyNumber
-      , "my_string" .= outerCompositeMyString
-      , "my_boolean" .= outerCompositeMyBoolean
-      ]
-
-
--- | Construct a value of type 'OuterComposite' (by applying it's required fields, if any)
-mkOuterComposite
-  :: OuterComposite
-mkOuterComposite =
-  OuterComposite
-  { outerCompositeMyNumber = Nothing
-  , outerCompositeMyString = Nothing
-  , outerCompositeMyBoolean = Nothing
-  }
-  
-
--- ** OuterEnum
--- |
-data OuterEnum = OuterEnum
-  { 
-  } deriving (P.Show,P.Eq,P.Typeable)
+
+-- | FromJSON ModelList
+instance A.FromJSON ModelList where
+  parseJSON = A.withObject "ModelList" $ \o ->
+    ModelList
+      <$> (o .:? "123-list")
+
+-- | ToJSON ModelList
+instance A.ToJSON ModelList where
+  toJSON ModelList {..} =
+   _omitNulls
+      [ "123-list" .= modelList123List
+      ]
+
+
+-- | Construct a value of type 'ModelList' (by applying it's required fields, if any)
+mkModelList
+  :: ModelList
+mkModelList =
+  ModelList
+  { modelList123List = Nothing
+  }
+  
+
+-- ** ModelReturn
+-- | ModelReturn
+-- Model for testing reserved words
+data ModelReturn = ModelReturn
+  { modelReturnReturn :: !(Maybe Int) -- ^ "return"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON ModelReturn
+instance A.FromJSON ModelReturn where
+  parseJSON = A.withObject "ModelReturn" $ \o ->
+    ModelReturn
+      <$> (o .:? "return")
+
+-- | ToJSON ModelReturn
+instance A.ToJSON ModelReturn where
+  toJSON ModelReturn {..} =
+   _omitNulls
+      [ "return" .= modelReturnReturn
+      ]
+
+
+-- | Construct a value of type 'ModelReturn' (by applying it's required fields, if any)
+mkModelReturn
+  :: ModelReturn
+mkModelReturn =
+  ModelReturn
+  { modelReturnReturn = Nothing
+  }
+  
+
+-- ** Name
+-- | Name
+-- Model for testing model name same as property name
+data Name = Name
+  { nameName :: !(Int) -- ^ /Required/ "name"
+  , nameSnakeCase :: !(Maybe Int) -- ^ "snake_case"
+  , nameProperty :: !(Maybe Text) -- ^ "property"
+  , name123Number :: !(Maybe Int) -- ^ "123Number"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Name
+instance A.FromJSON Name where
+  parseJSON = A.withObject "Name" $ \o ->
+    Name
+      <$> (o .:  "name")
+      <*> (o .:? "snake_case")
+      <*> (o .:? "property")
+      <*> (o .:? "123Number")
+
+-- | ToJSON Name
+instance A.ToJSON Name where
+  toJSON Name {..} =
+   _omitNulls
+      [ "name" .= nameName
+      , "snake_case" .= nameSnakeCase
+      , "property" .= nameProperty
+      , "123Number" .= name123Number
+      ]
+
+
+-- | Construct a value of type 'Name' (by applying it's required fields, if any)
+mkName
+  :: Int -- ^ 'nameName' 
+  -> Name
+mkName nameName =
+  Name
+  { nameName
+  , nameSnakeCase = Nothing
+  , nameProperty = Nothing
+  , name123Number = Nothing
+  }
+  
+
+-- ** NumberOnly
+-- | NumberOnly
+data NumberOnly = NumberOnly
+  { numberOnlyJustNumber :: !(Maybe Double) -- ^ "JustNumber"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON NumberOnly
+instance A.FromJSON NumberOnly where
+  parseJSON = A.withObject "NumberOnly" $ \o ->
+    NumberOnly
+      <$> (o .:? "JustNumber")
+
+-- | ToJSON NumberOnly
+instance A.ToJSON NumberOnly where
+  toJSON NumberOnly {..} =
+   _omitNulls
+      [ "JustNumber" .= numberOnlyJustNumber
+      ]
+
+
+-- | Construct a value of type 'NumberOnly' (by applying it's required fields, if any)
+mkNumberOnly
+  :: NumberOnly
+mkNumberOnly =
+  NumberOnly
+  { numberOnlyJustNumber = Nothing
+  }
+  
+
+-- ** Order
+-- | Order
+data Order = Order
+  { orderId :: !(Maybe Integer) -- ^ "id"
+  , orderPetId :: !(Maybe Integer) -- ^ "petId"
+  , orderQuantity :: !(Maybe Int) -- ^ "quantity"
+  , orderShipDate :: !(Maybe DateTime) -- ^ "shipDate"
+  , orderStatus :: !(Maybe Text) -- ^ "status" - Order Status
+  , orderComplete :: !(Maybe Bool) -- ^ "complete"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Order
+instance A.FromJSON Order where
+  parseJSON = A.withObject "Order" $ \o ->
+    Order
+      <$> (o .:? "id")
+      <*> (o .:? "petId")
+      <*> (o .:? "quantity")
+      <*> (o .:? "shipDate")
+      <*> (o .:? "status")
+      <*> (o .:? "complete")
+
+-- | ToJSON Order
+instance A.ToJSON Order where
+  toJSON Order {..} =
+   _omitNulls
+      [ "id" .= orderId
+      , "petId" .= orderPetId
+      , "quantity" .= orderQuantity
+      , "shipDate" .= orderShipDate
+      , "status" .= orderStatus
+      , "complete" .= orderComplete
+      ]
+
 
-instance A.FromJSON OuterEnum where
-  parseJSON = A.withObject "OuterEnum" $ \o ->
-    pure OuterEnum
-      
-
-instance A.ToJSON OuterEnum where
-  toJSON OuterEnum  =
-   _omitNulls
-      [ 
-      ]
-
-
--- | Construct a value of type 'OuterEnum' (by applying it's required fields, if any)
-mkOuterEnum
-  :: OuterEnum
-mkOuterEnum =
-  OuterEnum
+-- | Construct a value of type 'Order' (by applying it's required fields, if any)
+mkOrder
+  :: Order
+mkOrder =
+  Order
+  { orderId = Nothing
+  , orderPetId = Nothing
+  , orderQuantity = Nothing
+  , orderShipDate = Nothing
+  , orderStatus = Nothing
+  , orderComplete = Nothing
+  }
+  
+
+-- ** OuterBoolean
+-- | OuterBoolean
+data OuterBoolean = OuterBoolean
   { 
-  }
-  
+  } deriving (P.Show,P.Eq,P.Typeable)
+
 
--- ** OuterNumber
--- |
-data OuterNumber = OuterNumber
-  { 
-  } deriving (P.Show,P.Eq,P.Typeable)
+-- | FromJSON OuterBoolean
+instance A.FromJSON OuterBoolean where
+  parseJSON = A.withObject "OuterBoolean" $ \o ->
+    pure OuterBoolean
+      
 
-instance A.FromJSON OuterNumber where
-  parseJSON = A.withObject "OuterNumber" $ \o ->
-    pure OuterNumber
-      
-
-instance A.ToJSON OuterNumber where
-  toJSON OuterNumber  =
-   _omitNulls
-      [ 
-      ]
-
-
--- | Construct a value of type 'OuterNumber' (by applying it's required fields, if any)
-mkOuterNumber
-  :: OuterNumber
-mkOuterNumber =
-  OuterNumber
-  { 
-  }
-  
-
--- ** OuterString
--- |
-data OuterString = OuterString
-  { 
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON OuterString where
-  parseJSON = A.withObject "OuterString" $ \o ->
-    pure OuterString
-      
-
-instance A.ToJSON OuterString where
-  toJSON OuterString  =
-   _omitNulls
-      [ 
-      ]
-
-
--- | Construct a value of type 'OuterString' (by applying it's required fields, if any)
-mkOuterString
-  :: OuterString
-mkOuterString =
-  OuterString
-  { 
-  }
-  
-
--- ** Pet
--- |
-data Pet = Pet
-  { petId :: !(Maybe Integer) -- ^ "id"
-  , petCategory :: !(Maybe Category) -- ^ "category"
-  , petName :: !(Text) -- ^ /Required/ "name"
-  , petPhotoUrls :: !([Text]) -- ^ /Required/ "photoUrls"
-  , petTags :: !(Maybe [Tag]) -- ^ "tags"
-  , petStatus :: !(Maybe Text) -- ^ "status" - pet status in the store
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Pet where
-  parseJSON = A.withObject "Pet" $ \o ->
-    Pet
-      <$> (o .:? "id")
-      <*> (o .:? "category")
-      <*> (o .:  "name")
-      <*> (o .:  "photoUrls")
-      <*> (o .:? "tags")
-      <*> (o .:? "status")
-
-instance A.ToJSON Pet where
-  toJSON Pet {..} =
+-- | ToJSON OuterBoolean
+instance A.ToJSON OuterBoolean where
+  toJSON OuterBoolean  =
+   _omitNulls
+      [ 
+      ]
+
+
+-- | Construct a value of type 'OuterBoolean' (by applying it's required fields, if any)
+mkOuterBoolean
+  :: OuterBoolean
+mkOuterBoolean =
+  OuterBoolean
+  { 
+  }
+  
+
+-- ** OuterComposite
+-- | OuterComposite
+data OuterComposite = OuterComposite
+  { outerCompositeMyNumber :: !(Maybe OuterNumber) -- ^ "my_number"
+  , outerCompositeMyString :: !(Maybe OuterString) -- ^ "my_string"
+  , outerCompositeMyBoolean :: !(Maybe OuterBoolean) -- ^ "my_boolean"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON OuterComposite
+instance A.FromJSON OuterComposite where
+  parseJSON = A.withObject "OuterComposite" $ \o ->
+    OuterComposite
+      <$> (o .:? "my_number")
+      <*> (o .:? "my_string")
+      <*> (o .:? "my_boolean")
+
+-- | ToJSON OuterComposite
+instance A.ToJSON OuterComposite where
+  toJSON OuterComposite {..} =
+   _omitNulls
+      [ "my_number" .= outerCompositeMyNumber
+      , "my_string" .= outerCompositeMyString
+      , "my_boolean" .= outerCompositeMyBoolean
+      ]
+
+
+-- | Construct a value of type 'OuterComposite' (by applying it's required fields, if any)
+mkOuterComposite
+  :: OuterComposite
+mkOuterComposite =
+  OuterComposite
+  { outerCompositeMyNumber = Nothing
+  , outerCompositeMyString = Nothing
+  , outerCompositeMyBoolean = Nothing
+  }
+  
+
+-- ** OuterEnum
+-- | OuterEnum
+data OuterEnum = OuterEnum
+  { 
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON OuterEnum
+instance A.FromJSON OuterEnum where
+  parseJSON = A.withObject "OuterEnum" $ \o ->
+    pure OuterEnum
+      
+
+-- | ToJSON OuterEnum
+instance A.ToJSON OuterEnum where
+  toJSON OuterEnum  =
    _omitNulls
-      [ "id" .= petId
-      , "category" .= petCategory
-      , "name" .= petName
-      , "photoUrls" .= petPhotoUrls
-      , "tags" .= petTags
-      , "status" .= petStatus
-      ]
-
-
--- | Construct a value of type 'Pet' (by applying it's required fields, if any)
-mkPet
-  :: Text -- ^ 'petName' 
-  -> [Text] -- ^ 'petPhotoUrls' 
-  -> Pet
-mkPet petName petPhotoUrls =
-  Pet
-  { petId = Nothing
-  , petCategory = Nothing
-  , petName
-  , petPhotoUrls
-  , petTags = Nothing
-  , petStatus = Nothing
-  }
-  
-
--- ** ReadOnlyFirst
--- |
-data ReadOnlyFirst = ReadOnlyFirst
-  { readOnlyFirstBar :: !(Maybe Text) -- ^ "bar"
-  , readOnlyFirstBaz :: !(Maybe Text) -- ^ "baz"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON ReadOnlyFirst where
-  parseJSON = A.withObject "ReadOnlyFirst" $ \o ->
-    ReadOnlyFirst
-      <$> (o .:? "bar")
-      <*> (o .:? "baz")
-
-instance A.ToJSON ReadOnlyFirst where
-  toJSON ReadOnlyFirst {..} =
-   _omitNulls
-      [ "bar" .= readOnlyFirstBar
-      , "baz" .= readOnlyFirstBaz
-      ]
-
-
--- | Construct a value of type 'ReadOnlyFirst' (by applying it's required fields, if any)
-mkReadOnlyFirst
-  :: ReadOnlyFirst
-mkReadOnlyFirst =
-  ReadOnlyFirst
-  { readOnlyFirstBar = Nothing
-  , readOnlyFirstBaz = Nothing
-  }
-  
+      [ 
+      ]
+
+
+-- | Construct a value of type 'OuterEnum' (by applying it's required fields, if any)
+mkOuterEnum
+  :: OuterEnum
+mkOuterEnum =
+  OuterEnum
+  { 
+  }
+  
+
+-- ** OuterNumber
+-- | OuterNumber
+data OuterNumber = OuterNumber
+  { 
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON OuterNumber
+instance A.FromJSON OuterNumber where
+  parseJSON = A.withObject "OuterNumber" $ \o ->
+    pure OuterNumber
+      
+
+-- | ToJSON OuterNumber
+instance A.ToJSON OuterNumber where
+  toJSON OuterNumber  =
+   _omitNulls
+      [ 
+      ]
+
+
+-- | Construct a value of type 'OuterNumber' (by applying it's required fields, if any)
+mkOuterNumber
+  :: OuterNumber
+mkOuterNumber =
+  OuterNumber
+  { 
+  }
+  
+
+-- ** OuterString
+-- | OuterString
+data OuterString = OuterString
+  { 
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON OuterString
+instance A.FromJSON OuterString where
+  parseJSON = A.withObject "OuterString" $ \o ->
+    pure OuterString
+      
 
--- ** SpecialModelName
--- |
-data SpecialModelName = SpecialModelName
-  { specialModelNameSpecialPropertyName :: !(Maybe Integer) -- ^ "$special[property.name]"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON SpecialModelName where
-  parseJSON = A.withObject "SpecialModelName" $ \o ->
-    SpecialModelName
-      <$> (o .:? "$special[property.name]")
-
-instance A.ToJSON SpecialModelName where
-  toJSON SpecialModelName {..} =
-   _omitNulls
-      [ "$special[property.name]" .= specialModelNameSpecialPropertyName
-      ]
+-- | ToJSON OuterString
+instance A.ToJSON OuterString where
+  toJSON OuterString  =
+   _omitNulls
+      [ 
+      ]
+
+
+-- | Construct a value of type 'OuterString' (by applying it's required fields, if any)
+mkOuterString
+  :: OuterString
+mkOuterString =
+  OuterString
+  { 
+  }
+  
 
-
--- | Construct a value of type 'SpecialModelName' (by applying it's required fields, if any)
-mkSpecialModelName
-  :: SpecialModelName
-mkSpecialModelName =
-  SpecialModelName
-  { specialModelNameSpecialPropertyName = Nothing
-  }
-  
-
--- ** Tag
--- |
-data Tag = Tag
-  { tagId :: !(Maybe Integer) -- ^ "id"
-  , tagName :: !(Maybe Text) -- ^ "name"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Tag where
-  parseJSON = A.withObject "Tag" $ \o ->
-    Tag
-      <$> (o .:? "id")
-      <*> (o .:? "name")
+-- ** Pet
+-- | Pet
+data Pet = Pet
+  { petId :: !(Maybe Integer) -- ^ "id"
+  , petCategory :: !(Maybe Category) -- ^ "category"
+  , petName :: !(Text) -- ^ /Required/ "name"
+  , petPhotoUrls :: !([Text]) -- ^ /Required/ "photoUrls"
+  , petTags :: !(Maybe [Tag]) -- ^ "tags"
+  , petStatus :: !(Maybe Text) -- ^ "status" - pet status in the store
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Pet
+instance A.FromJSON Pet where
+  parseJSON = A.withObject "Pet" $ \o ->
+    Pet
+      <$> (o .:? "id")
+      <*> (o .:? "category")
+      <*> (o .:  "name")
+      <*> (o .:  "photoUrls")
+      <*> (o .:? "tags")
+      <*> (o .:? "status")
 
-instance A.ToJSON Tag where
-  toJSON Tag {..} =
-   _omitNulls
-      [ "id" .= tagId
-      , "name" .= tagName
-      ]
-
-
--- | Construct a value of type 'Tag' (by applying it's required fields, if any)
-mkTag
-  :: Tag
-mkTag =
-  Tag
-  { tagId = Nothing
-  , tagName = Nothing
-  }
-  
-
--- ** User
--- |
-data User = User
-  { userId :: !(Maybe Integer) -- ^ "id"
-  , userUsername :: !(Maybe Text) -- ^ "username"
-  , userFirstName :: !(Maybe Text) -- ^ "firstName"
-  , userLastName :: !(Maybe Text) -- ^ "lastName"
-  , userEmail :: !(Maybe Text) -- ^ "email"
-  , userPassword :: !(Maybe Text) -- ^ "password"
-  , userPhone :: !(Maybe Text) -- ^ "phone"
-  , userUserStatus :: !(Maybe Int) -- ^ "userStatus" - User Status
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON User where
-  parseJSON = A.withObject "User" $ \o ->
-    User
-      <$> (o .:? "id")
-      <*> (o .:? "username")
-      <*> (o .:? "firstName")
-      <*> (o .:? "lastName")
-      <*> (o .:? "email")
-      <*> (o .:? "password")
-      <*> (o .:? "phone")
-      <*> (o .:? "userStatus")
-
-instance A.ToJSON User where
-  toJSON User {..} =
-   _omitNulls
-      [ "id" .= userId
-      , "username" .= userUsername
-      , "firstName" .= userFirstName
-      , "lastName" .= userLastName
-      , "email" .= userEmail
-      , "password" .= userPassword
-      , "phone" .= userPhone
-      , "userStatus" .= userUserStatus
-      ]
-
-
--- | Construct a value of type 'User' (by applying it's required fields, if any)
-mkUser
-  :: User
-mkUser =
-  User
-  { userId = Nothing
-  , userUsername = Nothing
-  , userFirstName = Nothing
-  , userLastName = Nothing
-  , userEmail = Nothing
-  , userPassword = Nothing
-  , userPhone = Nothing
-  , userUserStatus = Nothing
-  }
-  
-
--- ** Cat
--- |
-data Cat = Cat
-  { catClassName :: !(Text) -- ^ /Required/ "className"
-  , catColor :: !(Maybe Text) -- ^ "color"
-  , catDeclawed :: !(Maybe Bool) -- ^ "declawed"
-  } deriving (P.Show,P.Eq,P.Typeable)
-
-instance A.FromJSON Cat where
-  parseJSON = A.withObject "Cat" $ \o ->
-    Cat
-      <$> (o .:  "className")
-      <*> (o .:? "color")
-      <*> (o .:? "declawed")
-
-instance A.ToJSON Cat where
-  toJSON Cat {..} =
-   _omitNulls
-      [ "className" .= catClassName
-      , "color" .= catColor
-      , "declawed" .= catDeclawed
-      ]
-
-
--- | Construct a value of type 'Cat' (by applying it's required fields, if any)
-mkCat
-  :: Text -- ^ 'catClassName' 
-  -> Cat
-mkCat catClassName =
-  Cat
-  { catClassName
-  , catColor = Nothing
-  , catDeclawed = Nothing
-  }
-  
-
--- ** Dog
--- |
-data Dog = Dog
-  { dogClassName :: !(Text) -- ^ /Required/ "className"
-  , dogColor :: !(Maybe Text) -- ^ "color"
-  , dogBreed :: !(Maybe Text) -- ^ "breed"
-  } deriving (P.Show,P.Eq,P.Typeable)
+-- | ToJSON Pet
+instance A.ToJSON Pet where
+  toJSON Pet {..} =
+   _omitNulls
+      [ "id" .= petId
+      , "category" .= petCategory
+      , "name" .= petName
+      , "photoUrls" .= petPhotoUrls
+      , "tags" .= petTags
+      , "status" .= petStatus
+      ]
+
+
+-- | Construct a value of type 'Pet' (by applying it's required fields, if any)
+mkPet
+  :: Text -- ^ 'petName' 
+  -> [Text] -- ^ 'petPhotoUrls' 
+  -> Pet
+mkPet petName petPhotoUrls =
+  Pet
+  { petId = Nothing
+  , petCategory = Nothing
+  , petName
+  , petPhotoUrls
+  , petTags = Nothing
+  , petStatus = Nothing
+  }
+  
+
+-- ** ReadOnlyFirst
+-- | ReadOnlyFirst
+data ReadOnlyFirst = ReadOnlyFirst
+  { readOnlyFirstBar :: !(Maybe Text) -- ^ "bar"
+  , readOnlyFirstBaz :: !(Maybe Text) -- ^ "baz"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON ReadOnlyFirst
+instance A.FromJSON ReadOnlyFirst where
+  parseJSON = A.withObject "ReadOnlyFirst" $ \o ->
+    ReadOnlyFirst
+      <$> (o .:? "bar")
+      <*> (o .:? "baz")
+
+-- | ToJSON ReadOnlyFirst
+instance A.ToJSON ReadOnlyFirst where
+  toJSON ReadOnlyFirst {..} =
+   _omitNulls
+      [ "bar" .= readOnlyFirstBar
+      , "baz" .= readOnlyFirstBaz
+      ]
+
+
+-- | Construct a value of type 'ReadOnlyFirst' (by applying it's required fields, if any)
+mkReadOnlyFirst
+  :: ReadOnlyFirst
+mkReadOnlyFirst =
+  ReadOnlyFirst
+  { readOnlyFirstBar = Nothing
+  , readOnlyFirstBaz = Nothing
+  }
+  
+
+-- ** SpecialModelName
+-- | SpecialModelName
+data SpecialModelName = SpecialModelName
+  { specialModelNameSpecialPropertyName :: !(Maybe Integer) -- ^ "$special[property.name]"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON SpecialModelName
+instance A.FromJSON SpecialModelName where
+  parseJSON = A.withObject "SpecialModelName" $ \o ->
+    SpecialModelName
+      <$> (o .:? "$special[property.name]")
+
+-- | ToJSON SpecialModelName
+instance A.ToJSON SpecialModelName where
+  toJSON SpecialModelName {..} =
+   _omitNulls
+      [ "$special[property.name]" .= specialModelNameSpecialPropertyName
+      ]
+
+
+-- | Construct a value of type 'SpecialModelName' (by applying it's required fields, if any)
+mkSpecialModelName
+  :: SpecialModelName
+mkSpecialModelName =
+  SpecialModelName
+  { specialModelNameSpecialPropertyName = Nothing
+  }
+  
+
+-- ** Tag
+-- | Tag
+data Tag = Tag
+  { tagId :: !(Maybe Integer) -- ^ "id"
+  , tagName :: !(Maybe Text) -- ^ "name"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Tag
+instance A.FromJSON Tag where
+  parseJSON = A.withObject "Tag" $ \o ->
+    Tag
+      <$> (o .:? "id")
+      <*> (o .:? "name")
+
+-- | ToJSON Tag
+instance A.ToJSON Tag where
+  toJSON Tag {..} =
+   _omitNulls
+      [ "id" .= tagId
+      , "name" .= tagName
+      ]
+
 
-instance A.FromJSON Dog where
-  parseJSON = A.withObject "Dog" $ \o ->
-    Dog
-      <$> (o .:  "className")
-      <*> (o .:? "color")
-      <*> (o .:? "breed")
-
-instance A.ToJSON Dog where
-  toJSON Dog {..} =
-   _omitNulls
-      [ "className" .= dogClassName
-      , "color" .= dogColor
-      , "breed" .= dogBreed
-      ]
-
-
--- | Construct a value of type 'Dog' (by applying it's required fields, if any)
-mkDog
-  :: Text -- ^ 'dogClassName' 
-  -> Dog
-mkDog dogClassName =
-  Dog
-  { dogClassName
-  , dogColor = Nothing
-  , dogBreed = Nothing
-  }
-  
-
--- * Utils
-
--- | Removes Null fields.  (OpenAPI-Specification 2.0 does not allow Null in JSON)
-
-_omitNulls :: [(Text, A.Value)] -> A.Value
-_omitNulls = A.object . P.filter notNull
-  where
-    notNull (_, A.Null) = False
-    notNull _ = True
-
-_toFormItem :: (WH.ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text])
-_toFormItem name x = (name,) . (:[]) . WH.toQueryParam <$> x
-
-_emptyToNothing :: Maybe String -> Maybe String
-_emptyToNothing (Just "") = Nothing
-_emptyToNothing x = x
-{-# INLINE _emptyToNothing #-}
-
-_memptyToNothing :: (P.Monoid a, P.Eq a) => Maybe a -> Maybe a
-_memptyToNothing (Just x) | x P.== P.mempty = Nothing
-_memptyToNothing x = x
-{-# INLINE _memptyToNothing #-}
+-- | Construct a value of type 'Tag' (by applying it's required fields, if any)
+mkTag
+  :: Tag
+mkTag =
+  Tag
+  { tagId = Nothing
+  , tagName = Nothing
+  }
+  
+
+-- ** User
+-- | User
+data User = User
+  { userId :: !(Maybe Integer) -- ^ "id"
+  , userUsername :: !(Maybe Text) -- ^ "username"
+  , userFirstName :: !(Maybe Text) -- ^ "firstName"
+  , userLastName :: !(Maybe Text) -- ^ "lastName"
+  , userEmail :: !(Maybe Text) -- ^ "email"
+  , userPassword :: !(Maybe Text) -- ^ "password"
+  , userPhone :: !(Maybe Text) -- ^ "phone"
+  , userUserStatus :: !(Maybe Int) -- ^ "userStatus" - User Status
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON User
+instance A.FromJSON User where
+  parseJSON = A.withObject "User" $ \o ->
+    User
+      <$> (o .:? "id")
+      <*> (o .:? "username")
+      <*> (o .:? "firstName")
+      <*> (o .:? "lastName")
+      <*> (o .:? "email")
+      <*> (o .:? "password")
+      <*> (o .:? "phone")
+      <*> (o .:? "userStatus")
+
+-- | ToJSON User
+instance A.ToJSON User where
+  toJSON User {..} =
+   _omitNulls
+      [ "id" .= userId
+      , "username" .= userUsername
+      , "firstName" .= userFirstName
+      , "lastName" .= userLastName
+      , "email" .= userEmail
+      , "password" .= userPassword
+      , "phone" .= userPhone
+      , "userStatus" .= userUserStatus
+      ]
 
--- * DateTime Formatting
-
-newtype DateTime = DateTime { unDateTime :: TI.UTCTime }
-  deriving (P.Eq,P.Data,P.Ord,P.Typeable,NF.NFData,TI.ParseTime,TI.FormatTime)
-instance A.FromJSON DateTime where
-  parseJSON = A.withText "DateTime" (_readDateTime . T.unpack)
-instance A.ToJSON DateTime where
-  toJSON (DateTime t) = A.toJSON (_showDateTime t)
-instance WH.FromHttpApiData DateTime where
-  parseUrlPiece = P.left T.pack . _readDateTime . T.unpack
-instance WH.ToHttpApiData DateTime where
-  toUrlPiece (DateTime t) = T.pack (_showDateTime t)
-instance P.Show DateTime where
-  show (DateTime t) = _showDateTime t
-
--- | @_parseISO8601@
-_readDateTime :: (TI.ParseTime t, Monad m, Alternative m) => String -> m t
-_readDateTime =
-  _parseISO8601
-{-# INLINE _readDateTime #-}
-
--- | @TI.formatISO8601Millis@
-_showDateTime :: (t ~ TI.UTCTime, TI.FormatTime t) => t -> String
-_showDateTime =
-  TI.formatISO8601Millis
-{-# INLINE _showDateTime #-}
-
-_parseISO8601 :: (TI.ParseTime t, Monad m, Alternative m) => String -> m t
-_parseISO8601 t =
-  P.asum $
-  P.flip (TI.parseTimeM True TI.defaultTimeLocale) t <$>
-  ["%FT%T%QZ", "%FT%T%Q%z", "%FT%T%Q%Z"]
-{-# INLINE _parseISO8601 #-}
+
+-- | Construct a value of type 'User' (by applying it's required fields, if any)
+mkUser
+  :: User
+mkUser =
+  User
+  { userId = Nothing
+  , userUsername = Nothing
+  , userFirstName = Nothing
+  , userLastName = Nothing
+  , userEmail = Nothing
+  , userPassword = Nothing
+  , userPhone = Nothing
+  , userUserStatus = Nothing
+  }
+  
+
+-- ** Cat
+-- | Cat
+data Cat = Cat
+  { catClassName :: !(Text) -- ^ /Required/ "className"
+  , catColor :: !(Maybe Text) -- ^ "color"
+  , catDeclawed :: !(Maybe Bool) -- ^ "declawed"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Cat
+instance A.FromJSON Cat where
+  parseJSON = A.withObject "Cat" $ \o ->
+    Cat
+      <$> (o .:  "className")
+      <*> (o .:? "color")
+      <*> (o .:? "declawed")
 
--- * Date Formatting
-
-newtype Date = Date { unDate :: TI.Day }
-  deriving (P.Enum,P.Eq,P.Data,P.Ord,P.Ix,NF.NFData,TI.ParseTime,TI.FormatTime)
-instance A.FromJSON Date where
-  parseJSON = A.withText "Date" (_readDate . T.unpack)
-instance A.ToJSON Date where
-  toJSON (Date t) = A.toJSON (_showDate t)
-instance WH.FromHttpApiData Date where
-  parseUrlPiece = P.left T.pack . _readDate . T.unpack
-instance WH.ToHttpApiData Date where
-  toUrlPiece (Date t) = T.pack (_showDate t)
-instance P.Show Date where
-  show (Date t) = _showDate t
-
--- | @TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"@
-_readDate :: (TI.ParseTime t, Monad m) => String -> m t
-_readDate =
-  TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"
-{-# INLINE _readDate #-}
-
--- | @TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"@
-_showDate :: TI.FormatTime t => t -> String
-_showDate =
-  TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"
-{-# INLINE _showDate #-}
-
--- * Byte/Binary Formatting
-
-  
--- | base64 encoded characters
-newtype ByteArray = ByteArray { unByteArray :: BL.ByteString }
-  deriving (P.Eq,P.Data,P.Ord,P.Typeable,NF.NFData)
-
-instance A.FromJSON ByteArray where
-  parseJSON = A.withText "ByteArray" _readByteArray
-instance A.ToJSON ByteArray where
-  toJSON = A.toJSON . _showByteArray
-instance WH.FromHttpApiData ByteArray where
-  parseUrlPiece = P.left T.pack . _readByteArray
-instance WH.ToHttpApiData ByteArray where
-  toUrlPiece = _showByteArray
-instance P.Show ByteArray where
-  show = T.unpack . _showByteArray
-
--- | read base64 encoded characters
-_readByteArray :: Monad m => Text -> m ByteArray
-_readByteArray = P.either P.fail (pure . ByteArray) . BL64.decode . BL.fromStrict . T.encodeUtf8
-{-# INLINE _readByteArray #-}
-
--- | show base64 encoded characters
-_showByteArray :: ByteArray -> Text
-_showByteArray = T.decodeUtf8 . BL.toStrict . BL64.encode . unByteArray
-{-# INLINE _showByteArray #-}
-
--- | any sequence of octets
-newtype Binary = Binary { unBinary :: BL.ByteString }
-  deriving (P.Eq,P.Data,P.Ord,P.Typeable,NF.NFData)
-
-instance A.FromJSON Binary where
-  parseJSON = A.withText "Binary" _readBinaryBase64
-instance A.ToJSON Binary where
-  toJSON = A.toJSON . _showBinaryBase64
-instance WH.FromHttpApiData Binary where
-  parseUrlPiece = P.left T.pack . _readBinaryBase64
-instance WH.ToHttpApiData Binary where
-  toUrlPiece = _showBinaryBase64
-instance P.Show Binary where
-  show = T.unpack . _showBinaryBase64
+-- | ToJSON Cat
+instance A.ToJSON Cat where
+  toJSON Cat {..} =
+   _omitNulls
+      [ "className" .= catClassName
+      , "color" .= catColor
+      , "declawed" .= catDeclawed
+      ]
+
+
+-- | Construct a value of type 'Cat' (by applying it's required fields, if any)
+mkCat
+  :: Text -- ^ 'catClassName' 
+  -> Cat
+mkCat catClassName =
+  Cat
+  { catClassName
+  , catColor = Nothing
+  , catDeclawed = Nothing
+  }
+  
+
+-- ** Dog
+-- | Dog
+data Dog = Dog
+  { dogClassName :: !(Text) -- ^ /Required/ "className"
+  , dogColor :: !(Maybe Text) -- ^ "color"
+  , dogBreed :: !(Maybe Text) -- ^ "breed"
+  } deriving (P.Show,P.Eq,P.Typeable)
+
+
+-- | FromJSON Dog
+instance A.FromJSON Dog where
+  parseJSON = A.withObject "Dog" $ \o ->
+    Dog
+      <$> (o .:  "className")
+      <*> (o .:? "color")
+      <*> (o .:? "breed")
+
+-- | ToJSON Dog
+instance A.ToJSON Dog where
+  toJSON Dog {..} =
+   _omitNulls
+      [ "className" .= dogClassName
+      , "color" .= dogColor
+      , "breed" .= dogBreed
+      ]
+
+
+-- | Construct a value of type 'Dog' (by applying it's required fields, if any)
+mkDog
+  :: Text -- ^ 'dogClassName' 
+  -> Dog
+mkDog dogClassName =
+  Dog
+  { dogClassName
+  , dogColor = Nothing
+  , dogBreed = Nothing
+  }
+  
+
+-- * Utils
+
+-- | Removes Null fields.  (OpenAPI-Specification 2.0 does not allow Null in JSON)
+_omitNulls :: [(Text, A.Value)] -> A.Value
+_omitNulls = A.object . P.filter notNull
+  where
+    notNull (_, A.Null) = False
+    notNull _ = True
 
-_readBinaryBase64 :: Monad m => Text -> m Binary
-_readBinaryBase64 = P.either P.fail (pure . Binary) . BL64.decode . BL.fromStrict . T.encodeUtf8
-{-# INLINE _readBinaryBase64 #-}
+-- | Encodes fields using WH.toQueryParam
+_toFormItem :: (WH.ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text])
+_toFormItem name x = (name,) . (:[]) . WH.toQueryParam <$> x
 
-_showBinaryBase64 :: Binary -> Text
-_showBinaryBase64 = T.decodeUtf8 . BL.toStrict . BL64.encode . unBinary
-{-# INLINE _showBinaryBase64 #-}
\ No newline at end of file +
-- | Collapse (Just "") to Nothing +_emptyToNothing :: Maybe String -> Maybe String +_emptyToNothing (Just "") = Nothing +_emptyToNothing x = x +{-# INLINE _emptyToNothing #-} + +-- | Collapse (Just mempty) to Nothing +_memptyToNothing :: (P.Monoid a, P.Eq a) => Maybe a -> Maybe a +_memptyToNothing (Just x) | x P.== P.mempty = Nothing +_memptyToNothing x = x +{-# INLINE _memptyToNothing #-} + +-- * DateTime Formatting + +newtype DateTime = DateTime { unDateTime :: TI.UTCTime } + deriving (P.Eq,P.Data,P.Ord,P.Typeable,NF.NFData,TI.ParseTime,TI.FormatTime) +instance A.FromJSON DateTime where + parseJSON = A.withText "DateTime" (_readDateTime . T.unpack) +instance A.ToJSON DateTime where + toJSON (DateTime t) = A.toJSON (_showDateTime t) +instance WH.FromHttpApiData DateTime where + parseUrlPiece = P.left T.pack . _readDateTime . T.unpack +instance WH.ToHttpApiData DateTime where + toUrlPiece (DateTime t) = T.pack (_showDateTime t) +instance P.Show DateTime where + show (DateTime t) = _showDateTime t + +-- | @_parseISO8601@ +_readDateTime :: (TI.ParseTime t, Monad m, Alternative m) => String -> m t +_readDateTime = + _parseISO8601 +{-# INLINE _readDateTime #-} + +-- | @TI.formatISO8601Millis@ +_showDateTime :: (t ~ TI.UTCTime, TI.FormatTime t) => t -> String +_showDateTime = + TI.formatISO8601Millis +{-# INLINE _showDateTime #-} + +-- | parse an ISO8601 date-time string +_parseISO8601 :: (TI.ParseTime t, Monad m, Alternative m) => String -> m t +_parseISO8601 t = + P.asum $ + P.flip (TI.parseTimeM True TI.defaultTimeLocale) t <$> + ["%FT%T%QZ", "%FT%T%Q%z", "%FT%T%Q%Z"] +{-# INLINE _parseISO8601 #-} + +-- * Date Formatting + +newtype Date = Date { unDate :: TI.Day } + deriving (P.Enum,P.Eq,P.Data,P.Ord,P.Ix,NF.NFData,TI.ParseTime,TI.FormatTime) +instance A.FromJSON Date where + parseJSON = A.withText "Date" (_readDate . T.unpack) +instance A.ToJSON Date where + toJSON (Date t) = A.toJSON (_showDate t) +instance WH.FromHttpApiData Date where + parseUrlPiece = P.left T.pack . _readDate . T.unpack +instance WH.ToHttpApiData Date where + toUrlPiece (Date t) = T.pack (_showDate t) +instance P.Show Date where + show (Date t) = _showDate t + +-- | @TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"@ +_readDate :: (TI.ParseTime t, Monad m) => String -> m t +_readDate = + TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d" +{-# INLINE _readDate #-} + +-- | @TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"@ +_showDate :: TI.FormatTime t => t -> String +_showDate = + TI.formatTime TI.defaultTimeLocale "%Y-%m-%d" +{-# INLINE _showDate #-} + +-- * Byte/Binary Formatting + + +-- | base64 encoded characters +newtype ByteArray = ByteArray { unByteArray :: BL.ByteString } + deriving (P.Eq,P.Data,P.Ord,P.Typeable,NF.NFData) + +instance A.FromJSON ByteArray where + parseJSON = A.withText "ByteArray" _readByteArray +instance A.ToJSON ByteArray where + toJSON = A.toJSON . _showByteArray +instance WH.FromHttpApiData ByteArray where + parseUrlPiece = P.left T.pack . _readByteArray +instance WH.ToHttpApiData ByteArray where + toUrlPiece = _showByteArray +instance P.Show ByteArray where + show = T.unpack . _showByteArray + +-- | read base64 encoded characters +_readByteArray :: Monad m => Text -> m ByteArray +_readByteArray = P.either P.fail (pure . ByteArray) . BL64.decode . BL.fromStrict . T.encodeUtf8 +{-# INLINE _readByteArray #-} + +-- | show base64 encoded characters +_showByteArray :: ByteArray -> Text +_showByteArray = T.decodeUtf8 . BL.toStrict . BL64.encode . unByteArray +{-# INLINE _showByteArray #-} + +-- | any sequence of octets +newtype Binary = Binary { unBinary :: BL.ByteString } + deriving (P.Eq,P.Data,P.Ord,P.Typeable,NF.NFData) + +instance A.FromJSON Binary where + parseJSON = A.withText "Binary" _readBinaryBase64 +instance A.ToJSON Binary where + toJSON = A.toJSON . _showBinaryBase64 +instance WH.FromHttpApiData Binary where + parseUrlPiece = P.left T.pack . _readBinaryBase64 +instance WH.ToHttpApiData Binary where + toUrlPiece = _showBinaryBase64 +instance P.Show Binary where + show = T.unpack . _showBinaryBase64 + +_readBinaryBase64 :: Monad m => Text -> m Binary +_readBinaryBase64 = P.either P.fail (pure . Binary) . BL64.decode . BL.fromStrict . T.encodeUtf8 +{-# INLINE _readBinaryBase64 #-} + +_showBinaryBase64 :: Binary -> Text +_showBinaryBase64 = T.decodeUtf8 . BL.toStrict . BL64.encode . unBinary +{-# INLINE _showBinaryBase64 #-} +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.html b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.html index 25b9e55eff20..aa1d021477e0 100644 --- a/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.html +++ b/samples/client/petstore/haskell-http-client/docs/src/SwaggerPetstore.html @@ -1,20 +1,30 @@ -
{-|
+        
         
 
{-
+   Swagger Petstore
+
+   This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+   OpenAPI spec version: 1.0.0
+   Contact: apiteam@swagger.io
+   Generated by Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
+-}
+
+{-|
 Module : SwaggerPetstore
 -}
-
-module SwaggerPetstore
-  ( module SwaggerPetstore.Client
-  , module SwaggerPetstore.API
-  , module SwaggerPetstore.Model
-  , module SwaggerPetstore.MimeTypes
-  , module SwaggerPetstore.Lens
-  , module SwaggerPetstore.Logging
-  ) where
-
-import SwaggerPetstore.API
-import SwaggerPetstore.Client
-import SwaggerPetstore.Model
-import SwaggerPetstore.MimeTypes
-import SwaggerPetstore.Lens
-import SwaggerPetstore.Logging
-
\ No newline at end of file +
+module SwaggerPetstore + ( module SwaggerPetstore.Client + , module SwaggerPetstore.API + , module SwaggerPetstore.Model + , module SwaggerPetstore.MimeTypes + , module SwaggerPetstore.Lens + , module SwaggerPetstore.Logging + ) where + +import SwaggerPetstore.API +import SwaggerPetstore.Client +import SwaggerPetstore.Model +import SwaggerPetstore.MimeTypes +import SwaggerPetstore.Lens +import SwaggerPetstore.Logging +
\ No newline at end of file diff --git a/samples/client/petstore/haskell-http-client/example-app/Main.hs b/samples/client/petstore/haskell-http-client/example-app/Main.hs index d4faad4d5ca0..cf703a572d6d 100644 --- a/samples/client/petstore/haskell-http-client/example-app/Main.hs +++ b/samples/client/petstore/haskell-http-client/example-app/Main.hs @@ -26,9 +26,16 @@ main = do config0 <- S.withStdoutLogging =<< S.newConfig - let config = case lookup "HOST" env of - Just h -> config0 { S.configHost = BCL.pack h } - _ -> config0 + let config = + -- configure host + case lookup "HOST" env of + Just h -> config0 { S.configHost = BCL.pack h } + _ -> config0 + -- each configured auth method is only applied to requests that specify them + `S.addAuthMethod` S.AuthBasicHttpBasicTest "username" "password" + `S.addAuthMethod` S.AuthApiKeyApiKey "secret-key" + `S.addAuthMethod` S.AuthApiKeyApiKeyQuery "secret-key" + `S.addAuthMethod` S.AuthOAuthPetstoreAuth "secret-key" putStrLn "******** CONFIG ********" putStrLn (show config) @@ -87,7 +94,7 @@ runPet mgr config = do Right pet@S.Pet { S.petId = Just pid } -> do -- create the request for getPetById - let getPetByIdRequest = S.getPetById pid + let getPetByIdRequest = S.getPetById (S.PetId pid) -- dispatchMime returns MimeResult, which includes the -- expected decoded model object 'Pet', or a parse failure @@ -97,12 +104,12 @@ runPet mgr config = do Right r -> putStrLn $ "getPetById: found pet: " <> show r -- display 'Pet' model object, r -- findPetsByStatus - let findPetsByStatusRequest = S.findPetsByStatus ["available","pending","sold"] + let findPetsByStatusRequest = S.findPetsByStatus (S.Status ["available","pending","sold"]) findPetsByStatusResult <- S.dispatchMime mgr config findPetsByStatusRequest S.MimeJSON mapM_ (\r -> putStrLn $ "findPetsByStatus: found " <> (show . length) r <> " pets") findPetsByStatusResult -- findPetsByTags - let findPetsByTagsRequest = S.findPetsByTags ["name","tag1"] + let findPetsByTagsRequest = S.findPetsByTags (S.Tags ["name","tag1"]) findPetsByTagsResult <- S.dispatchMime mgr config findPetsByTagsRequest S.MimeJSON mapM_ (\r -> putStrLn $ "findPetsByTags: found " <> (show . length) r <> " pets") findPetsByTagsResult @@ -119,20 +126,20 @@ runPet mgr config = do -- -- Defined in ‘SwaggerPetstore.API’ -- instance S.HasOptionalParam S.UpdatePetWithForm S.Status -- -- Defined in ‘SwaggerPetstore.API’ - let updatePetWithFormRequest = S.updatePetWithForm S.MimeFormUrlEncoded pid + let updatePetWithFormRequest = S.updatePetWithForm S.MimeFormUrlEncoded (S.PetId pid) `S.applyOptionalParam` S.Name2 "petName" - `S.applyOptionalParam` S.Status "pending" + `S.applyOptionalParam` S.StatusText "pending" _ <- S.dispatchLbs mgr config updatePetWithFormRequest S.MimeJSON -- multipart/form-data file uploads are just a different content-type - let uploadFileRequest = S.uploadFile S.MimeMultipartFormData pid + let uploadFileRequest = S.uploadFile S.MimeMultipartFormData (S.PetId pid) `S.applyOptionalParam` S.File "package.yaml" -- the file contents of the path are read when dispatched `S.applyOptionalParam` S.AdditionalMetadata "a package.yaml file" uploadFileRequestResult <- S.dispatchMime mgr config uploadFileRequest S.MimeJSON mapM_ (\r -> putStrLn $ "uploadFile: " <> show r) uploadFileRequestResult -- deletePet - let deletePetRequest = S.deletePet pid + let deletePetRequest = S.deletePet (S.PetId pid) `S.applyOptionalParam` S.ApiKey "api key" _ <- S.dispatchLbs mgr config deletePetRequest S.MimeJSON @@ -155,7 +162,7 @@ runStore mgr config = do -- we can set arbitrary headers with setHeader let getInventoryRequest = S.getInventory - `S.setHeader` [("api_key","special-key")] + `S.setHeader` [("random-header","random-value")] getInventoryRequestRequestResult <- S.dispatchMime mgr config getInventoryRequest S.MimeJSON mapM_ (\r -> putStrLn $ "getInventoryRequest: found " <> (show . length) r <> " results") getInventoryRequestRequestResult @@ -168,12 +175,12 @@ runStore mgr config = do let orderId = maybe 10 id $ either (const Nothing) (S.orderId) (S.mimeResult placeOrderResult) -- getOrderByid - let getOrderByIdRequest = S.getOrderById orderId + let getOrderByIdRequest = S.getOrderById (S.OrderId orderId) getOrderByIdRequestResult <- S.dispatchMime mgr config getOrderByIdRequest S.MimeJSON mapM_ (\r -> putStrLn $ "getOrderById: found order: " <> show r) getOrderByIdRequestResult -- deleteOrder - let deleteOrderRequest = S.deleteOrder "21" + let deleteOrderRequest = S.deleteOrder (S.OrderIdText "21") _ <- S.dispatchLbs mgr config deleteOrderRequest S.MimeJSON return () @@ -205,32 +212,32 @@ runUser mgr config = do -- can use lenses (model record names are appended L) to view or modify records let users = take 8 $ drop 1 $ iterate (L.over S.userUsernameL (fmap (<> "*")) . L.over S.userIdL (fmap (+ 1))) user - let createUsersWithArrayInputRequest = S.createUsersWithArrayInput S.MimeJSON users + let createUsersWithArrayInputRequest = S.createUsersWithArrayInput S.MimeJSON (S.Body users) _ <- S.dispatchLbs mgr config createUsersWithArrayInputRequest S.MimeNoContent -- createUsersWithArrayInput - let createUsersWithListInputRequest = S.createUsersWithListInput S.MimeJSON users + let createUsersWithListInputRequest = S.createUsersWithListInput S.MimeJSON (S.Body users) _ <- S.dispatchLbs mgr config createUsersWithListInputRequest S.MimeNoContent -- getUserByName - let getUserByNameRequest = S.getUserByName username + let getUserByNameRequest = S.getUserByName (S.Username username) getUserByNameResult <- S.dispatchMime mgr config getUserByNameRequest S.MimeJSON mapM_ (\r -> putStrLn $ "getUserByName: found user: " <> show r) getUserByNameResult -- loginUser - let loginUserRequest = S.loginUser username "password1" + let loginUserRequest = S.loginUser (S.Username username) (S.Password "password1") loginUserResult <- S.dispatchLbs mgr config loginUserRequest S.MimeJSON BCL.putStrLn $ "loginUser: " <> (NH.responseBody loginUserResult) -- updateUser - let updateUserRequest = S.updateUser S.MimeJSON username (user { S.userEmail = Just "xyz@example.com" }) + let updateUserRequest = S.updateUser S.MimeJSON (S.Username username) (user { S.userEmail = Just "xyz@example.com" }) _ <- S.dispatchLbs mgr config updateUserRequest S.MimeJSON -- logoutUser _ <- S.dispatchLbs mgr config S.logoutUser S.MimeJSON -- deleteUser - let deleteUserRequest = S.deleteUser username + let deleteUserRequest = S.deleteUser (S.Username username) _ <- S.dispatchLbs mgr config deleteUserRequest S.MimeJSON return () diff --git a/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/API.hs b/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/API.hs index 320722d1a215..1ced8a3c753f 100644 --- a/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/API.hs +++ b/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/API.hs @@ -12,16 +12,17 @@ Module : SwaggerPetstore.API -} -{-# LANGUAGE RecordWildCards #-} - -{-# LANGUAGE MultiParamTypeClasses #-} -{-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE ScopedTypeVariables #-} -{-# LANGUAGE FlexibleInstances #-} -{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE ConstraintKinds #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE InstanceSigs #-} +{-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE NamedFieldPuns #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RecordWildCards #-} +{-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE ExistentialQuantification #-} {-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-} module SwaggerPetstore.API where @@ -40,6 +41,7 @@ import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Builder as BB import qualified Data.ByteString.Char8 as BC import qualified Data.ByteString.Lazy.Char8 as BCL +import qualified Data.ByteString.Base64 as B64 import qualified Network.HTTP.Client.MultipartFormData as NH import qualified Network.HTTP.Media as ME @@ -49,7 +51,7 @@ import qualified Web.HttpApiData as WH import qualified Web.FormUrlEncoded as WH import qualified Data.CaseInsensitive as CI -import qualified Data.Data as P (Typeable) +import qualified Data.Data as P (Typeable, TypeRep, typeOf, typeRep) import qualified Data.Foldable as P import qualified Data.Map as Map import qualified Data.Set as Set @@ -217,76 +219,77 @@ instance Produces TestClientModel MimeJSON -- -- Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 -- --- AuthMethod: http_basic_test +-- AuthMethod: 'AuthBasicHttpBasicTest' -- -- Note: Has 'Produces' instances, but no response schema -- testEndpointParameters :: (Consumes TestEndpointParameters contentType) => contentType -- ^ request content-type ('MimeType') - -> Double -- ^ "number" - None - -> Double -- ^ "double" - None - -> Text -- ^ "patternWithoutDelimiter" - None - -> ByteArray -- ^ "byte" - None + -> Number -- ^ "number" - None + -> ParamDouble -- ^ "double" - None + -> PatternWithoutDelimiter -- ^ "patternWithoutDelimiter" - None + -> Byte -- ^ "byte" - None -> SwaggerPetstoreRequest TestEndpointParameters contentType res -testEndpointParameters _ number double patternWithoutDelimiter byte = +testEndpointParameters _ (Number number) (ParamDouble double) (PatternWithoutDelimiter patternWithoutDelimiter) (Byte byte) = _mkRequest "POST" ["/fake"] - `_addForm` toForm ("number", number) - `_addForm` toForm ("double", double) - `_addForm` toForm ("pattern_without_delimiter", patternWithoutDelimiter) - `_addForm` toForm ("byte", byte) + `addForm` toForm ("number", number) + `addForm` toForm ("double", double) + `addForm` toForm ("pattern_without_delimiter", patternWithoutDelimiter) + `addForm` toForm ("byte", byte) + `_hasAuthType` (P.Proxy :: P.Proxy AuthBasicHttpBasicTest) data TestEndpointParameters -- | /Optional Param/ "integer" - None instance HasOptionalParam TestEndpointParameters ParamInteger where applyOptionalParam req (ParamInteger xs) = - req `_addForm` toForm ("integer", xs) + req `addForm` toForm ("integer", xs) -- | /Optional Param/ "int32" - None instance HasOptionalParam TestEndpointParameters Int32 where applyOptionalParam req (Int32 xs) = - req `_addForm` toForm ("int32", xs) + req `addForm` toForm ("int32", xs) -- | /Optional Param/ "int64" - None instance HasOptionalParam TestEndpointParameters Int64 where applyOptionalParam req (Int64 xs) = - req `_addForm` toForm ("int64", xs) + req `addForm` toForm ("int64", xs) -- | /Optional Param/ "float" - None instance HasOptionalParam TestEndpointParameters ParamFloat where applyOptionalParam req (ParamFloat xs) = - req `_addForm` toForm ("float", xs) + req `addForm` toForm ("float", xs) -- | /Optional Param/ "string" - None instance HasOptionalParam TestEndpointParameters ParamString where applyOptionalParam req (ParamString xs) = - req `_addForm` toForm ("string", xs) + req `addForm` toForm ("string", xs) -- | /Optional Param/ "binary" - None instance HasOptionalParam TestEndpointParameters ParamBinary where applyOptionalParam req (ParamBinary xs) = - req `_addForm` toForm ("binary", xs) + req `addForm` toForm ("binary", xs) -- | /Optional Param/ "date" - None instance HasOptionalParam TestEndpointParameters ParamDate where applyOptionalParam req (ParamDate xs) = - req `_addForm` toForm ("date", xs) + req `addForm` toForm ("date", xs) -- | /Optional Param/ "dateTime" - None instance HasOptionalParam TestEndpointParameters ParamDateTime where applyOptionalParam req (ParamDateTime xs) = - req `_addForm` toForm ("dateTime", xs) + req `addForm` toForm ("dateTime", xs) -- | /Optional Param/ "password" - None instance HasOptionalParam TestEndpointParameters Password where applyOptionalParam req (Password xs) = - req `_addForm` toForm ("password", xs) + req `addForm` toForm ("password", xs) -- | /Optional Param/ "callback" - None instance HasOptionalParam TestEndpointParameters Callback where applyOptionalParam req (Callback xs) = - req `_addForm` toForm ("callback", xs) + req `addForm` toForm ("callback", xs) -- | @application/xml; charset=utf-8@ instance Consumes TestEndpointParameters MimeXmlCharsetutf8 @@ -321,12 +324,12 @@ data TestEnumParameters -- | /Optional Param/ "enum_form_string_array" - Form parameter enum test (string array) instance HasOptionalParam TestEnumParameters EnumFormStringArray where applyOptionalParam req (EnumFormStringArray xs) = - req `_addForm` toFormColl CommaSeparated ("enum_form_string_array", xs) + req `addForm` toFormColl CommaSeparated ("enum_form_string_array", xs) -- | /Optional Param/ "enum_form_string" - Form parameter enum test (string) instance HasOptionalParam TestEnumParameters EnumFormString where applyOptionalParam req (EnumFormString xs) = - req `_addForm` toForm ("enum_form_string", xs) + req `addForm` toForm ("enum_form_string", xs) -- | /Optional Param/ "enum_header_string_array" - Header parameter enum test (string array) instance HasOptionalParam TestEnumParameters EnumHeaderStringArray where @@ -341,22 +344,22 @@ instance HasOptionalParam TestEnumParameters EnumHeaderString where -- | /Optional Param/ "enum_query_string_array" - Query parameter enum test (string array) instance HasOptionalParam TestEnumParameters EnumQueryStringArray where applyOptionalParam req (EnumQueryStringArray xs) = - req `_setQuery` toQueryColl CommaSeparated ("enum_query_string_array", Just xs) + req `setQuery` toQueryColl CommaSeparated ("enum_query_string_array", Just xs) -- | /Optional Param/ "enum_query_string" - Query parameter enum test (string) instance HasOptionalParam TestEnumParameters EnumQueryString where applyOptionalParam req (EnumQueryString xs) = - req `_setQuery` toQuery ("enum_query_string", Just xs) + req `setQuery` toQuery ("enum_query_string", Just xs) -- | /Optional Param/ "enum_query_integer" - Query parameter enum test (double) instance HasOptionalParam TestEnumParameters EnumQueryInteger where applyOptionalParam req (EnumQueryInteger xs) = - req `_setQuery` toQuery ("enum_query_integer", Just xs) + req `setQuery` toQuery ("enum_query_integer", Just xs) -- | /Optional Param/ "enum_query_double" - Query parameter enum test (double) instance HasOptionalParam TestEnumParameters EnumQueryDouble where applyOptionalParam req (EnumQueryDouble xs) = - req `_addForm` toForm ("enum_query_double", xs) + req `addForm` toForm ("enum_query_double", xs) -- | @*/*@ instance Consumes TestEnumParameters MimeAny @@ -376,13 +379,13 @@ instance Produces TestEnumParameters MimeAny testJsonFormData :: (Consumes TestJsonFormData contentType) => contentType -- ^ request content-type ('MimeType') - -> Text -- ^ "param" - field1 - -> Text -- ^ "param2" - field2 + -> Param -- ^ "param" - field1 + -> Param2 -- ^ "param2" - field2 -> SwaggerPetstoreRequest TestJsonFormData contentType NoContent -testJsonFormData _ param param2 = +testJsonFormData _ (Param param) (Param2 param2) = _mkRequest "GET" ["/fake/jsonFormData"] - `_addForm` toForm ("param", param) - `_addForm` toForm ("param2", param2) + `addForm` toForm ("param", param) + `addForm` toForm ("param2", param2) data TestJsonFormData @@ -398,7 +401,7 @@ instance Consumes TestJsonFormData MimeJSON -- -- To test class name in snake case -- --- AuthMethod: api_key_query +-- AuthMethod: 'AuthApiKeyApiKeyQuery' -- testClassname :: (Consumes TestClassname contentType, MimeRender contentType Client) @@ -408,6 +411,7 @@ testClassname testClassname _ body = _mkRequest "PATCH" ["/fake_classname_test"] `setBodyParam` body + `_hasAuthType` (P.Proxy :: P.Proxy AuthApiKeyApiKeyQuery) data TestClassname @@ -431,7 +435,7 @@ instance Produces TestClassname MimeJSON -- -- -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- -- Note: Has 'Produces' instances, but no response schema -- @@ -443,6 +447,7 @@ addPet addPet _ body = _mkRequest "POST" ["/pet"] `setBodyParam` body + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) data AddPet @@ -468,16 +473,17 @@ instance Produces AddPet MimeJSON -- -- -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- -- Note: Has 'Produces' instances, but no response schema -- deletePet - :: Integer -- ^ "petId" - Pet id to delete + :: PetId -- ^ "petId" - Pet id to delete -> SwaggerPetstoreRequest DeletePet MimeNoContent res -deletePet petId = +deletePet (PetId petId) = _mkRequest "DELETE" ["/pet/",toPath petId] + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) data DeletePet instance HasOptionalParam DeletePet ApiKey where @@ -497,14 +503,15 @@ instance Produces DeletePet MimeJSON -- -- Multiple status values can be provided with comma separated strings -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- findPetsByStatus - :: [Text] -- ^ "status" - Status values that need to be considered for filter + :: Status -- ^ "status" - Status values that need to be considered for filter -> SwaggerPetstoreRequest FindPetsByStatus MimeNoContent [Pet] -findPetsByStatus status = +findPetsByStatus (Status status) = _mkRequest "GET" ["/pet/findByStatus"] - `_setQuery` toQueryColl CommaSeparated ("status", Just status) + `setQuery` toQueryColl CommaSeparated ("status", Just status) + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) data FindPetsByStatus -- | @application/xml@ @@ -521,14 +528,15 @@ instance Produces FindPetsByStatus MimeJSON -- -- Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- findPetsByTags - :: [Text] -- ^ "tags" - Tags to filter by + :: Tags -- ^ "tags" - Tags to filter by -> SwaggerPetstoreRequest FindPetsByTags MimeNoContent [Pet] -findPetsByTags tags = +findPetsByTags (Tags tags) = _mkRequest "GET" ["/pet/findByTags"] - `_setQuery` toQueryColl CommaSeparated ("tags", Just tags) + `setQuery` toQueryColl CommaSeparated ("tags", Just tags) + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) {-# DEPRECATED findPetsByTags "" #-} @@ -547,14 +555,15 @@ instance Produces FindPetsByTags MimeJSON -- -- Returns a single pet -- --- AuthMethod: api_key +-- AuthMethod: 'AuthApiKeyApiKey' -- getPetById - :: Integer -- ^ "petId" - ID of pet to return + :: PetId -- ^ "petId" - ID of pet to return -> SwaggerPetstoreRequest GetPetById MimeNoContent Pet -getPetById petId = +getPetById (PetId petId) = _mkRequest "GET" ["/pet/",toPath petId] + `_hasAuthType` (P.Proxy :: P.Proxy AuthApiKeyApiKey) data GetPetById -- | @application/xml@ @@ -571,7 +580,7 @@ instance Produces GetPetById MimeJSON -- -- -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- -- Note: Has 'Produces' instances, but no response schema -- @@ -583,6 +592,7 @@ updatePet updatePet _ body = _mkRequest "PUT" ["/pet"] `setBodyParam` body + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) data UpdatePet @@ -608,30 +618,31 @@ instance Produces UpdatePet MimeJSON -- -- -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- -- Note: Has 'Produces' instances, but no response schema -- updatePetWithForm :: (Consumes UpdatePetWithForm contentType) => contentType -- ^ request content-type ('MimeType') - -> Integer -- ^ "petId" - ID of pet that needs to be updated + -> PetId -- ^ "petId" - ID of pet that needs to be updated -> SwaggerPetstoreRequest UpdatePetWithForm contentType res -updatePetWithForm _ petId = +updatePetWithForm _ (PetId petId) = _mkRequest "POST" ["/pet/",toPath petId] + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) data UpdatePetWithForm -- | /Optional Param/ "name" - Updated name of the pet instance HasOptionalParam UpdatePetWithForm Name2 where applyOptionalParam req (Name2 xs) = - req `_addForm` toForm ("name", xs) + req `addForm` toForm ("name", xs) -- | /Optional Param/ "status" - Updated status of the pet -instance HasOptionalParam UpdatePetWithForm Status where - applyOptionalParam req (Status xs) = - req `_addForm` toForm ("status", xs) +instance HasOptionalParam UpdatePetWithForm StatusText where + applyOptionalParam req (StatusText xs) = + req `addForm` toForm ("status", xs) -- | @application/x-www-form-urlencoded@ instance Consumes UpdatePetWithForm MimeFormUrlEncoded @@ -650,16 +661,17 @@ instance Produces UpdatePetWithForm MimeJSON -- -- -- --- AuthMethod: petstore_auth +-- AuthMethod: 'AuthOAuthPetstoreAuth' -- uploadFile :: (Consumes UploadFile contentType) => contentType -- ^ request content-type ('MimeType') - -> Integer -- ^ "petId" - ID of pet to update + -> PetId -- ^ "petId" - ID of pet to update -> SwaggerPetstoreRequest UploadFile contentType ApiResponse -uploadFile _ petId = +uploadFile _ (PetId petId) = _mkRequest "POST" ["/pet/",toPath petId,"/uploadImage"] + `_hasAuthType` (P.Proxy :: P.Proxy AuthOAuthPetstoreAuth) data UploadFile @@ -693,9 +705,9 @@ instance Produces UploadFile MimeJSON -- Note: Has 'Produces' instances, but no response schema -- deleteOrder - :: Text -- ^ "orderId" - ID of the order that needs to be deleted + :: OrderIdText -- ^ "orderId" - ID of the order that needs to be deleted -> SwaggerPetstoreRequest DeleteOrder MimeNoContent res -deleteOrder orderId = +deleteOrder (OrderIdText orderId) = _mkRequest "DELETE" ["/store/order/",toPath orderId] @@ -714,12 +726,13 @@ instance Produces DeleteOrder MimeJSON -- -- Returns a map of status codes to quantities -- --- AuthMethod: api_key +-- AuthMethod: 'AuthApiKeyApiKey' -- getInventory :: SwaggerPetstoreRequest GetInventory MimeNoContent ((Map.Map String Int)) getInventory = _mkRequest "GET" ["/store/inventory"] + `_hasAuthType` (P.Proxy :: P.Proxy AuthApiKeyApiKey) data GetInventory -- | @application/json@ @@ -735,9 +748,9 @@ instance Produces GetInventory MimeJSON -- For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions -- getOrderById - :: Integer -- ^ "orderId" - ID of pet that needs to be fetched + :: OrderId -- ^ "orderId" - ID of pet that needs to be fetched -> SwaggerPetstoreRequest GetOrderById MimeNoContent Order -getOrderById orderId = +getOrderById (OrderId orderId) = _mkRequest "GET" ["/store/order/",toPath orderId] @@ -817,9 +830,9 @@ instance Produces CreateUser MimeJSON -- Note: Has 'Produces' instances, but no response schema -- createUsersWithArrayInput - :: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType [User]) + :: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType Body) => contentType -- ^ request content-type ('MimeType') - -> [User] -- ^ "body" - List of user object + -> Body -- ^ "body" - List of user object -> SwaggerPetstoreRequest CreateUsersWithArrayInput contentType res createUsersWithArrayInput _ body = _mkRequest "POST" ["/user/createWithArray"] @@ -828,7 +841,7 @@ createUsersWithArrayInput _ body = data CreateUsersWithArrayInput -- | /Body Param/ "body" - List of user object -instance HasBodyParam CreateUsersWithArrayInput [User] +instance HasBodyParam CreateUsersWithArrayInput Body -- | @application/xml@ instance Produces CreateUsersWithArrayInput MimeXML -- | @application/json@ @@ -846,9 +859,9 @@ instance Produces CreateUsersWithArrayInput MimeJSON -- Note: Has 'Produces' instances, but no response schema -- createUsersWithListInput - :: (Consumes CreateUsersWithListInput contentType, MimeRender contentType [User]) + :: (Consumes CreateUsersWithListInput contentType, MimeRender contentType Body) => contentType -- ^ request content-type ('MimeType') - -> [User] -- ^ "body" - List of user object + -> Body -- ^ "body" - List of user object -> SwaggerPetstoreRequest CreateUsersWithListInput contentType res createUsersWithListInput _ body = _mkRequest "POST" ["/user/createWithList"] @@ -857,7 +870,7 @@ createUsersWithListInput _ body = data CreateUsersWithListInput -- | /Body Param/ "body" - List of user object -instance HasBodyParam CreateUsersWithListInput [User] +instance HasBodyParam CreateUsersWithListInput Body -- | @application/xml@ instance Produces CreateUsersWithListInput MimeXML -- | @application/json@ @@ -875,9 +888,9 @@ instance Produces CreateUsersWithListInput MimeJSON -- Note: Has 'Produces' instances, but no response schema -- deleteUser - :: Text -- ^ "username" - The name that needs to be deleted + :: Username -- ^ "username" - The name that needs to be deleted -> SwaggerPetstoreRequest DeleteUser MimeNoContent res -deleteUser username = +deleteUser (Username username) = _mkRequest "DELETE" ["/user/",toPath username] @@ -897,9 +910,9 @@ instance Produces DeleteUser MimeJSON -- -- getUserByName - :: Text -- ^ "username" - The name that needs to be fetched. Use user1 for testing. + :: Username -- ^ "username" - The name that needs to be fetched. Use user1 for testing. -> SwaggerPetstoreRequest GetUserByName MimeNoContent User -getUserByName username = +getUserByName (Username username) = _mkRequest "GET" ["/user/",toPath username] @@ -919,13 +932,13 @@ instance Produces GetUserByName MimeJSON -- -- loginUser - :: Text -- ^ "username" - The user name for login - -> Text -- ^ "password" - The password for login in clear text + :: Username -- ^ "username" - The user name for login + -> Password -- ^ "password" - The password for login in clear text -> SwaggerPetstoreRequest LoginUser MimeNoContent Text -loginUser username password = +loginUser (Username username) (Password password) = _mkRequest "GET" ["/user/login"] - `_setQuery` toQuery ("username", Just username) - `_setQuery` toQuery ("password", Just password) + `setQuery` toQuery ("username", Just username) + `setQuery` toQuery ("password", Just password) data LoginUser -- | @application/xml@ @@ -969,10 +982,10 @@ instance Produces LogoutUser MimeJSON updateUser :: (Consumes UpdateUser contentType, MimeRender contentType User) => contentType -- ^ request content-type ('MimeType') - -> Text -- ^ "username" - name that need to be deleted + -> Username -- ^ "username" - name that need to be deleted -> User -- ^ "body" - Updated user object -> SwaggerPetstoreRequest UpdateUser contentType res -updateUser _ username body = +updateUser _ (Username username) body = _mkRequest "PUT" ["/user/",toPath username] `setBodyParam` body @@ -1014,64 +1027,81 @@ class HasOptionalParam req param where infixl 2 -&- --- * Optional Request Parameter Types - - -newtype BodyOuterBoolean = BodyOuterBoolean { unBodyOuterBoolean :: OuterBoolean } deriving (P.Eq, P.Show) - -newtype BodyOuterComposite = BodyOuterComposite { unBodyOuterComposite :: OuterComposite } deriving (P.Eq, P.Show) - -newtype Body = Body { unBody :: OuterNumber } deriving (P.Eq, P.Show) - -newtype BodyOuterString = BodyOuterString { unBodyOuterString :: OuterString } deriving (P.Eq, P.Show) +-- * Request Parameter Types +-- | ApiKey +newtype ApiKey = ApiKey { unApiKey :: Text } deriving (P.Eq, P.Show) +-- | StatusText +newtype StatusText = StatusText { unStatusText :: Text } deriving (P.Eq, P.Show) +-- | ParamString +newtype ParamString = ParamString { unParamString :: Text } deriving (P.Eq, P.Show) +-- | ParamInteger newtype ParamInteger = ParamInteger { unParamInteger :: Int } deriving (P.Eq, P.Show) - +-- | EnumQueryDouble +newtype EnumQueryDouble = EnumQueryDouble { unEnumQueryDouble :: Double } deriving (P.Eq, P.Show) +-- | Number +newtype Number = Number { unNumber :: Double } deriving (P.Eq, P.Show) +-- | Int32 newtype Int32 = Int32 { unInt32 :: Int } deriving (P.Eq, P.Show) - -newtype Int64 = Int64 { unInt64 :: Integer } deriving (P.Eq, P.Show) - -newtype ParamFloat = ParamFloat { unParamFloat :: Float } deriving (P.Eq, P.Show) - -newtype ParamString = ParamString { unParamString :: Text } deriving (P.Eq, P.Show) - -newtype ParamBinary = ParamBinary { unParamBinary :: Binary } deriving (P.Eq, P.Show) - +-- | ParamDate newtype ParamDate = ParamDate { unParamDate :: Date } deriving (P.Eq, P.Show) - -newtype ParamDateTime = ParamDateTime { unParamDateTime :: DateTime } deriving (P.Eq, P.Show) - -newtype Password = Password { unPassword :: Text } deriving (P.Eq, P.Show) - -newtype Callback = Callback { unCallback :: Text } deriving (P.Eq, P.Show) - -newtype EnumFormStringArray = EnumFormStringArray { unEnumFormStringArray :: [Text] } deriving (P.Eq, P.Show) - +-- | EnumFormString newtype EnumFormString = EnumFormString { unEnumFormString :: Text } deriving (P.Eq, P.Show) - -newtype EnumHeaderStringArray = EnumHeaderStringArray { unEnumHeaderStringArray :: [Text] } deriving (P.Eq, P.Show) - -newtype EnumHeaderString = EnumHeaderString { unEnumHeaderString :: Text } deriving (P.Eq, P.Show) - -newtype EnumQueryStringArray = EnumQueryStringArray { unEnumQueryStringArray :: [Text] } deriving (P.Eq, P.Show) - -newtype EnumQueryString = EnumQueryString { unEnumQueryString :: Text } deriving (P.Eq, P.Show) - +-- | Body +newtype Body = Body { unBody :: [User] } deriving (P.Eq, P.Show, A.ToJSON) +-- | Tags +newtype Tags = Tags { unTags :: [Text] } deriving (P.Eq, P.Show) +-- | EnumQueryInteger newtype EnumQueryInteger = EnumQueryInteger { unEnumQueryInteger :: Int } deriving (P.Eq, P.Show) - -newtype EnumQueryDouble = EnumQueryDouble { unEnumQueryDouble :: Double } deriving (P.Eq, P.Show) - -newtype ApiKey = ApiKey { unApiKey :: Text } deriving (P.Eq, P.Show) - +-- | ParamFloat +newtype ParamFloat = ParamFloat { unParamFloat :: Float } deriving (P.Eq, P.Show) +-- | Name2 newtype Name2 = Name2 { unName2 :: Text } deriving (P.Eq, P.Show) - -newtype Status = Status { unStatus :: Text } deriving (P.Eq, P.Show) - +-- | Password +newtype Password = Password { unPassword :: Text } deriving (P.Eq, P.Show) +-- | Status +newtype Status = Status { unStatus :: [Text] } deriving (P.Eq, P.Show) +-- | ParamDouble +newtype ParamDouble = ParamDouble { unParamDouble :: Double } deriving (P.Eq, P.Show) +-- | EnumHeaderString +newtype EnumHeaderString = EnumHeaderString { unEnumHeaderString :: Text } deriving (P.Eq, P.Show) +-- | Param2 +newtype Param2 = Param2 { unParam2 :: Text } deriving (P.Eq, P.Show) +-- | PetId +newtype PetId = PetId { unPetId :: Integer } deriving (P.Eq, P.Show) +-- | OrderId +newtype OrderId = OrderId { unOrderId :: Integer } deriving (P.Eq, P.Show) +-- | OrderIdText +newtype OrderIdText = OrderIdText { unOrderIdText :: Text } deriving (P.Eq, P.Show) +-- | EnumQueryString +newtype EnumQueryString = EnumQueryString { unEnumQueryString :: Text } deriving (P.Eq, P.Show) +-- | ParamDateTime +newtype ParamDateTime = ParamDateTime { unParamDateTime :: DateTime } deriving (P.Eq, P.Show) +-- | EnumQueryStringArray +newtype EnumQueryStringArray = EnumQueryStringArray { unEnumQueryStringArray :: [Text] } deriving (P.Eq, P.Show) +-- | PatternWithoutDelimiter +newtype PatternWithoutDelimiter = PatternWithoutDelimiter { unPatternWithoutDelimiter :: Text } deriving (P.Eq, P.Show) +-- | Callback +newtype Callback = Callback { unCallback :: Text } deriving (P.Eq, P.Show) +-- | Username +newtype Username = Username { unUsername :: Text } deriving (P.Eq, P.Show) +-- | Int64 +newtype Int64 = Int64 { unInt64 :: Integer } deriving (P.Eq, P.Show) +-- | AdditionalMetadata newtype AdditionalMetadata = AdditionalMetadata { unAdditionalMetadata :: Text } deriving (P.Eq, P.Show) - +-- | Byte +newtype Byte = Byte { unByte :: ByteArray } deriving (P.Eq, P.Show) +-- | ParamBinary +newtype ParamBinary = ParamBinary { unParamBinary :: Binary } deriving (P.Eq, P.Show) +-- | EnumFormStringArray +newtype EnumFormStringArray = EnumFormStringArray { unEnumFormStringArray :: [Text] } deriving (P.Eq, P.Show) +-- | EnumHeaderStringArray +newtype EnumHeaderStringArray = EnumHeaderStringArray { unEnumHeaderStringArray :: [Text] } deriving (P.Eq, P.Show) +-- | Param +newtype Param = Param { unParam :: Text } deriving (P.Eq, P.Show) +-- | File newtype File = File { unFile :: FilePath } deriving (P.Eq, P.Show) - -- * SwaggerPetstoreRequest -- | Represents a request. The "req" type variable is the request type. The "res" type variable is the response type. @@ -1079,6 +1109,7 @@ data SwaggerPetstoreRequest req contentType res = SwaggerPetstoreRequest { rMethod :: NH.Method -- ^ Method of SwaggerPetstoreRequest , rUrlPath :: [BCL.ByteString] -- ^ Endpoint of SwaggerPetstoreRequest , rParams :: Params -- ^ params of SwaggerPetstoreRequest + , rAuthTypes :: [P.TypeRep] -- ^ types of auth methods } deriving (P.Show) @@ -1097,6 +1128,11 @@ rParamsL :: Lens_' (SwaggerPetstoreRequest req contentType res) Params rParamsL f SwaggerPetstoreRequest{..} = (\rParams -> SwaggerPetstoreRequest { rParams, ..} ) <$> f rParams {-# INLINE rParamsL #-} +-- | 'rParams' Lens +rAuthTypesL :: Lens_' (SwaggerPetstoreRequest req contentType res) [P.TypeRep] +rAuthTypesL f SwaggerPetstoreRequest{..} = (\rAuthTypes -> SwaggerPetstoreRequest { rAuthTypes, ..} ) <$> f rAuthTypes +{-# INLINE rAuthTypesL #-} + -- | Request Params data Params = Params { paramsQuery :: NH.Query @@ -1134,7 +1170,7 @@ data ParamBody _mkRequest :: NH.Method -- ^ Method -> [BCL.ByteString] -- ^ Endpoint -> SwaggerPetstoreRequest req contentType res -- ^ req: Request Type, res: Response Type -_mkRequest m u = SwaggerPetstoreRequest m u _mkParams +_mkRequest m u = SwaggerPetstoreRequest m u _mkParams [] _mkParams :: Params _mkParams = Params [] [] ParamBodyNone @@ -1166,8 +1202,8 @@ _setAcceptHeader req accept = Just m -> req `setHeader` [("accept", BC.pack $ P.show m)] Nothing -> req `removeHeader` ["accept"] -_setQuery :: SwaggerPetstoreRequest req contentType res -> [NH.QueryItem] -> SwaggerPetstoreRequest req contentType res -_setQuery req query = +setQuery :: SwaggerPetstoreRequest req contentType res -> [NH.QueryItem] -> SwaggerPetstoreRequest req contentType res +setQuery req query = req & L.over (rParamsL . paramsQueryL) @@ -1175,8 +1211,8 @@ _setQuery req query = where cifst = CI.mk . P.fst -_addForm :: SwaggerPetstoreRequest req contentType res -> WH.Form -> SwaggerPetstoreRequest req contentType res -_addForm req newform = +addForm :: SwaggerPetstoreRequest req contentType res -> WH.Form -> SwaggerPetstoreRequest req contentType res +addForm req newform = let form = case paramsBody (rParams req) of ParamBodyFormUrlEncoded _form -> _form _ -> mempty @@ -1197,6 +1233,9 @@ _setBodyLBS :: SwaggerPetstoreRequest req contentType res -> BL.ByteString -> Sw _setBodyLBS req body = req & L.set (rParamsL . paramsBodyL) (ParamBodyBL body) +_hasAuthType :: AuthMethod authMethod => SwaggerPetstoreRequest req contentType res -> P.Proxy authMethod -> SwaggerPetstoreRequest req contentType res +_hasAuthType req proxy = + req & L.over rAuthTypesL (P.typeRep proxy :) -- ** Params Utils @@ -1261,3 +1300,60 @@ _toCollA' c encode one xs = case c of {-# INLINE expandList #-} {-# INLINE combine #-} +-- * AuthMethods + +-- | Provides a method to apply auth methods to requests +class P.Typeable a => AuthMethod a where + applyAuthMethod :: SwaggerPetstoreRequest req contentType res -> a -> SwaggerPetstoreRequest req contentType res + +-- | An existential wrapper for any AuthMethod +data AnyAuthMethod = forall a. AuthMethod a => AnyAuthMethod a deriving (P.Typeable) + +instance AuthMethod AnyAuthMethod where applyAuthMethod req (AnyAuthMethod a) = applyAuthMethod req a + +-- ** AuthApiKeyApiKey +data AuthApiKeyApiKey = + AuthApiKeyApiKey Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthApiKeyApiKey where + applyAuthMethod req a@(AuthApiKeyApiKey secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("api_key", secret) + else req + +-- ** AuthApiKeyApiKeyQuery +data AuthApiKeyApiKeyQuery = + AuthApiKeyApiKeyQuery Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthApiKeyApiKeyQuery where + applyAuthMethod req a@(AuthApiKeyApiKeyQuery secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setQuery` toQuery ("api_key_query", Just secret) + else req + +-- ** AuthBasicHttpBasicTest +data AuthBasicHttpBasicTest = + AuthBasicHttpBasicTest B.ByteString B.ByteString -- ^ username password + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthBasicHttpBasicTest where + applyAuthMethod req a@(AuthBasicHttpBasicTest user pw) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("Authorization", T.decodeUtf8 cred) + else req + where cred = BC.append "Basic " (B64.encode $ BC.concat [ user, ":", pw ]) + +-- ** AuthOAuthPetstoreAuth +data AuthOAuthPetstoreAuth = + AuthOAuthPetstoreAuth Text -- ^ secret + deriving (P.Eq, P.Show, P.Typeable) + +instance AuthMethod AuthOAuthPetstoreAuth where + applyAuthMethod req a@(AuthOAuthPetstoreAuth secret) = + if (P.typeOf a `P.elem` rAuthTypes req) + then req `setHeader` toHeader ("Authorization", "Bearer " <> secret) + else req + + diff --git a/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Client.hs b/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Client.hs index 041f7a11013c..51c766bb551d 100644 --- a/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Client.hs +++ b/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Client.hs @@ -68,6 +68,7 @@ data SwaggerPetstoreConfig = SwaggerPetstoreConfig , configUserAgent :: Text -- ^ user-agent supplied in the Request , configLogExecWithContext :: LogExecWithContext -- ^ Run a block using a Logger instance , configLogContext :: LogContext -- ^ Configures the logger + , configAuthMethods :: [AnyAuthMethod] -- ^ List of configured auth methods } -- | display the config @@ -96,13 +97,21 @@ newConfig = do , configUserAgent = "swagger-haskell-http-client/1.0.0" , configLogExecWithContext = runDefaultLogExecWithContext , configLogContext = logCxt + , configAuthMethods = [] } +-- | updates config use AuthMethod on matching requests +addAuthMethod :: AuthMethod auth => SwaggerPetstoreConfig -> auth -> SwaggerPetstoreConfig +addAuthMethod config@SwaggerPetstoreConfig {configAuthMethods = as} a = + config { configAuthMethods = AnyAuthMethod a : as} + +-- | updates the config to use stdout logging withStdoutLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig withStdoutLogging p = do logCxt <- stdoutLoggingContext (configLogContext p) return $ p { configLogExecWithContext = stdoutLoggingExec, configLogContext = logCxt } +-- | updates the config to use stderr logging withStderrLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig withStderrLogging p = do logCxt <- stderrLoggingContext (configLogContext p) @@ -235,7 +244,9 @@ _toInitRequest -> IO (InitRequest req contentType res accept) -- ^ initialized request _toInitRequest config req0 accept = do parsedReq <- NH.parseRequest $ BCL.unpack $ BCL.append (configHost config) (BCL.concat (rUrlPath req0)) - let req1 = _setAcceptHeader req0 accept & _setContentTypeHeader + let req1 = _applyAuthMethods req0 config + & _setContentTypeHeader + & flip _setAcceptHeader accept reqHeaders = ("User-Agent", WH.toHeader (configUserAgent config)) : paramsHeaders (rParams req1) reqQuery = NH.renderQuery True (paramsQuery (rParams req1)) pReq = parsedReq { NH.method = (rMethod req1) @@ -251,6 +262,16 @@ _toInitRequest config req0 accept = do pure (InitRequest outReq) +-- | apply all matching AuthMethods in config to request +_applyAuthMethods + :: SwaggerPetstoreRequest req contentType res + -> SwaggerPetstoreConfig + -> SwaggerPetstoreRequest req contentType res +_applyAuthMethods req SwaggerPetstoreConfig {configAuthMethods = as} = + foldl go req as + where + go r (AnyAuthMethod a) = r `applyAuthMethod` a + -- | modify the underlying Request modifyInitRequest :: InitRequest req contentType res accept -> (NH.Request -> NH.Request) -> InitRequest req contentType res accept modifyInitRequest (InitRequest req) f = InitRequest (f req) diff --git a/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Model.hs b/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Model.hs index 24e45353039f..01b042c2c961 100644 --- a/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Model.hs +++ b/samples/client/petstore/haskell-http-client/lib/SwaggerPetstore/Model.hs @@ -61,18 +61,21 @@ import qualified Prelude as P -- ** AdditionalPropertiesClass --- | +-- | AdditionalPropertiesClass data AdditionalPropertiesClass = AdditionalPropertiesClass { additionalPropertiesClassMapProperty :: !(Maybe (Map.Map String Text)) -- ^ "map_property" , additionalPropertiesClassMapOfMapProperty :: !(Maybe (Map.Map String (Map.Map String Text))) -- ^ "map_of_map_property" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON AdditionalPropertiesClass instance A.FromJSON AdditionalPropertiesClass where parseJSON = A.withObject "AdditionalPropertiesClass" $ \o -> AdditionalPropertiesClass <$> (o .:? "map_property") <*> (o .:? "map_of_map_property") +-- | ToJSON AdditionalPropertiesClass instance A.ToJSON AdditionalPropertiesClass where toJSON AdditionalPropertiesClass {..} = _omitNulls @@ -92,18 +95,21 @@ mkAdditionalPropertiesClass = -- ** Animal --- | +-- | Animal data Animal = Animal { animalClassName :: !(Text) -- ^ /Required/ "className" , animalColor :: !(Maybe Text) -- ^ "color" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Animal instance A.FromJSON Animal where parseJSON = A.withObject "Animal" $ \o -> Animal <$> (o .: "className") <*> (o .:? "color") +-- | ToJSON Animal instance A.ToJSON Animal where toJSON Animal {..} = _omitNulls @@ -124,16 +130,19 @@ mkAnimal animalClassName = -- ** AnimalFarm --- | +-- | AnimalFarm data AnimalFarm = AnimalFarm { } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON AnimalFarm instance A.FromJSON AnimalFarm where parseJSON = A.withObject "AnimalFarm" $ \o -> pure AnimalFarm +-- | ToJSON AnimalFarm instance A.ToJSON AnimalFarm where toJSON AnimalFarm = _omitNulls @@ -151,13 +160,15 @@ mkAnimalFarm = -- ** ApiResponse --- | +-- | ApiResponse data ApiResponse = ApiResponse { apiResponseCode :: !(Maybe Int) -- ^ "code" , apiResponseType :: !(Maybe Text) -- ^ "type" , apiResponseMessage :: !(Maybe Text) -- ^ "message" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ApiResponse instance A.FromJSON ApiResponse where parseJSON = A.withObject "ApiResponse" $ \o -> ApiResponse @@ -165,6 +176,7 @@ instance A.FromJSON ApiResponse where <*> (o .:? "type") <*> (o .:? "message") +-- | ToJSON ApiResponse instance A.ToJSON ApiResponse where toJSON ApiResponse {..} = _omitNulls @@ -186,16 +198,19 @@ mkApiResponse = -- ** ArrayOfArrayOfNumberOnly --- | +-- | ArrayOfArrayOfNumberOnly data ArrayOfArrayOfNumberOnly = ArrayOfArrayOfNumberOnly { arrayOfArrayOfNumberOnlyArrayArrayNumber :: !(Maybe [[Double]]) -- ^ "ArrayArrayNumber" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ArrayOfArrayOfNumberOnly instance A.FromJSON ArrayOfArrayOfNumberOnly where parseJSON = A.withObject "ArrayOfArrayOfNumberOnly" $ \o -> ArrayOfArrayOfNumberOnly <$> (o .:? "ArrayArrayNumber") +-- | ToJSON ArrayOfArrayOfNumberOnly instance A.ToJSON ArrayOfArrayOfNumberOnly where toJSON ArrayOfArrayOfNumberOnly {..} = _omitNulls @@ -213,16 +228,19 @@ mkArrayOfArrayOfNumberOnly = -- ** ArrayOfNumberOnly --- | +-- | ArrayOfNumberOnly data ArrayOfNumberOnly = ArrayOfNumberOnly { arrayOfNumberOnlyArrayNumber :: !(Maybe [Double]) -- ^ "ArrayNumber" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ArrayOfNumberOnly instance A.FromJSON ArrayOfNumberOnly where parseJSON = A.withObject "ArrayOfNumberOnly" $ \o -> ArrayOfNumberOnly <$> (o .:? "ArrayNumber") +-- | ToJSON ArrayOfNumberOnly instance A.ToJSON ArrayOfNumberOnly where toJSON ArrayOfNumberOnly {..} = _omitNulls @@ -240,13 +258,15 @@ mkArrayOfNumberOnly = -- ** ArrayTest --- | +-- | ArrayTest data ArrayTest = ArrayTest { arrayTestArrayOfString :: !(Maybe [Text]) -- ^ "array_of_string" , arrayTestArrayArrayOfInteger :: !(Maybe [[Integer]]) -- ^ "array_array_of_integer" , arrayTestArrayArrayOfModel :: !(Maybe [[ReadOnlyFirst]]) -- ^ "array_array_of_model" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ArrayTest instance A.FromJSON ArrayTest where parseJSON = A.withObject "ArrayTest" $ \o -> ArrayTest @@ -254,6 +274,7 @@ instance A.FromJSON ArrayTest where <*> (o .:? "array_array_of_integer") <*> (o .:? "array_array_of_model") +-- | ToJSON ArrayTest instance A.ToJSON ArrayTest where toJSON ArrayTest {..} = _omitNulls @@ -275,7 +296,7 @@ mkArrayTest = -- ** Capitalization --- | +-- | Capitalization data Capitalization = Capitalization { capitalizationSmallCamel :: !(Maybe Text) -- ^ "smallCamel" , capitalizationCapitalCamel :: !(Maybe Text) -- ^ "CapitalCamel" @@ -285,6 +306,8 @@ data Capitalization = Capitalization , capitalizationAttName :: !(Maybe Text) -- ^ "ATT_NAME" - Name of the pet } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Capitalization instance A.FromJSON Capitalization where parseJSON = A.withObject "Capitalization" $ \o -> Capitalization @@ -295,6 +318,7 @@ instance A.FromJSON Capitalization where <*> (o .:? "SCA_ETH_Flow_Points") <*> (o .:? "ATT_NAME") +-- | ToJSON Capitalization instance A.ToJSON Capitalization where toJSON Capitalization {..} = _omitNulls @@ -322,18 +346,21 @@ mkCapitalization = -- ** Category --- | +-- | Category data Category = Category { categoryId :: !(Maybe Integer) -- ^ "id" , categoryName :: !(Maybe Text) -- ^ "name" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Category instance A.FromJSON Category where parseJSON = A.withObject "Category" $ \o -> Category <$> (o .:? "id") <*> (o .:? "name") +-- | ToJSON Category instance A.ToJSON Category where toJSON Category {..} = _omitNulls @@ -353,17 +380,20 @@ mkCategory = -- ** ClassModel --- | +-- | ClassModel -- Model for testing model with \"_class\" property data ClassModel = ClassModel { classModelClass :: !(Maybe Text) -- ^ "_class" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ClassModel instance A.FromJSON ClassModel where parseJSON = A.withObject "ClassModel" $ \o -> ClassModel <$> (o .:? "_class") +-- | ToJSON ClassModel instance A.ToJSON ClassModel where toJSON ClassModel {..} = _omitNulls @@ -381,16 +411,19 @@ mkClassModel = -- ** Client --- | +-- | Client data Client = Client { clientClient :: !(Maybe Text) -- ^ "client" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Client instance A.FromJSON Client where parseJSON = A.withObject "Client" $ \o -> Client <$> (o .:? "client") +-- | ToJSON Client instance A.ToJSON Client where toJSON Client {..} = _omitNulls @@ -408,18 +441,21 @@ mkClient = -- ** EnumArrays --- | +-- | EnumArrays data EnumArrays = EnumArrays { enumArraysJustSymbol :: !(Maybe Text) -- ^ "just_symbol" , enumArraysArrayEnum :: !(Maybe [Text]) -- ^ "array_enum" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON EnumArrays instance A.FromJSON EnumArrays where parseJSON = A.withObject "EnumArrays" $ \o -> EnumArrays <$> (o .:? "just_symbol") <*> (o .:? "array_enum") +-- | ToJSON EnumArrays instance A.ToJSON EnumArrays where toJSON EnumArrays {..} = _omitNulls @@ -439,16 +475,19 @@ mkEnumArrays = -- ** EnumClass --- | +-- | EnumClass data EnumClass = EnumClass { } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON EnumClass instance A.FromJSON EnumClass where parseJSON = A.withObject "EnumClass" $ \o -> pure EnumClass +-- | ToJSON EnumClass instance A.ToJSON EnumClass where toJSON EnumClass = _omitNulls @@ -466,7 +505,7 @@ mkEnumClass = -- ** EnumTest --- | +-- | EnumTest data EnumTest = EnumTest { enumTestEnumString :: !(Maybe Text) -- ^ "enum_string" , enumTestEnumInteger :: !(Maybe Int) -- ^ "enum_integer" @@ -474,6 +513,8 @@ data EnumTest = EnumTest , enumTestOuterEnum :: !(Maybe OuterEnum) -- ^ "outerEnum" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON EnumTest instance A.FromJSON EnumTest where parseJSON = A.withObject "EnumTest" $ \o -> EnumTest @@ -482,6 +523,7 @@ instance A.FromJSON EnumTest where <*> (o .:? "enum_number") <*> (o .:? "outerEnum") +-- | ToJSON EnumTest instance A.ToJSON EnumTest where toJSON EnumTest {..} = _omitNulls @@ -505,7 +547,7 @@ mkEnumTest = -- ** FormatTest --- | +-- | FormatTest data FormatTest = FormatTest { formatTestInteger :: !(Maybe Int) -- ^ "integer" , formatTestInt32 :: !(Maybe Int) -- ^ "int32" @@ -522,6 +564,8 @@ data FormatTest = FormatTest , formatTestPassword :: !(Text) -- ^ /Required/ "password" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON FormatTest instance A.FromJSON FormatTest where parseJSON = A.withObject "FormatTest" $ \o -> FormatTest @@ -539,6 +583,7 @@ instance A.FromJSON FormatTest where <*> (o .:? "uuid") <*> (o .: "password") +-- | ToJSON FormatTest instance A.ToJSON FormatTest where toJSON FormatTest {..} = _omitNulls @@ -584,18 +629,21 @@ mkFormatTest formatTestNumber formatTestByte formatTestDate formatTestPassword = -- ** HasOnlyReadOnly --- | +-- | HasOnlyReadOnly data HasOnlyReadOnly = HasOnlyReadOnly { hasOnlyReadOnlyBar :: !(Maybe Text) -- ^ "bar" , hasOnlyReadOnlyFoo :: !(Maybe Text) -- ^ "foo" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON HasOnlyReadOnly instance A.FromJSON HasOnlyReadOnly where parseJSON = A.withObject "HasOnlyReadOnly" $ \o -> HasOnlyReadOnly <$> (o .:? "bar") <*> (o .:? "foo") +-- | ToJSON HasOnlyReadOnly instance A.ToJSON HasOnlyReadOnly where toJSON HasOnlyReadOnly {..} = _omitNulls @@ -615,18 +663,21 @@ mkHasOnlyReadOnly = -- ** MapTest --- | +-- | MapTest data MapTest = MapTest { mapTestMapMapOfString :: !(Maybe (Map.Map String (Map.Map String Text))) -- ^ "map_map_of_string" , mapTestMapOfEnumString :: !(Maybe (Map.Map String Text)) -- ^ "map_of_enum_string" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON MapTest instance A.FromJSON MapTest where parseJSON = A.withObject "MapTest" $ \o -> MapTest <$> (o .:? "map_map_of_string") <*> (o .:? "map_of_enum_string") +-- | ToJSON MapTest instance A.ToJSON MapTest where toJSON MapTest {..} = _omitNulls @@ -646,13 +697,15 @@ mkMapTest = -- ** MixedPropertiesAndAdditionalPropertiesClass --- | +-- | MixedPropertiesAndAdditionalPropertiesClass data MixedPropertiesAndAdditionalPropertiesClass = MixedPropertiesAndAdditionalPropertiesClass { mixedPropertiesAndAdditionalPropertiesClassUuid :: !(Maybe Text) -- ^ "uuid" , mixedPropertiesAndAdditionalPropertiesClassDateTime :: !(Maybe DateTime) -- ^ "dateTime" , mixedPropertiesAndAdditionalPropertiesClassMap :: !(Maybe (Map.Map String Animal)) -- ^ "map" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON MixedPropertiesAndAdditionalPropertiesClass instance A.FromJSON MixedPropertiesAndAdditionalPropertiesClass where parseJSON = A.withObject "MixedPropertiesAndAdditionalPropertiesClass" $ \o -> MixedPropertiesAndAdditionalPropertiesClass @@ -660,6 +713,7 @@ instance A.FromJSON MixedPropertiesAndAdditionalPropertiesClass where <*> (o .:? "dateTime") <*> (o .:? "map") +-- | ToJSON MixedPropertiesAndAdditionalPropertiesClass instance A.ToJSON MixedPropertiesAndAdditionalPropertiesClass where toJSON MixedPropertiesAndAdditionalPropertiesClass {..} = _omitNulls @@ -681,19 +735,22 @@ mkMixedPropertiesAndAdditionalPropertiesClass = -- ** Model200Response --- | +-- | Model200Response -- Model for testing model name starting with number data Model200Response = Model200Response { model200ResponseName :: !(Maybe Int) -- ^ "name" , model200ResponseClass :: !(Maybe Text) -- ^ "class" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Model200Response instance A.FromJSON Model200Response where parseJSON = A.withObject "Model200Response" $ \o -> Model200Response <$> (o .:? "name") <*> (o .:? "class") +-- | ToJSON Model200Response instance A.ToJSON Model200Response where toJSON Model200Response {..} = _omitNulls @@ -713,16 +770,19 @@ mkModel200Response = -- ** ModelList --- | +-- | ModelList data ModelList = ModelList { modelList123List :: !(Maybe Text) -- ^ "123-list" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ModelList instance A.FromJSON ModelList where parseJSON = A.withObject "ModelList" $ \o -> ModelList <$> (o .:? "123-list") +-- | ToJSON ModelList instance A.ToJSON ModelList where toJSON ModelList {..} = _omitNulls @@ -740,17 +800,20 @@ mkModelList = -- ** ModelReturn --- | +-- | ModelReturn -- Model for testing reserved words data ModelReturn = ModelReturn { modelReturnReturn :: !(Maybe Int) -- ^ "return" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ModelReturn instance A.FromJSON ModelReturn where parseJSON = A.withObject "ModelReturn" $ \o -> ModelReturn <$> (o .:? "return") +-- | ToJSON ModelReturn instance A.ToJSON ModelReturn where toJSON ModelReturn {..} = _omitNulls @@ -768,7 +831,7 @@ mkModelReturn = -- ** Name --- | +-- | Name -- Model for testing model name same as property name data Name = Name { nameName :: !(Int) -- ^ /Required/ "name" @@ -777,6 +840,8 @@ data Name = Name , name123Number :: !(Maybe Int) -- ^ "123Number" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Name instance A.FromJSON Name where parseJSON = A.withObject "Name" $ \o -> Name @@ -785,6 +850,7 @@ instance A.FromJSON Name where <*> (o .:? "property") <*> (o .:? "123Number") +-- | ToJSON Name instance A.ToJSON Name where toJSON Name {..} = _omitNulls @@ -809,16 +875,19 @@ mkName nameName = -- ** NumberOnly --- | +-- | NumberOnly data NumberOnly = NumberOnly { numberOnlyJustNumber :: !(Maybe Double) -- ^ "JustNumber" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON NumberOnly instance A.FromJSON NumberOnly where parseJSON = A.withObject "NumberOnly" $ \o -> NumberOnly <$> (o .:? "JustNumber") +-- | ToJSON NumberOnly instance A.ToJSON NumberOnly where toJSON NumberOnly {..} = _omitNulls @@ -836,7 +905,7 @@ mkNumberOnly = -- ** Order --- | +-- | Order data Order = Order { orderId :: !(Maybe Integer) -- ^ "id" , orderPetId :: !(Maybe Integer) -- ^ "petId" @@ -846,6 +915,8 @@ data Order = Order , orderComplete :: !(Maybe Bool) -- ^ "complete" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Order instance A.FromJSON Order where parseJSON = A.withObject "Order" $ \o -> Order @@ -856,6 +927,7 @@ instance A.FromJSON Order where <*> (o .:? "status") <*> (o .:? "complete") +-- | ToJSON Order instance A.ToJSON Order where toJSON Order {..} = _omitNulls @@ -883,16 +955,19 @@ mkOrder = -- ** OuterBoolean --- | +-- | OuterBoolean data OuterBoolean = OuterBoolean { } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON OuterBoolean instance A.FromJSON OuterBoolean where parseJSON = A.withObject "OuterBoolean" $ \o -> pure OuterBoolean +-- | ToJSON OuterBoolean instance A.ToJSON OuterBoolean where toJSON OuterBoolean = _omitNulls @@ -910,13 +985,15 @@ mkOuterBoolean = -- ** OuterComposite --- | +-- | OuterComposite data OuterComposite = OuterComposite { outerCompositeMyNumber :: !(Maybe OuterNumber) -- ^ "my_number" , outerCompositeMyString :: !(Maybe OuterString) -- ^ "my_string" , outerCompositeMyBoolean :: !(Maybe OuterBoolean) -- ^ "my_boolean" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON OuterComposite instance A.FromJSON OuterComposite where parseJSON = A.withObject "OuterComposite" $ \o -> OuterComposite @@ -924,6 +1001,7 @@ instance A.FromJSON OuterComposite where <*> (o .:? "my_string") <*> (o .:? "my_boolean") +-- | ToJSON OuterComposite instance A.ToJSON OuterComposite where toJSON OuterComposite {..} = _omitNulls @@ -945,16 +1023,19 @@ mkOuterComposite = -- ** OuterEnum --- | +-- | OuterEnum data OuterEnum = OuterEnum { } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON OuterEnum instance A.FromJSON OuterEnum where parseJSON = A.withObject "OuterEnum" $ \o -> pure OuterEnum +-- | ToJSON OuterEnum instance A.ToJSON OuterEnum where toJSON OuterEnum = _omitNulls @@ -972,16 +1053,19 @@ mkOuterEnum = -- ** OuterNumber --- | +-- | OuterNumber data OuterNumber = OuterNumber { } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON OuterNumber instance A.FromJSON OuterNumber where parseJSON = A.withObject "OuterNumber" $ \o -> pure OuterNumber +-- | ToJSON OuterNumber instance A.ToJSON OuterNumber where toJSON OuterNumber = _omitNulls @@ -999,16 +1083,19 @@ mkOuterNumber = -- ** OuterString --- | +-- | OuterString data OuterString = OuterString { } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON OuterString instance A.FromJSON OuterString where parseJSON = A.withObject "OuterString" $ \o -> pure OuterString +-- | ToJSON OuterString instance A.ToJSON OuterString where toJSON OuterString = _omitNulls @@ -1026,7 +1113,7 @@ mkOuterString = -- ** Pet --- | +-- | Pet data Pet = Pet { petId :: !(Maybe Integer) -- ^ "id" , petCategory :: !(Maybe Category) -- ^ "category" @@ -1036,6 +1123,8 @@ data Pet = Pet , petStatus :: !(Maybe Text) -- ^ "status" - pet status in the store } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Pet instance A.FromJSON Pet where parseJSON = A.withObject "Pet" $ \o -> Pet @@ -1046,6 +1135,7 @@ instance A.FromJSON Pet where <*> (o .:? "tags") <*> (o .:? "status") +-- | ToJSON Pet instance A.ToJSON Pet where toJSON Pet {..} = _omitNulls @@ -1075,18 +1165,21 @@ mkPet petName petPhotoUrls = -- ** ReadOnlyFirst --- | +-- | ReadOnlyFirst data ReadOnlyFirst = ReadOnlyFirst { readOnlyFirstBar :: !(Maybe Text) -- ^ "bar" , readOnlyFirstBaz :: !(Maybe Text) -- ^ "baz" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON ReadOnlyFirst instance A.FromJSON ReadOnlyFirst where parseJSON = A.withObject "ReadOnlyFirst" $ \o -> ReadOnlyFirst <$> (o .:? "bar") <*> (o .:? "baz") +-- | ToJSON ReadOnlyFirst instance A.ToJSON ReadOnlyFirst where toJSON ReadOnlyFirst {..} = _omitNulls @@ -1106,16 +1199,19 @@ mkReadOnlyFirst = -- ** SpecialModelName --- | +-- | SpecialModelName data SpecialModelName = SpecialModelName { specialModelNameSpecialPropertyName :: !(Maybe Integer) -- ^ "$special[property.name]" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON SpecialModelName instance A.FromJSON SpecialModelName where parseJSON = A.withObject "SpecialModelName" $ \o -> SpecialModelName <$> (o .:? "$special[property.name]") +-- | ToJSON SpecialModelName instance A.ToJSON SpecialModelName where toJSON SpecialModelName {..} = _omitNulls @@ -1133,18 +1229,21 @@ mkSpecialModelName = -- ** Tag --- | +-- | Tag data Tag = Tag { tagId :: !(Maybe Integer) -- ^ "id" , tagName :: !(Maybe Text) -- ^ "name" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Tag instance A.FromJSON Tag where parseJSON = A.withObject "Tag" $ \o -> Tag <$> (o .:? "id") <*> (o .:? "name") +-- | ToJSON Tag instance A.ToJSON Tag where toJSON Tag {..} = _omitNulls @@ -1164,7 +1263,7 @@ mkTag = -- ** User --- | +-- | User data User = User { userId :: !(Maybe Integer) -- ^ "id" , userUsername :: !(Maybe Text) -- ^ "username" @@ -1176,6 +1275,8 @@ data User = User , userUserStatus :: !(Maybe Int) -- ^ "userStatus" - User Status } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON User instance A.FromJSON User where parseJSON = A.withObject "User" $ \o -> User @@ -1188,6 +1289,7 @@ instance A.FromJSON User where <*> (o .:? "phone") <*> (o .:? "userStatus") +-- | ToJSON User instance A.ToJSON User where toJSON User {..} = _omitNulls @@ -1219,13 +1321,15 @@ mkUser = -- ** Cat --- | +-- | Cat data Cat = Cat { catClassName :: !(Text) -- ^ /Required/ "className" , catColor :: !(Maybe Text) -- ^ "color" , catDeclawed :: !(Maybe Bool) -- ^ "declawed" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Cat instance A.FromJSON Cat where parseJSON = A.withObject "Cat" $ \o -> Cat @@ -1233,6 +1337,7 @@ instance A.FromJSON Cat where <*> (o .:? "color") <*> (o .:? "declawed") +-- | ToJSON Cat instance A.ToJSON Cat where toJSON Cat {..} = _omitNulls @@ -1255,13 +1360,15 @@ mkCat catClassName = -- ** Dog --- | +-- | Dog data Dog = Dog { dogClassName :: !(Text) -- ^ /Required/ "className" , dogColor :: !(Maybe Text) -- ^ "color" , dogBreed :: !(Maybe Text) -- ^ "breed" } deriving (P.Show,P.Eq,P.Typeable) + +-- | FromJSON Dog instance A.FromJSON Dog where parseJSON = A.withObject "Dog" $ \o -> Dog @@ -1269,6 +1376,7 @@ instance A.FromJSON Dog where <*> (o .:? "color") <*> (o .:? "breed") +-- | ToJSON Dog instance A.ToJSON Dog where toJSON Dog {..} = _omitNulls @@ -1293,21 +1401,23 @@ mkDog dogClassName = -- * Utils -- | Removes Null fields. (OpenAPI-Specification 2.0 does not allow Null in JSON) - _omitNulls :: [(Text, A.Value)] -> A.Value _omitNulls = A.object . P.filter notNull where notNull (_, A.Null) = False notNull _ = True +-- | Encodes fields using WH.toQueryParam _toFormItem :: (WH.ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text]) _toFormItem name x = (name,) . (:[]) . WH.toQueryParam <$> x +-- | Collapse (Just "") to Nothing _emptyToNothing :: Maybe String -> Maybe String _emptyToNothing (Just "") = Nothing _emptyToNothing x = x {-# INLINE _emptyToNothing #-} +-- | Collapse (Just mempty) to Nothing _memptyToNothing :: (P.Monoid a, P.Eq a) => Maybe a -> Maybe a _memptyToNothing (Just x) | x P.== P.mempty = Nothing _memptyToNothing x = x @@ -1340,6 +1450,7 @@ _showDateTime = TI.formatISO8601Millis {-# INLINE _showDateTime #-} +-- | parse an ISO8601 date-time string _parseISO8601 :: (TI.ParseTime t, Monad m, Alternative m) => String -> m t _parseISO8601 t = P.asum $ diff --git a/samples/client/petstore/haskell-http-client/pom.xml b/samples/client/petstore/haskell-http-client/pom.xml index 7ef1adb23315..1ae981634241 100644 --- a/samples/client/petstore/haskell-http-client/pom.xml +++ b/samples/client/petstore/haskell-http-client/pom.xml @@ -38,6 +38,7 @@ --install-ghc --no-haddock-deps haddock + --fast @@ -51,6 +52,7 @@ stack test + --fast diff --git a/samples/client/petstore/haskell-http-client/swagger-petstore.cabal b/samples/client/petstore/haskell-http-client/swagger-petstore.cabal index d2f9e7c90982..e981b82d4ec9 100644 --- a/samples/client/petstore/haskell-http-client/swagger-petstore.cabal +++ b/samples/client/petstore/haskell-http-client/swagger-petstore.cabal @@ -92,6 +92,7 @@ test-suite tests , time , iso8601-time , aeson + , vector , semigroups , QuickCheck other-modules: diff --git a/samples/client/petstore/haskell-http-client/swagger.json b/samples/client/petstore/haskell-http-client/swagger.json index 4af4303cdb82..7c2e6c0cc652 100644 --- a/samples/client/petstore/haskell-http-client/swagger.json +++ b/samples/client/petstore/haskell-http-client/swagger.json @@ -108,8 +108,8 @@ "type" : "array", "items" : { "type" : "string", - "default" : "available", - "enum" : [ "available", "pending", "sold" ] + "enum" : [ "available", "pending", "sold" ], + "default" : "available" }, "collectionFormat" : "csv" } ], @@ -680,8 +680,8 @@ "type" : "array", "items" : { "type" : "string", - "default" : "$", - "enum" : [ ">", "$" ] + "enum" : [ ">", "$" ], + "default" : "$" } }, { "name" : "enum_form_string", @@ -699,8 +699,8 @@ "type" : "array", "items" : { "type" : "string", - "default" : "$", - "enum" : [ ">", "$" ] + "enum" : [ ">", "$" ], + "default" : "$" } }, { "name" : "enum_header_string", @@ -718,8 +718,8 @@ "type" : "array", "items" : { "type" : "string", - "default" : "$", - "enum" : [ ">", "$" ] + "enum" : [ ">", "$" ], + "default" : "$" } }, { "name" : "enum_query_string", diff --git a/samples/client/petstore/haskell-http-client/tests-integration/tests/Test.hs b/samples/client/petstore/haskell-http-client/tests-integration/tests/Test.hs index 4d00e2ec92f6..a6563639f824 100644 --- a/samples/client/petstore/haskell-http-client/tests-integration/tests/Test.hs +++ b/samples/client/petstore/haskell-http-client/tests-integration/tests/Test.hs @@ -49,17 +49,24 @@ main = do env <- getEnvironment - let host = case lookup "HOST" env of - Just h -> BCL.pack h - _ -> "http://0.0.0.0/v2" + mgr <- NH.newManager NH.defaultManagerSettings config0 <- S.withStdoutLogging =<< S.newConfig - let config = config0 { S.configHost = host } + + let config = + -- configure host + case lookup "HOST" env of + Just h -> config0 { S.configHost = BCL.pack h } + _ -> config0 { S.configHost = "http://0.0.0.0/v2" } + -- each configured auth method is only applied to requests that specify them + `S.addAuthMethod` S.AuthBasicHttpBasicTest "username" "password" + `S.addAuthMethod` S.AuthApiKeyApiKey "secret-key" + `S.addAuthMethod` S.AuthApiKeyApiKeyQuery "secret-key" + `S.addAuthMethod` S.AuthOAuthPetstoreAuth "secret-key" putStrLn "\n******** CONFIG ********" putStrLn (show config) - mgr <- NH.newManager NH.defaultManagerSettings hspec $ do testPetOps mgr config @@ -91,7 +98,7 @@ testPetOps mgr config = Just pet@S.Pet {S.petId = Just petId} -> go (petId, pet) _ -> pendingWith "no petId") $ it "getPetById" $ \(petId, pet) -> do - let getPetByIdRequest = S.getPetById petId + let getPetByIdRequest = S.getPetById (S.PetId petId) getPetByIdRequestResult <- S.dispatchMime mgr config getPetByIdRequest S.MimeJSON NH.responseStatus (S.mimeResultResponse getPetByIdRequestResult) `shouldBe` NH.status200 case S.mimeResult getPetByIdRequestResult of @@ -99,7 +106,7 @@ testPetOps mgr config = Left (S.MimeError e _) -> assertFailure e it "findPetsByStatus" $ do - let findPetsByStatusRequest = S.findPetsByStatus ["available","pending","sold"] + let findPetsByStatusRequest = S.findPetsByStatus (S.Status ["available","pending","sold"]) findPetsByStatusResult <- S.dispatchMime mgr config findPetsByStatusRequest S.MimeJSON NH.responseStatus (S.mimeResultResponse findPetsByStatusResult) `shouldBe` NH.status200 case S.mimeResult findPetsByStatusResult of @@ -107,7 +114,7 @@ testPetOps mgr config = Left (S.MimeError e _) -> assertFailure e it "findPetsByTags" $ do - let findPetsByTagsRequest = S.findPetsByTags ["name","tag1"] + let findPetsByTagsRequest = S.findPetsByTags (S.Tags ["name","tag1"]) findPetsByTagsResult <- S.dispatchMime mgr config findPetsByTagsRequest S.MimeJSON NH.responseStatus (S.mimeResultResponse findPetsByTagsResult) `shouldBe` NH.status200 case S.mimeResult findPetsByTagsResult of @@ -129,9 +136,9 @@ testPetOps mgr config = it "updatePetWithFormRequest" $ do readIORef _pet >>= \case Just S.Pet {S.petId = Just petId} -> do - let updatePetWithFormRequest = S.updatePetWithForm S.MimeFormUrlEncoded petId + let updatePetWithFormRequest = S.updatePetWithForm S.MimeFormUrlEncoded (S.PetId petId) `S.applyOptionalParam` S.Name2 "petName" - `S.applyOptionalParam` S.Status "pending" + `S.applyOptionalParam` S.StatusText "pending" updatePetWithFormResponse <- S.dispatchLbs mgr config updatePetWithFormRequest S.MimeJSON NH.responseStatus updatePetWithFormResponse `shouldBe` NH.status200 _ -> pendingWith "no pet" @@ -141,7 +148,7 @@ testPetOps mgr config = Just pet@S.Pet {S.petId = Just petId} -> go petId _ -> pendingWith "no petId") $ it "uploadFile" $ \petId -> do - let uploadFileRequest = S.uploadFile S.MimeMultipartFormData petId + let uploadFileRequest = S.uploadFile S.MimeMultipartFormData (S.PetId petId) `S.applyOptionalParam` S.File "package.yaml" `S.applyOptionalParam` S.AdditionalMetadata "a package.yaml file" uploadFileRequestResult <- S.dispatchMime mgr config uploadFileRequest S.MimeJSON @@ -155,7 +162,7 @@ testPetOps mgr config = Just pet@S.Pet {S.petId = Just petId} -> go petId _ -> pendingWith "no petId") $ it "deletePet" $ \petId -> do - let deletePetRequest = S.deletePet petId + let deletePetRequest = S.deletePet (S.PetId petId) `S.applyOptionalParam` S.ApiKey "api key" deletePetResponse <- S.dispatchLbs mgr config deletePetRequest S.MimeJSON NH.responseStatus deletePetResponse `shouldBe` NH.status200 @@ -200,7 +207,7 @@ testStoreOps mgr config = do Just order@S.Order {S.orderId = Just orderId} -> go (orderId, order) _ -> pendingWith "no orderId") $ it "getOrderById" $ \(orderId, order) -> do - let getOrderByIdRequest = S.getOrderById orderId + let getOrderByIdRequest = S.getOrderById (S.OrderId orderId) getOrderByIdRequestResult <- S.dispatchMime mgr config getOrderByIdRequest S.MimeJSON NH.responseStatus (S.mimeResultResponse getOrderByIdRequestResult) `shouldBe` NH.status200 case S.mimeResult getOrderByIdRequestResult of @@ -212,7 +219,7 @@ testStoreOps mgr config = do Just S.Order {S.orderId = Just orderId} -> go (T.pack (show orderId)) _ -> pendingWith "no orderId") $ it "deleteOrder" $ \orderId -> do - let deleteOrderRequest = S.deleteOrder orderId + let deleteOrderRequest = S.deleteOrder (S.OrderIdText orderId) deleteOrderResult <- S.dispatchLbs mgr config deleteOrderRequest S.MimeJSON NH.responseStatus deleteOrderResult `shouldBe` NH.status200 @@ -249,19 +256,19 @@ testUserOps mgr config = do before (pure _users) $ it "createUsersWithArrayInput" $ \users -> do - let createUsersWithArrayInputRequest = S.createUsersWithArrayInput S.MimeJSON users + let createUsersWithArrayInputRequest = S.createUsersWithArrayInput S.MimeJSON (S.Body users) createUsersWithArrayInputResult <- S.dispatchLbs mgr config createUsersWithArrayInputRequest S.MimeNoContent NH.responseStatus createUsersWithArrayInputResult `shouldBe` NH.status200 before (pure _users) $ it "createUsersWithListInput" $ \users -> do - let createUsersWithListInputRequest = S.createUsersWithListInput S.MimeJSON users + let createUsersWithListInputRequest = S.createUsersWithListInput S.MimeJSON (S.Body users) createUsersWithListInputResult <- S.dispatchLbs mgr config createUsersWithListInputRequest S.MimeNoContent NH.responseStatus createUsersWithListInputResult `shouldBe` NH.status200 before (pure (_username, _user)) $ it "getUserByName" $ \(username, user) -> do - let getUserByNameRequest = S.getUserByName username + let getUserByNameRequest = S.getUserByName (S.Username username) getUserByNameResult <- S.dispatchMime mgr config getUserByNameRequest S.MimeJSON NH.responseStatus (S.mimeResultResponse getUserByNameResult) `shouldBe` NH.status200 case S.mimeResult getUserByNameResult of @@ -270,13 +277,13 @@ testUserOps mgr config = do before (pure (_username, _password)) $ it "loginUser" $ \(username, password) -> do - let loginUserRequest = S.loginUser username password + let loginUserRequest = S.loginUser (S.Username username) (S.Password password) loginUserResult <- S.dispatchLbs mgr config loginUserRequest S.MimeJSON NH.responseStatus loginUserResult `shouldBe` NH.status200 before (pure (_username, _user)) $ it "updateUser" $ \(username, user) -> do - let updateUserRequest = S.updateUser S.MimeJSON username user + let updateUserRequest = S.updateUser S.MimeJSON (S.Username username) user updateUserResult <- S.dispatchLbs mgr config updateUserRequest S.MimeJSON NH.responseStatus updateUserResult `shouldBe` NH.status200 @@ -286,6 +293,6 @@ testUserOps mgr config = do before (pure _username) $ it "deleteUser" $ \username -> do - let deleteUserRequest = S.deleteUser username + let deleteUserRequest = S.deleteUser (S.Username username) deleteUserResult <- S.dispatchLbs mgr config deleteUserRequest S.MimeJSON NH.responseStatus deleteUserResult `shouldBe` NH.status200 diff --git a/samples/client/petstore/haskell-http-client/tests/Instances.hs b/samples/client/petstore/haskell-http-client/tests/Instances.hs index 87f3d95f95f2..50853af7c990 100644 --- a/samples/client/petstore/haskell-http-client/tests/Instances.hs +++ b/samples/client/petstore/haskell-http-client/tests/Instances.hs @@ -2,20 +2,23 @@ module Instances where -import Data.Text (Text, pack) +import Control.Monad import Data.Char (isSpace) import Data.List (sort) -import qualified Data.Time as TI import Test.QuickCheck +import qualified Data.Aeson as A +import qualified Data.ByteString.Lazy as BL import qualified Data.HashMap.Strict as HM import qualified Data.Set as Set -import qualified Data.ByteString.Lazy as BL +import qualified Data.Text as T +import qualified Data.Time as TI +import qualified Data.Vector as V import ApproxEq import SwaggerPetstore.Model -instance Arbitrary Text where - arbitrary = pack <$> arbitrary +instance Arbitrary T.Text where + arbitrary = T.pack <$> arbitrary instance Arbitrary TI.Day where arbitrary = TI.ModifiedJulianDay . (2000 +) <$> arbitrary @@ -45,6 +48,27 @@ instance Arbitrary Date where arbitrary = Date <$> arbitrary shrink (Date xs) = Date <$> shrink xs +-- | A naive Arbitrary instance for A.Value: +instance Arbitrary A.Value where + arbitrary = frequency [(3, simpleTypes), (1, arrayTypes), (1, objectTypes)] + where + simpleTypes :: Gen A.Value + simpleTypes = + frequency + [ (1, return A.Null) + , (2, liftM A.Bool (arbitrary :: Gen Bool)) + , (2, liftM (A.Number . fromIntegral) (arbitrary :: Gen Int)) + , (2, liftM (A.String . T.pack) (arbitrary :: Gen String)) + ] + mapF (k, v) = (T.pack k, v) + simpleAndArrays = frequency [(1, sized sizedArray), (4, simpleTypes)] + arrayTypes = sized sizedArray + objectTypes = sized sizedObject + sizedArray n = liftM (A.Array . V.fromList) $ replicateM n simpleTypes + sizedObject n = + liftM (A.object . map mapF) $ + replicateM n $ (,) <$> (arbitrary :: Gen String) <*> simpleAndArrays + -- | Checks if a given list has no duplicates in _O(n log n)_. hasNoDups :: (Ord a) diff --git a/samples/client/petstore/haskell-http-client/tests/Test.hs b/samples/client/petstore/haskell-http-client/tests/Test.hs index 5ed151beee66..d717ddde8562 100644 --- a/samples/client/petstore/haskell-http-client/tests/Test.hs +++ b/samples/client/petstore/haskell-http-client/tests/Test.hs @@ -17,42 +17,43 @@ import SwaggerPetstore.MimeTypes main :: IO () main = - hspec $ modifyMaxSize (const 10) $ - do describe "JSON instances" $ - do propMimeEq MimeJSON (Proxy :: Proxy AdditionalPropertiesClass) - propMimeEq MimeJSON (Proxy :: Proxy Animal) - propMimeEq MimeJSON (Proxy :: Proxy AnimalFarm) - propMimeEq MimeJSON (Proxy :: Proxy ApiResponse) - propMimeEq MimeJSON (Proxy :: Proxy ArrayOfArrayOfNumberOnly) - propMimeEq MimeJSON (Proxy :: Proxy ArrayOfNumberOnly) - propMimeEq MimeJSON (Proxy :: Proxy ArrayTest) - propMimeEq MimeJSON (Proxy :: Proxy Capitalization) - propMimeEq MimeJSON (Proxy :: Proxy Category) - propMimeEq MimeJSON (Proxy :: Proxy ClassModel) - propMimeEq MimeJSON (Proxy :: Proxy Client) - propMimeEq MimeJSON (Proxy :: Proxy EnumArrays) - propMimeEq MimeJSON (Proxy :: Proxy EnumClass) - propMimeEq MimeJSON (Proxy :: Proxy EnumTest) - propMimeEq MimeJSON (Proxy :: Proxy FormatTest) - propMimeEq MimeJSON (Proxy :: Proxy HasOnlyReadOnly) - propMimeEq MimeJSON (Proxy :: Proxy MapTest) - propMimeEq MimeJSON (Proxy :: Proxy MixedPropertiesAndAdditionalPropertiesClass) - propMimeEq MimeJSON (Proxy :: Proxy Model200Response) - propMimeEq MimeJSON (Proxy :: Proxy ModelList) - propMimeEq MimeJSON (Proxy :: Proxy ModelReturn) - propMimeEq MimeJSON (Proxy :: Proxy Name) - propMimeEq MimeJSON (Proxy :: Proxy NumberOnly) - propMimeEq MimeJSON (Proxy :: Proxy Order) - propMimeEq MimeJSON (Proxy :: Proxy OuterBoolean) - propMimeEq MimeJSON (Proxy :: Proxy OuterComposite) - propMimeEq MimeJSON (Proxy :: Proxy OuterEnum) - propMimeEq MimeJSON (Proxy :: Proxy OuterNumber) - propMimeEq MimeJSON (Proxy :: Proxy OuterString) - propMimeEq MimeJSON (Proxy :: Proxy Pet) - propMimeEq MimeJSON (Proxy :: Proxy ReadOnlyFirst) - propMimeEq MimeJSON (Proxy :: Proxy SpecialModelName) - propMimeEq MimeJSON (Proxy :: Proxy Tag) - propMimeEq MimeJSON (Proxy :: Proxy User) - propMimeEq MimeJSON (Proxy :: Proxy Cat) - propMimeEq MimeJSON (Proxy :: Proxy Dog) - + hspec $ modifyMaxSize (const 10) $ do + describe "JSON instances" $ do + pure () + propMimeEq MimeJSON (Proxy :: Proxy AdditionalPropertiesClass) + propMimeEq MimeJSON (Proxy :: Proxy Animal) + propMimeEq MimeJSON (Proxy :: Proxy AnimalFarm) + propMimeEq MimeJSON (Proxy :: Proxy ApiResponse) + propMimeEq MimeJSON (Proxy :: Proxy ArrayOfArrayOfNumberOnly) + propMimeEq MimeJSON (Proxy :: Proxy ArrayOfNumberOnly) + propMimeEq MimeJSON (Proxy :: Proxy ArrayTest) + propMimeEq MimeJSON (Proxy :: Proxy Capitalization) + propMimeEq MimeJSON (Proxy :: Proxy Category) + propMimeEq MimeJSON (Proxy :: Proxy ClassModel) + propMimeEq MimeJSON (Proxy :: Proxy Client) + propMimeEq MimeJSON (Proxy :: Proxy EnumArrays) + propMimeEq MimeJSON (Proxy :: Proxy EnumClass) + propMimeEq MimeJSON (Proxy :: Proxy EnumTest) + propMimeEq MimeJSON (Proxy :: Proxy FormatTest) + propMimeEq MimeJSON (Proxy :: Proxy HasOnlyReadOnly) + propMimeEq MimeJSON (Proxy :: Proxy MapTest) + propMimeEq MimeJSON (Proxy :: Proxy MixedPropertiesAndAdditionalPropertiesClass) + propMimeEq MimeJSON (Proxy :: Proxy Model200Response) + propMimeEq MimeJSON (Proxy :: Proxy ModelList) + propMimeEq MimeJSON (Proxy :: Proxy ModelReturn) + propMimeEq MimeJSON (Proxy :: Proxy Name) + propMimeEq MimeJSON (Proxy :: Proxy NumberOnly) + propMimeEq MimeJSON (Proxy :: Proxy Order) + propMimeEq MimeJSON (Proxy :: Proxy OuterBoolean) + propMimeEq MimeJSON (Proxy :: Proxy OuterComposite) + propMimeEq MimeJSON (Proxy :: Proxy OuterEnum) + propMimeEq MimeJSON (Proxy :: Proxy OuterNumber) + propMimeEq MimeJSON (Proxy :: Proxy OuterString) + propMimeEq MimeJSON (Proxy :: Proxy Pet) + propMimeEq MimeJSON (Proxy :: Proxy ReadOnlyFirst) + propMimeEq MimeJSON (Proxy :: Proxy SpecialModelName) + propMimeEq MimeJSON (Proxy :: Proxy Tag) + propMimeEq MimeJSON (Proxy :: Proxy User) + propMimeEq MimeJSON (Proxy :: Proxy Cat) + propMimeEq MimeJSON (Proxy :: Proxy Dog) +