git.iko.soy/typeable/mock-server-client
on master help sign in
original yaml and the code generated from modified yaml
commit1d150acf5fa9baa50c8cf294cf4c85135a90f958 authorAleksey Uymanov <s9gf4ult@gmail.com> dateFri 20 Jan 2023, 00:00 (4 years ago)
108 files changed+6735
README.md+52 codegen/mock-server-openapi.yaml+1020 codegen/openapi3-code-generator.json+11 codegen/regen.sh+11 codegen/shell.nix+10 mock-server-client.cabal+85 src/MockServer.hs+122 src/MockServer/Common.hs+393 src/MockServer/Configuration.hs+21 src/MockServer/Operations/Put_mockserver_bind.hs+91 src/MockServer/Operations/Put_mockserver_clear.hs+100 src/MockServer/Operations/Put_mockserver_expectation.hs+91 src/MockServer/Operations/Put_mockserver_openapi.hs+91 src/MockServer/Operations/Put_mockserver_reset.hs+77 src/MockServer/Operations/Put_mockserver_retrieve.hs+189 src/MockServer/Operations/Put_mockserver_status.hs+79 src/MockServer/Operations/Put_mockserver_stop.hs+77 src/MockServer/Operations/Put_mockserver_verify.hs+89 src/MockServer/Operations/Put_mockserver_verifySequence.hs+89 src/MockServer/SecuritySchemes.hs+14 src/MockServer/TypeAlias.hs+54 src/MockServer/Types.hs+94 src/MockServer/Types/BinaryBodyMatcher.hs+75 src/MockServer/Types/BinaryBodyMatcher.hs-boot+14 src/MockServer/Types/BinaryBodyResponse.hs+75 src/MockServer/Types/BinaryBodyResponse.hs-boot+14 src/MockServer/Types/Body.hs+83 src/MockServer/Types/Body.hs-boot+10 src/MockServer/Types/BodyWithContentType.hs+65 src/MockServer/Types/BodyWithContentType.hs-boot+10 src/MockServer/Types/ConnectionOptions.hs+70 src/MockServer/Types/ConnectionOptions.hs-boot+9 src/MockServer/Types/Delay.hs+54 src/MockServer/Types/Delay.hs-boot+9 src/MockServer/Types/Expectation.hs+107 src/MockServer/Types/Expectation.hs-boot+9 src/MockServer/Types/ExpectationId.hs+52 src/MockServer/Types/ExpectationId.hs-boot+9 src/MockServer/Types/Expectations.hs+54 src/MockServer/Types/Expectations.hs-boot+10 src/MockServer/Types/HttpClassCallback.hs+55 src/MockServer/Types/HttpClassCallback.hs-boot+9 src/MockServer/Types/HttpError.hs+58 src/MockServer/Types/HttpError.hs-boot+9 src/MockServer/Types/HttpForward.hs+79 src/MockServer/Types/HttpForward.hs-boot+14 src/MockServer/Types/HttpObjectCallback.hs+58 src/MockServer/Types/HttpObjectCallback.hs-boot+9 src/MockServer/Types/HttpOverrideForwardedRequest.hs+281 src/MockServer/Types/HttpOverrideForwardedRequest.hs-boot+60 src/MockServer/Types/HttpRequest.hs+83 src/MockServer/Types/HttpRequest.hs-boot+9 src/MockServer/Types/HttpResponse.hs+74 src/MockServer/Types/HttpResponse.hs-boot+9 src/MockServer/Types/HttpTemplate.hs+79 src/MockServer/Types/HttpTemplate.hs-boot+14 src/MockServer/Types/JsonBodyMatcher.hs+96 src/MockServer/Types/JsonBodyMatcher.hs-boot+19 src/MockServer/Types/JsonPathBodyMatcher.hs+72 src/MockServer/Types/JsonPathBodyMatcher.hs-boot+14 src/MockServer/Types/JsonResponseBody.hs+75 src/MockServer/Types/JsonResponseBody.hs-boot+14 src/MockServer/Types/JsonSchemaBodyMatcher.hs+73 src/MockServer/Types/JsonSchemaBodyMatcher.hs-boot+14 src/MockServer/Types/KeyToMultiValue.hs+106 src/MockServer/Types/KeyToMultiValue.hs-boot+25 src/MockServer/Types/KeyToValue.hs+72 src/MockServer/Types/KeyToValue.hs-boot+15 src/MockServer/Types/OpenAPIDefinition.hs+54 src/MockServer/Types/OpenAPIDefinition.hs-boot+9 src/MockServer/Types/OpenAPIExpectation.hs+69 src/MockServer/Types/OpenAPIExpectation.hs-boot+14 src/MockServer/Types/OpenAPIExpectations.hs+54 src/MockServer/Types/OpenAPIExpectations.hs-boot+10 src/MockServer/Types/ParameterBodyMatcher.hs+73 src/MockServer/Types/ParameterBodyMatcher.hs-boot+14 src/MockServer/Types/Ports.hs+51 src/MockServer/Types/Ports.hs-boot+9 src/MockServer/Types/RegexBodyMatcher.hs+72 src/MockServer/Types/RegexBodyMatcher.hs-boot+14 src/MockServer/Types/RequestDefinition.hs+55 src/MockServer/Types/RequestDefinition.hs-boot+10 src/MockServer/Types/SocketAddress.hs+75 src/MockServer/Types/SocketAddress.hs-boot+14 src/MockServer/Types/StringBodyMatcher.hs+78 src/MockServer/Types/StringBodyMatcher.hs-boot+14 src/MockServer/Types/StringOrJsonSchema.hs+133 src/MockServer/Types/StringOrJsonSchema.hs-boot+20 src/MockServer/Types/StringResponseBody.hs+75 src/MockServer/Types/StringResponseBody.hs-boot+14 src/MockServer/Types/TimeToLive.hs+90 src/MockServer/Types/TimeToLive.hs-boot+14 src/MockServer/Types/Times.hs+54 src/MockServer/Types/Times.hs-boot+9 src/MockServer/Types/Verification.hs+63 src/MockServer/Types/Verification.hs-boot+9 src/MockServer/Types/VerificationSequence.hs+59 src/MockServer/Types/VerificationSequence.hs-boot+9 src/MockServer/Types/VerificationTimes.hs+54 src/MockServer/Types/VerificationTimes.hs-boot+9 src/MockServer/Types/XmlBodyMatcher.hs+75 src/MockServer/Types/XmlBodyMatcher.hs-boot+14 src/MockServer/Types/XmlResponseBody.hs+75 src/MockServer/Types/XmlResponseBody.hs-boot+14 src/MockServer/Types/XmlSchemaBodyMatcher.hs+72 src/MockServer/Types/XmlSchemaBodyMatcher.hs-boot+14 src/MockServer/Types/XpathBodyMatcher.hs+72 src/MockServer/Types/XpathBodyMatcher.hs-boot+14
README.mdnew file+52
@@ -0,0 +1,52 @@
1+## About
2+
3+The package is the client library for the [mock server](https://www.mock-server.com/). The source code is
4+generated by the [openapi3-code-generator](https://hackage.haskell.org/package/openapi3-code-generator), specifically its patched version.
5+
6+## How to regenerate
7+
8+```
9+cd codegen && ./regen.sh
10+```
11+
12+It requires the `nix` to be installed in your system because it uses the
13+`openapi3-code-generator` built by the `nix`.
14+
15+After regeneration you will see some `.hs` files changed. This is because some
16+parts of the libary are modified by hand to make the more usable.
17+
18+## Files
19+
20+### The `codegen` dir
21+
22+* `regen.sh` is the simple script to regenerate the whole package.
23+* `shell.nix` a shell in which the `regen.sh` calls the `openapi3-code-generator` to regenerate the
24+* `mock-server-openapi-5.13.x-swagger.yaml` not the original file as you might
25+ think. The thing is that the `openapi3-code-generator` does not support all
26+ the features of the OpenAPI3 standard correctly, so it is
27+ hand-postprocessed. It was originally downloaded from [here](https://app.swaggerhub.com/apis/jamesdbloom/mock-server-openapi/5.13.x) and fixed.
28+* `src` contails the generted code, but not exactly. Some of the parts of the
29+ generted code was not very pleasant, so it was fixed too.
30+
31+### What will happen if you just call the `regen.sh`?
32+
33+It will build the `openapi3-code-generator` in `nix` and regenerate the whole
34+Haskell source code. You will see that the code was changed, because as
35+mentioned earlier the original code was slightly modified, so watch your commits.
36+
37+## How the to update the package to the new version of the `mock-server`?
38+
39+* Commit all changes in git
40+* Run the `regen.sh` and regenerate the whole package
41+* Run `git diff -p > src.patch` and save the manual changes made to the source code
42+* Download the [original spec](https://app.swaggerhub.com/apis/jamesdbloom/mock-server-openapi/5.13.x) in place of our patched spec file
43+* Run the `git diff -- codegen/mock-server-openapi-5.13.x-swagger.yaml -p > spec.patch`
44+* Download the [new spec](https://app.swaggerhub.com/apis/jamesdbloom/mock-server-openapi) and put it in place of the old one
45+* Try to `git apply spec.patch` to the newer version of the spec to apply manual
46+ changes to the new spec. If somethig goes wrong use AI to fix it for you, heh.
47+* Fix the `regen.sh` and rename the `mock-server-openapi-5.13.x-swagger.yaml` to
48+ the newer version.
49+* `git commit -m 'dangerous action'`
50+* Run the `regen.sh` so you will hopefuly have a new version of the client code
51+ generated.
52+* `git apply src.patch` to apply manual patches to the new version.
codegen/mock-server-openapi.yamlnew file+1020
@@ -0,0 +1,1020 @@
1+openapi: 3.0.0
2+servers:
3+ - url: 'http://localhost:1080/'
4+ - url: 'https://localhost:1080/'
5+info:
6+ title: MockServer API
7+ version: 5.13.x
8+ description: >-
9+ MockServer enables easy mocking of any system you integrate with via HTTP or HTTPS with clients written in Java, JavaScript and Ruby and a simple REST API (as shown below).
10+
11+
12+ MockServer Proxy is a proxy that introspects all proxied traffic including encrypted SSL traffic and supports Port Forwarding, Web Proxying (i.e. HTTP proxy), HTTPS Tunneling Proxying (using HTTP CONNECT) and SOCKS Proxying (i.e. dynamic port forwarding).
13+
14+
15+ Both MockServer and the MockServer Proxy record all received requests so that it is possible to verify exactly what requests have been sent by the system under test.
16+ license:
17+ url: 'https://github.com/mock-server/mockserver/blob/master/LICENSE.md'
18+ name: Apache 2.0
19+tags:
20+ - name: expectation
21+ description: Create or update expectations - updates if the id matches an existing expecations (only supported by MockServer)
22+ - name: verify
23+ description: Verify requests (both MockServer & MockServer Proxy)
24+ - name: control
25+ description: Manage state or process (both MockServer & MockServer Proxy)
26+
27+paths:
28+ /mockserver/expectation:
29+ put:
30+ tags:
31+ - expectation
32+ summary: create expectation
33+ responses:
34+ '201':
35+ description: expectations created
36+ content:
37+ application/json:
38+ schema:
39+ description: "list of upserted expectations"
40+ type: array
41+ additionalProperties: false
42+ items:
43+ $ref: "#/components/schemas/Expectation"
44+ '400':
45+ description: incorrect request format
46+ '406':
47+ description: invalid expectation
48+ requestBody:
49+ content:
50+ application/json:
51+ schema:
52+ $ref: "#/components/schemas/Expectations"
53+ description: expectation(s) to create
54+ required: true
55+ /mockserver/openapi:
56+ put:
57+ tags:
58+ - expectation
59+ summary: create expectations from OpenAPI or Swagger
60+ responses:
61+ '201':
62+ description: expectations created
63+ content:
64+ application/json:
65+ schema:
66+ description: "list of upserted expectations"
67+ type: array
68+ additionalProperties: false
69+ items:
70+ $ref: "#/components/schemas/Expectation"
71+ '400':
72+ description: incorrect request format
73+ '406':
74+ description: invalid expectation
75+ requestBody:
76+ content:
77+ application/json:
78+ schema:
79+ $ref: "#/components/schemas/OpenAPIExpectations"
80+ description: expectation(s) to create
81+ required: true
82+ /mockserver/clear:
83+ put:
84+ tags:
85+ - control
86+ summary: clears expectations and recorded requests that match the request matcher
87+ responses:
88+ '200':
89+ description: expectations and recorded requests cleared
90+ '400':
91+ description: incorrect request format
92+ parameters:
93+ - in: query
94+ name: type
95+ schema:
96+ type: string
97+ enum: ["all", "log", "expectations"]
98+ default: "all"
99+ required: false
100+ description: specifies the type of information to clear, default if not specified is "all", supported values are "all", "log", "expectations"
101+ requestBody:
102+ content:
103+ application/json:
104+ schema:
105+ oneOf:
106+ - $ref: "#/components/schemas/RequestDefinition"
107+ - $ref: "#/components/schemas/ExpectationId"
108+ description: request used to match expectations and recored requests to clear
109+ /mockserver/reset:
110+ put:
111+ tags:
112+ - control
113+ summary: clears all expectations and recorded requests
114+ responses:
115+ '200':
116+ description: expectations and recorded requests cleared
117+ /mockserver/retrieve:
118+ put:
119+ tags:
120+ - control
121+ summary: retrieve recorded requests, active expectations, recorded expectations or log messages
122+ parameters:
123+ - in: query
124+ name: format
125+ schema:
126+ type: string
127+ enum: [ "java", "json", "log_entries" ]
128+ required: false
129+ description: changes response format, default if not specificed is "json", supported values are "java", "json", "log_entries"
130+ - in: query
131+ name: type
132+ schema:
133+ type: string
134+ enum: [ "logs", "requests", "request_responses", "recorded_expectations", "active_expectations" ]
135+ required: false
136+ description: specifies the type of object that is retrieve, default if not specified is "requests", supported values are "logs", "requests", "recorded_expectations", "active_expectations"
137+ responses:
138+ '200':
139+ description: recorded requests or active expectations returned
140+ content:
141+ application/json:
142+ schema:
143+ oneOf:
144+ - type: array
145+ additionalProperties: false
146+ items:
147+ $ref: "#/components/schemas/Expectation"
148+ - type: array
149+ additionalProperties: false
150+ items:
151+ $ref: "#/components/schemas/HttpRequest"
152+ - type: array
153+ additionalProperties: false
154+ items:
155+ $ref: "#/components/schemas/HttpRequestAndHttpResponse"
156+ application/java:
157+ schema:
158+ type: string
159+ description: Java code for the list of either Expectations or HttpResponses
160+ text/plain:
161+ schema:
162+ type: string
163+ description: List of recorded log messages
164+ '400':
165+ description: incorrect request format
166+ requestBody:
167+ content:
168+ application/json:
169+ schema:
170+ $ref: "#/components/schemas/RequestDefinition"
171+ description: >-
172+ request used to match which recorded requests, expectations or log messages to return, an empty body matches all requests, expectations or log messages
173+ /mockserver/verify:
174+ put:
175+ tags:
176+ - verify
177+ summary: verify a request has been received a specific number of times
178+ responses:
179+ '202':
180+ description: matching request has been received specified number of times
181+ '400':
182+ description: incorrect request format
183+ '406':
184+ description: request has not been received specified numbers of times
185+ content:
186+ text/plain:
187+ schema:
188+ type: string
189+ description: 'JUnit expected:<...> but was:<...> format'
190+ requestBody:
191+ content:
192+ application/json:
193+ schema:
194+ $ref: "#/components/schemas/Verification"
195+ description: request matcher and the number of times to match
196+ required: true
197+ /mockserver/verifySequence:
198+ put:
199+ tags:
200+ - verify
201+ summary: verify a sequence of request has been received in the specific order
202+ responses:
203+ '202':
204+ description: request sequence has been received in specified order
205+ '400':
206+ description: incorrect request format
207+ '406':
208+ description: request sequence has not been received in specified order
209+ content:
210+ text/plain:
211+ schema:
212+ type: string
213+ description: 'JUnit expected:<...> but was:<...> format'
214+ requestBody:
215+ content:
216+ application/json:
217+ schema:
218+ $ref: "#/components/schemas/VerificationSequence"
219+ description: the sequence of requests matchers
220+ required: true
221+ /mockserver/status:
222+ put:
223+ tags:
224+ - control
225+ summary: return listening ports
226+ responses:
227+ '200':
228+ description: MockServer is running and listening on the listed ports
229+ content:
230+ application/json:
231+ schema:
232+ $ref: "#/components/schemas/Ports"
233+ /mockserver/bind:
234+ put:
235+ tags:
236+ - control
237+ summary: bind additional listening ports
238+ description: only supported on Netty version
239+ responses:
240+ '200':
241+ description: >-
242+ listening on additional requested ports, note: the response ony
243+ contains ports added for the request, to list all ports use /status
244+ content:
245+ application/json:
246+ schema:
247+ $ref: "#/components/schemas/Ports"
248+ '400':
249+ description: incorrect request format
250+ '406':
251+ description: >-
252+ unable to bind to ports (i.e. already bound or JVM process doesn't
253+ have permission)
254+ requestBody:
255+ content:
256+ application/json:
257+ schema:
258+ $ref: "#/components/schemas/Ports"
259+ description: >-
260+ list of ports to bind to, where 0 indicates dynamically bind to any
261+ available port
262+ required: true
263+ /mockserver/stop:
264+ put:
265+ tags:
266+ - control
267+ summary: stop running process
268+ description: only supported on Netty version
269+ responses:
270+ '200':
271+ description: MockServer process is stopping
272+components:
273+ schemas:
274+ Expectations:
275+ description: "list of expectations"
276+ oneOf:
277+ - $ref: "#/components/schemas/Expectation"
278+ - type: array
279+ additionalProperties: false
280+ items:
281+ $ref: "#/components/schemas/Expectation"
282+ Expectation:
283+ description: "expectation"
284+ type: object
285+ additionalProperties: false
286+ properties:
287+ id:
288+ type: string
289+ priority:
290+ type: integer
291+ httpRequest:
292+ $ref: "#/components/schemas/RequestDefinition"
293+ httpResponse:
294+ $ref: "#/components/schemas/HttpResponse"
295+ httpResponseTemplate:
296+ $ref: "#/components/schemas/HttpTemplate"
297+ httpResponseClassCallback:
298+ $ref: "#/components/schemas/HttpClassCallback"
299+ httpResponseObjectCallback:
300+ $ref: "#/components/schemas/HttpObjectCallback"
301+ httpForward:
302+ $ref: "#/components/schemas/HttpForward"
303+ httpForwardTemplate:
304+ $ref: "#/components/schemas/HttpTemplate"
305+ httpForwardClassCallback:
306+ $ref: "#/components/schemas/HttpClassCallback"
307+ httpForwardObjectCallback:
308+ $ref: "#/components/schemas/HttpObjectCallback"
309+ httpOverrideForwardedRequest:
310+ $ref: "#/components/schemas/HttpOverrideForwardedRequest"
311+ httpError:
312+ $ref: "#/components/schemas/HttpError"
313+ times:
314+ $ref: "#/components/schemas/Times"
315+ timeToLive:
316+ $ref: "#/components/schemas/TimeToLive"
317+ oneOf:
318+ - required:
319+ - httpResponse
320+ - required:
321+ - httpResponseTemplate
322+ - required:
323+ - httpResponseClassCallback
324+ - required:
325+ - httpResponseObjectCallback
326+ - required:
327+ - httpForward
328+ - required:
329+ - httpForwardTemplate
330+ - required:
331+ - httpForwardClassCallback
332+ - required:
333+ - httpForwardObjectCallback
334+ - required:
335+ - httpOverrideForwardedRequest
336+ - required:
337+ - httpError
338+ ExpectationId:
339+ description: "pointer to existing expectation"
340+ type: object
341+ additionalProperties: false
342+ properties:
343+ id:
344+ type: string
345+ required:
346+ - id
347+ OpenAPIExpectations:
348+ description: "list of open api expectations"
349+ oneOf:
350+ - $ref: "#/components/schemas/OpenAPIExpectation"
351+ - type: array
352+ additionalProperties: false
353+ items:
354+ $ref: "#/components/schemas/OpenAPIExpectation"
355+ OpenAPIExpectation:
356+ description: "open api or swagger expectation"
357+ type: object
358+ additionalProperties: false
359+ properties:
360+ specUrlOrPayload:
361+ anyOf:
362+ - type: string
363+ - type: object
364+ operationsAndResponses:
365+ type: object
366+ additionalProperties:
367+ type: string
368+ required:
369+ - specUrlOrPayload
370+ RequestDefinition:
371+ description: "request definition"
372+ oneOf:
373+ - $ref: "#/components/schemas/HttpRequest"
374+ - $ref: "#/components/schemas/OpenAPIDefinition"
375+ HttpRequest:
376+ description: "request properties matcher"
377+ type: object
378+ additionalProperties: false
379+ properties:
380+ secure:
381+ type: boolean
382+ keepAlive:
383+ type: boolean
384+ method:
385+ $ref: "#/components/schemas/StringOrJsonSchema"
386+ path:
387+ $ref: "#/components/schemas/StringOrJsonSchema"
388+ pathParameters:
389+ $ref: "#/components/schemas/KeyToMultiValue"
390+ queryStringParameters:
391+ $ref: "#/components/schemas/KeyToMultiValue"
392+ body:
393+ $ref: "#/components/schemas/Body"
394+ headers:
395+ $ref: "#/components/schemas/KeyToMultiValue"
396+ cookies:
397+ $ref: "#/components/schemas/KeyToValue"
398+ socketAddress:
399+ $ref: "#/components/schemas/SocketAddress"
400+ OpenAPIDefinition:
401+ description: "open api or swagger request matcher"
402+ type: object
403+ additionalProperties: false
404+ properties:
405+ specUrlOrPayload:
406+ type: string
407+ operationId:
408+ type: string
409+ HttpResponse:
410+ description: "response to return"
411+ type: object
412+ additionalProperties: false
413+ properties:
414+ delay:
415+ $ref: "#/components/schemas/Delay"
416+ body:
417+ $ref: "#/components/schemas/BodyWithContentType"
418+ cookies:
419+ $ref: "#/components/schemas/KeyToValue"
420+ connectionOptions:
421+ $ref: "#/components/schemas/ConnectionOptions"
422+ headers:
423+ $ref: "#/components/schemas/KeyToMultiValue"
424+ statusCode:
425+ type: integer
426+ reasonPhrase:
427+ type: string
428+ HttpTemplate:
429+ description: "template to generate response / request"
430+ type: object
431+ additionalProperties: false
432+ properties:
433+ delay:
434+ $ref: "#/components/schemas/Delay"
435+ templateType:
436+ enum:
437+ - VELOCITY
438+ - JAVASCRIPT
439+ - MUSTACHE
440+ template:
441+ type: string
442+ HttpForward:
443+ description: "host and port to forward to"
444+ type: object
445+ additionalProperties: false
446+ properties:
447+ delay:
448+ $ref: "#/components/schemas/Delay"
449+ host:
450+ type: string
451+ port:
452+ type: integer
453+ scheme:
454+ enum:
455+ - HTTP
456+ - HTTPS
457+ HttpClassCallback:
458+ description: "class callback"
459+ type: object
460+ additionalProperties: false
461+ properties:
462+ delay:
463+ $ref: "#/components/schemas/Delay"
464+ callbackClass:
465+ type: string
466+ HttpObjectCallback:
467+ description: "object / method callback"
468+ type: object
469+ additionalProperties: false
470+ properties:
471+ delay:
472+ $ref: "#/components/schemas/Delay"
473+ clientId:
474+ type: string
475+ responseCallback:
476+ type: boolean
477+ HttpOverrideForwardedRequest:
478+ description: "override forwarded request"
479+ oneOf:
480+ - type: object
481+ additionalProperties: false
482+ properties:
483+ delay:
484+ "$ref": "#/components/schemas/Delay"
485+ requestOverride:
486+ "$ref": "#/components/schemas/HttpRequest"
487+ requestModifier:
488+ type: object
489+ additionalProperties: false
490+ properties:
491+ path:
492+ type: object
493+ additionalProperties: false
494+ properties:
495+ regex:
496+ type: string
497+ substitution:
498+ type: string
499+ queryStringParameters:
500+ type: object
501+ additionalProperties: false
502+ properties:
503+ add:
504+ "$ref": "#/components/schemas/KeyToMultiValue"
505+ replace:
506+ "$ref": "#/components/schemas/KeyToMultiValue"
507+ remove:
508+ type: array
509+ additionalProperties: false
510+ items:
511+ type: string
512+ headers:
513+ type: object
514+ additionalProperties: false
515+ properties:
516+ add:
517+ "$ref": "#/components/schemas/KeyToMultiValue"
518+ replace:
519+ "$ref": "#/components/schemas/KeyToMultiValue"
520+ remove:
521+ type: array
522+ additionalProperties: false
523+ items:
524+ type: string
525+ cookies:
526+ type: object
527+ additionalProperties: false
528+ properties:
529+ add:
530+ "$ref": "#/components/schemas/KeyToValue"
531+ replace:
532+ "$ref": "#/components/schemas/KeyToValue"
533+ remove:
534+ type: array
535+ additionalProperties: false
536+ items:
537+ type: string
538+ responseOverride:
539+ "$ref": "#/components/schemas/HttpResponse"
540+ responseModifier:
541+ type: object
542+ additionalProperties: false
543+ properties:
544+ headers:
545+ type: object
546+ additionalProperties: false
547+ properties:
548+ add:
549+ "$ref": "#/components/schemas/KeyToMultiValue"
550+ replace:
551+ "$ref": "#/components/schemas/KeyToMultiValue"
552+ remove:
553+ type: array
554+ additionalProperties: false
555+ items:
556+ type: string
557+ cookies:
558+ type: object
559+ additionalProperties: false
560+ properties:
561+ add:
562+ "$ref": "#/components/schemas/KeyToValue"
563+ replace:
564+ "$ref": "#/components/schemas/KeyToValue"
565+ remove:
566+ type: array
567+ additionalProperties: false
568+ items:
569+ type: string
570+ - type: object
571+ additionalProperties: false
572+ properties:
573+ delay:
574+ "$ref": "#/components/schemas/Delay"
575+ httpRequest:
576+ "$ref": "#/components/schemas/HttpRequest"
577+ httpResponse:
578+ "$ref": "#/components/schemas/HttpResponse"
579+ HttpError:
580+ description: "error behaviour"
581+ type: object
582+ additionalProperties: false
583+ properties:
584+ delay:
585+ $ref: "#/components/schemas/Delay"
586+ dropConnection:
587+ type: boolean
588+ responseBytes:
589+ type: string
590+ Times:
591+ description: "number of responses"
592+ type: object
593+ additionalProperties: false
594+ properties:
595+ remainingTimes:
596+ type: integer
597+ unlimited:
598+ type: boolean
599+ TimeToLive:
600+ description: "time expectation is valid for"
601+ type: object
602+ additionalProperties: false
603+ properties:
604+ timeUnit:
605+ enum:
606+ - DAYS
607+ - HOURS
608+ - MINUTES
609+ - SECONDS
610+ - MILLISECONDS
611+ - MICROSECONDS
612+ - NANOSECONDS
613+ timeToLive:
614+ type: integer
615+ unlimited:
616+ type: boolean
617+ KeyToMultiValue:
618+ oneOf:
619+ - type: array
620+ additionalProperties: false
621+ items:
622+ type: object
623+ additionalProperties: false
624+ properties:
625+ name:
626+ type: string
627+ values:
628+ type: array
629+ additionalProperties: false
630+ items:
631+ type: string
632+ - type: object
633+ additionalProperties: true
634+ properties:
635+ keyMatchStyle:
636+ type: string
637+ enum:
638+ - MATCHING_KEY
639+ - SUB_SET
640+ default: SUB_SET
641+ # patternProperties:
642+ # "^(?!keyMatchStyle)\\S+$":
643+ # oneOf:
644+ # - type: array
645+ # additionalProperties: false
646+ # items:
647+ # $ref: "#/components/schemas/StringOrJsonSchema"
648+ # - type: object
649+ # additionalProperties: false
650+ # properties:
651+ # parameterStyle:
652+ # type: string
653+ # enum:
654+ # - SIMPLE
655+ # - SIMPLE_EXPLODED
656+ # - LABEL
657+ # - LABEL_EXPLODED
658+ # - MATRIX
659+ # - MATRIX_EXPLODED
660+ # - FORM_EXPLODED
661+ # - FORM
662+ # - SPACE_DELIMITED_EXPLODED
663+ # - SPACE_DELIMITED
664+ # - PIPE_DELIMITED_EXPLODED
665+ # - PIPE_DELIMITED
666+ # - DEEP_OBJECT
667+ # default: ''
668+ # values:
669+ # type: array
670+ # additionalProperties: false
671+ # items:
672+ # $ref: "#/components/schemas/StringOrJsonSchema"
673+ KeyToValue:
674+ oneOf:
675+ - type: array
676+ additionalProperties: false
677+ items:
678+ type: object
679+ properties:
680+ name:
681+ type: string
682+ value:
683+ type: string
684+ - type: object
685+ additionalProperties: true
686+ # patternProperties:
687+ # "^\\S+$":
688+ # $ref: "#/components/schemas/StringOrJsonSchema"
689+ StringOrJsonSchema:
690+ description: "string value that can be support nottable, optional or a json schema"
691+ oneOf:
692+ - type: string
693+ - type: object
694+ additionalProperties: false
695+ properties:
696+ not:
697+ type: boolean
698+ optional:
699+ type: boolean
700+ value:
701+ type: string
702+ schema:
703+ $ref: http://json-schema.org/draft-04/schema
704+ parameterStyle:
705+ type: string
706+ enum:
707+ - SIMPLE
708+ - SIMPLE_EXPLODED
709+ - LABEL
710+ - LABEL_EXPLODED
711+ - MATRIX
712+ - MATRIX_EXPLODED
713+ - FORM_EXPLODED
714+ - FORM
715+ - SPACE_DELIMITED_EXPLODED
716+ - SPACE_DELIMITED
717+ - PIPE_DELIMITED_EXPLODED
718+ - PIPE_DELIMITED
719+ - DEEP_OBJECT
720+ SocketAddress:
721+ description: "remote address to send request to, only used for request overrides"
722+ type: object
723+ additionalProperties: false
724+ properties:
725+ host:
726+ type: string
727+ port:
728+ type: integer
729+ scheme:
730+ enum:
731+ - HTTP
732+ - HTTPS
733+ Body:
734+ description: "request body matcher"
735+ anyOf:
736+ - type: object
737+ description: "binary body matcher"
738+ additionalProperties: false
739+ properties:
740+ not:
741+ type: boolean
742+ type:
743+ enum:
744+ - BINARY
745+ base64Bytes:
746+ type: string
747+ contentType:
748+ type: string
749+ - type: object
750+ description: "json body matcher"
751+ additionalProperties: false
752+ properties:
753+ not:
754+ type: boolean
755+ type:
756+ enum:
757+ - JSON
758+ json:
759+ type: string
760+ contentType:
761+ type: string
762+ matchType:
763+ enum:
764+ - STRICT
765+ - ONLY_MATCHING_FIELDS
766+ - type: object
767+ description: "json matching fields body matcher"
768+ additionalProperties: true
769+ - type: object
770+ description: "json schema body matcher"
771+ additionalProperties: false
772+ properties:
773+ not:
774+ type: boolean
775+ type:
776+ enum:
777+ - JSON_SCHEMA
778+ jsonSchema:
779+ $ref: http://json-schema.org/draft-04/schema
780+ - type: object
781+ description: "JSON path body matcher"
782+ additionalProperties: false
783+ properties:
784+ not:
785+ type: boolean
786+ type:
787+ enum:
788+ - JSON_PATH
789+ jsonPath:
790+ type: string
791+ - type: object
792+ description: "parameter body matcher"
793+ additionalProperties: false
794+ properties:
795+ not:
796+ type: boolean
797+ type:
798+ enum:
799+ - PARAMETERS
800+ parameters:
801+ $ref: "#/components/schemas/KeyToMultiValue"
802+ - type: object
803+ description: "regex body matcher"
804+ additionalProperties: false
805+ properties:
806+ not:
807+ type: boolean
808+ type:
809+ enum:
810+ - REGEX
811+ regex:
812+ type: string
813+ - type: object
814+ description: "string body matcher"
815+ additionalProperties: false
816+ properties:
817+ not:
818+ type: boolean
819+ type:
820+ enum:
821+ - STRING
822+ string:
823+ type: string
824+ contentType:
825+ type: string
826+ subString:
827+ type: boolean
828+ - type: string
829+ description: "substring body matcher"
830+ - type: object
831+ description: "xml body matcher"
832+ additionalProperties: false
833+ properties:
834+ not:
835+ type: boolean
836+ type:
837+ enum:
838+ - XML
839+ xml:
840+ type: string
841+ contentType:
842+ type: string
843+ - type: object
844+ description: "xml schema body matcher"
845+ additionalProperties: false
846+ properties:
847+ not:
848+ type: boolean
849+ type:
850+ enum:
851+ - XML_SCHEMA
852+ xmlSchema:
853+ type: string
854+ - type: object
855+ description: "xpath body matcher"
856+ additionalProperties: false
857+ properties:
858+ not:
859+ type: boolean
860+ type:
861+ enum:
862+ - XPATH
863+ xpath:
864+ type: string
865+ BodyWithContentType:
866+ description: "response body"
867+ anyOf:
868+ - type: object
869+ description: "binary response body"
870+ additionalProperties: false
871+ properties:
872+ not:
873+ type: boolean
874+ type:
875+ enum:
876+ - BINARY
877+ base64Bytes:
878+ type: string
879+ contentType:
880+ type: string
881+ - type: object
882+ description: "json response body"
883+ additionalProperties: false
884+ properties:
885+ not:
886+ type: boolean
887+ type:
888+ enum:
889+ - JSON
890+ json:
891+ type: string
892+ contentType:
893+ type: string
894+ - type: object
895+ description: "json response body"
896+ additionalProperties: true
897+ - type: object
898+ description: "string response body"
899+ additionalProperties: false
900+ properties:
901+ not:
902+ type: boolean
903+ type:
904+ enum:
905+ - STRING
906+ string:
907+ type: string
908+ contentType:
909+ type: string
910+ - type: string
911+ description: "string response body"
912+ - type: object
913+ description: "xml response body"
914+ additionalProperties: false
915+ properties:
916+ not:
917+ type: boolean
918+ type:
919+ enum:
920+ - XML
921+ xml:
922+ type: string
923+ contentType:
924+ type: string
925+ Delay:
926+ description: "response delay"
927+ type: object
928+ additionalProperties: false
929+ properties:
930+ timeUnit:
931+ type: string
932+ value:
933+ type: integer
934+ ConnectionOptions:
935+ description: "connection options"
936+ type: object
937+ additionalProperties: false
938+ properties:
939+ suppressContentLengthHeader:
940+ type: boolean
941+ contentLengthHeaderOverride:
942+ type: integer
943+ suppressConnectionHeader:
944+ type: boolean
945+ chunkSize:
946+ type: integer
947+ keepAliveOverride:
948+ type: boolean
949+ closeSocket:
950+ type: boolean
951+ closeSocketDelay:
952+ $ref: "#/components/schemas/Delay"
953+ Verification:
954+ description: "verification"
955+ type: object
956+ additionalProperties: false
957+ properties:
958+ expectationId:
959+ $ref: "#/components/schemas/ExpectationId"
960+ httpRequest:
961+ $ref: "#/components/schemas/RequestDefinition"
962+ times:
963+ $ref: "#/components/schemas/VerificationTimes"
964+ maximumNumberOfRequestToReturnInVerificationFailure:
965+ type: integer
966+ oneOf:
967+ - required:
968+ - expectationId
969+ - required:
970+ - httpRequest
971+ VerificationTimes:
972+ description: "number of request to verify"
973+ type: object
974+ additionalProperties: false
975+ properties:
976+ atLeast:
977+ type: integer
978+ atMost:
979+ type: integer
980+ VerificationSequence:
981+ description: "verification sequence"
982+ type: object
983+ additionalProperties: false
984+ properties:
985+ expectationIds:
986+ type: array
987+ additionalProperties: false
988+ items:
989+ $ref: "#/components/schemas/ExpectationId"
990+ httpRequests:
991+ type: array
992+ items:
993+ $ref: "#/components/schemas/RequestDefinition"
994+ maximumNumberOfRequestToReturnInVerificationFailure:
995+ type: integer
996+ oneOf:
997+ - required:
998+ - expectationIds
999+ - required:
1000+ - httpRequests
1001+ Ports:
1002+ description: "list of ports"
1003+ type: object
1004+ additionalProperties: false
1005+ properties:
1006+ ports:
1007+ items:
1008+ type: number
1009+ type: array
1010+ HttpRequestAndHttpResponse:
1011+ description: "request and response"
1012+ type: object
1013+ additionalProperties: false
1014+ properties:
1015+ httpRequest:
1016+ $ref: "#/components/schemas/HttpRequest"
1017+ httpResponse:
1018+ $ref: "#/components/schemas/HttpResponse"
1019+ timestamp:
1020+ type: string
codegen/openapi3-code-generator.jsonnew file+11
@@ -0,0 +1,11 @@
1+{
2+ "url": "https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.git",
3+ "rev": "d3e9c7db4d8b15de9136007a9b9519a7bd8e2199",
4+ "date": "2022-04-19T08:54:57+02:00",
5+ "path": "/nix/store/086zcd4vdxgck2r1prkc8gbr8h572akf-Haskell-OpenAPI-Client-Code-Generator-d3e9c7d",
6+ "sha256": "17db2bypz2p7kil6xpvlh6vgz4bb1drc3ci9p62810xr5bd34a6d",
7+ "fetchLFS": false,
8+ "fetchSubmodules": false,
9+ "deepClone": false,
10+ "leaveDotGit": false
11+}
codegen/regen.shnew file+11
@@ -0,0 +1,11 @@
1+#!/usr/bin/env bash
2+
3+set -e
4+
5+DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
6+
7+nix-shell --run "openapi3-code-generator-exe -o '$DIR/tmp' --package-name mock-server-client --do-not-generate-stack-project --module-name MockServer '$DIR/mock-server-openapi.yaml'"
8+mv "$DIR/tmp/mock-server-client.cabal" "$DIR/../"
9+rm -rf "$DIR/../src"
10+mv "$DIR/tmp/src" "$DIR/../"
11+rm -rf "$DIR/tmp"
codegen/shell.nixnew file+10
@@ -0,0 +1,10 @@
1+{ pkgs ? import <nixpkgs> {} }:
2+
3+let
4+ source = pkgs.fetchgit {
5+ inherit (pkgs.lib.importJSON ./openapi3-code-generator.json) url rev sha256 ;
6+ } ;
7+ openapi3-code-generator = import (source + "/default.nix") ;
8+in pkgs.mkShell {
9+ packages = [openapi3-code-generator] ;
10+}
mock-server-client.cabalnew file+85
@@ -0,0 +1,85 @@
1+cabal-version: 1.12
2+
3+name: mock-server-client
4+version: 0.1.0.0
5+build-type: Simple
6+
7+library
8+ exposed-modules:
9+ MockServer
10+ MockServer.Operations.Put_mockserver_bind
11+ MockServer.Operations.Put_mockserver_clear
12+ MockServer.Operations.Put_mockserver_expectation
13+ MockServer.Operations.Put_mockserver_openapi
14+ MockServer.Operations.Put_mockserver_reset
15+ MockServer.Operations.Put_mockserver_retrieve
16+ MockServer.Operations.Put_mockserver_status
17+ MockServer.Operations.Put_mockserver_stop
18+ MockServer.Operations.Put_mockserver_verify
19+ MockServer.Operations.Put_mockserver_verifySequence
20+ MockServer.Types
21+ MockServer.TypeAlias
22+ MockServer.Types.BinaryBodyMatcher
23+ MockServer.Types.BinaryBodyResponse
24+ MockServer.Types.Body
25+ MockServer.Types.BodyWithContentType
26+ MockServer.Types.ConnectionOptions
27+ MockServer.Types.Delay
28+ MockServer.Types.Expectation
29+ MockServer.Types.ExpectationId
30+ MockServer.Types.Expectations
31+ MockServer.Types.HttpClassCallback
32+ MockServer.Types.HttpError
33+ MockServer.Types.HttpForward
34+ MockServer.Types.HttpObjectCallback
35+ MockServer.Types.HttpOverrideForwardedRequest
36+ MockServer.Types.HttpRequest
37+ MockServer.Types.HttpResponse
38+ MockServer.Types.HttpTemplate
39+ MockServer.Types.JsonBodyMatcher
40+ MockServer.Types.JsonPathBodyMatcher
41+ MockServer.Types.JsonResponseBody
42+ MockServer.Types.JsonSchemaBodyMatcher
43+ MockServer.Types.KeyToMultiValue
44+ MockServer.Types.KeyToValue
45+ MockServer.Types.OpenAPIDefinition
46+ MockServer.Types.OpenAPIExpectation
47+ MockServer.Types.OpenAPIExpectations
48+ MockServer.Types.ParameterBodyMatcher
49+ MockServer.Types.Ports
50+ MockServer.Types.RegexBodyMatcher
51+ MockServer.Types.RequestDefinition
52+ MockServer.Types.SocketAddress
53+ MockServer.Types.StringBodyMatcher
54+ MockServer.Types.StringOrJsonSchema
55+ MockServer.Types.StringResponseBody
56+ MockServer.Types.TimeToLive
57+ MockServer.Types.Times
58+ MockServer.Types.Verification
59+ MockServer.Types.VerificationSequence
60+ MockServer.Types.VerificationTimes
61+ MockServer.Types.XmlBodyMatcher
62+ MockServer.Types.XmlResponseBody
63+ MockServer.Types.XmlSchemaBodyMatcher
64+ MockServer.Types.XpathBodyMatcher
65+ MockServer.Configuration
66+ MockServer.SecuritySchemes
67+ MockServer.Common
68+ hs-source-dirs:
69+ src
70+ build-depends:
71+ base >=4.7 && <5
72+ , text
73+ , ghc-prim
74+ , http-conduit
75+ , http-client
76+ , http-types
77+ , bytestring
78+ , aeson
79+ , unordered-containers
80+ , vector
81+ , scientific
82+ , time
83+ , mtl
84+ , transformers
85+ default-language: Haskell2010
src/MockServer.hsnew file+122
@@ -0,0 +1,122 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+-- | The main module which exports all functionality.
4+module MockServer (
5+ module MockServer.Operations.Put_mockserver_bind,
6+ module MockServer.Operations.Put_mockserver_clear,
7+ module MockServer.Operations.Put_mockserver_expectation,
8+ module MockServer.Operations.Put_mockserver_openapi,
9+ module MockServer.Operations.Put_mockserver_reset,
10+ module MockServer.Operations.Put_mockserver_retrieve,
11+ module MockServer.Operations.Put_mockserver_status,
12+ module MockServer.Operations.Put_mockserver_stop,
13+ module MockServer.Operations.Put_mockserver_verify,
14+ module MockServer.Operations.Put_mockserver_verifySequence,
15+ module MockServer.Types,
16+ module MockServer.TypeAlias,
17+ module MockServer.Types.BinaryBodyMatcher,
18+ module MockServer.Types.BinaryBodyResponse,
19+ module MockServer.Types.Body,
20+ module MockServer.Types.BodyWithContentType,
21+ module MockServer.Types.ConnectionOptions,
22+ module MockServer.Types.Delay,
23+ module MockServer.Types.Expectation,
24+ module MockServer.Types.ExpectationId,
25+ module MockServer.Types.Expectations,
26+ module MockServer.Types.HttpClassCallback,
27+ module MockServer.Types.HttpError,
28+ module MockServer.Types.HttpForward,
29+ module MockServer.Types.HttpObjectCallback,
30+ module MockServer.Types.HttpOverrideForwardedRequest,
31+ module MockServer.Types.HttpRequest,
32+ module MockServer.Types.HttpResponse,
33+ module MockServer.Types.HttpTemplate,
34+ module MockServer.Types.JsonBodyMatcher,
35+ module MockServer.Types.JsonPathBodyMatcher,
36+ module MockServer.Types.JsonResponseBody,
37+ module MockServer.Types.JsonSchemaBodyMatcher,
38+ module MockServer.Types.KeyToMultiValue,
39+ module MockServer.Types.KeyToValue,
40+ module MockServer.Types.OpenAPIDefinition,
41+ module MockServer.Types.OpenAPIExpectation,
42+ module MockServer.Types.OpenAPIExpectations,
43+ module MockServer.Types.ParameterBodyMatcher,
44+ module MockServer.Types.Ports,
45+ module MockServer.Types.RegexBodyMatcher,
46+ module MockServer.Types.RequestDefinition,
47+ module MockServer.Types.SocketAddress,
48+ module MockServer.Types.StringBodyMatcher,
49+ module MockServer.Types.StringOrJsonSchema,
50+ module MockServer.Types.StringResponseBody,
51+ module MockServer.Types.TimeToLive,
52+ module MockServer.Types.Times,
53+ module MockServer.Types.Verification,
54+ module MockServer.Types.VerificationSequence,
55+ module MockServer.Types.VerificationTimes,
56+ module MockServer.Types.XmlBodyMatcher,
57+ module MockServer.Types.XmlResponseBody,
58+ module MockServer.Types.XmlSchemaBodyMatcher,
59+ module MockServer.Types.XpathBodyMatcher,
60+ module MockServer.Configuration,
61+ module MockServer.SecuritySchemes,
62+ module MockServer.Common,
63+ ) where
64+
65+import MockServer.Operations.Put_mockserver_bind
66+import MockServer.Operations.Put_mockserver_clear
67+import MockServer.Operations.Put_mockserver_expectation
68+import MockServer.Operations.Put_mockserver_openapi
69+import MockServer.Operations.Put_mockserver_reset
70+import MockServer.Operations.Put_mockserver_retrieve
71+import MockServer.Operations.Put_mockserver_status
72+import MockServer.Operations.Put_mockserver_stop
73+import MockServer.Operations.Put_mockserver_verify
74+import MockServer.Operations.Put_mockserver_verifySequence
75+import MockServer.Types
76+import MockServer.TypeAlias
77+import MockServer.Types.BinaryBodyMatcher
78+import MockServer.Types.BinaryBodyResponse
79+import MockServer.Types.Body
80+import MockServer.Types.BodyWithContentType
81+import MockServer.Types.ConnectionOptions
82+import MockServer.Types.Delay
83+import MockServer.Types.Expectation
84+import MockServer.Types.ExpectationId
85+import MockServer.Types.Expectations
86+import MockServer.Types.HttpClassCallback
87+import MockServer.Types.HttpError
88+import MockServer.Types.HttpForward
89+import MockServer.Types.HttpObjectCallback
90+import MockServer.Types.HttpOverrideForwardedRequest
91+import MockServer.Types.HttpRequest
92+import MockServer.Types.HttpResponse
93+import MockServer.Types.HttpTemplate
94+import MockServer.Types.JsonBodyMatcher
95+import MockServer.Types.JsonPathBodyMatcher
96+import MockServer.Types.JsonResponseBody
97+import MockServer.Types.JsonSchemaBodyMatcher
98+import MockServer.Types.KeyToMultiValue
99+import MockServer.Types.KeyToValue
100+import MockServer.Types.OpenAPIDefinition
101+import MockServer.Types.OpenAPIExpectation
102+import MockServer.Types.OpenAPIExpectations
103+import MockServer.Types.ParameterBodyMatcher
104+import MockServer.Types.Ports
105+import MockServer.Types.RegexBodyMatcher
106+import MockServer.Types.RequestDefinition
107+import MockServer.Types.SocketAddress
108+import MockServer.Types.StringBodyMatcher
109+import MockServer.Types.StringOrJsonSchema
110+import MockServer.Types.StringResponseBody
111+import MockServer.Types.TimeToLive
112+import MockServer.Types.Times
113+import MockServer.Types.Verification
114+import MockServer.Types.VerificationSequence
115+import MockServer.Types.VerificationTimes
116+import MockServer.Types.XmlBodyMatcher
117+import MockServer.Types.XmlResponseBody
118+import MockServer.Types.XmlSchemaBodyMatcher
119+import MockServer.Types.XpathBodyMatcher
120+import MockServer.Configuration
121+import MockServer.SecuritySchemes
122+import MockServer.Common
src/MockServer/Common.hsnew file+393
@@ -0,0 +1,393 @@
1+{-# LANGUAGE FlexibleInstances #-}
2+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
3+{-# LANGUAGE LambdaCase #-}
4+{-# LANGUAGE OverloadedStrings #-}
5+{-# LANGUAGE RecordWildCards #-}
6+{-# LANGUAGE TupleSections #-}
7+{-# LANGUAGE UndecidableInstances #-}
8+
9+-- | This module serves the purpose of defining common functionality which remains the same across all OpenAPI specifications.
10+module MockServer.Common
11+ ( doCallWithConfiguration,
12+ doCallWithConfigurationM,
13+ doBodyCallWithConfiguration,
14+ doBodyCallWithConfigurationM,
15+ runWithConfiguration,
16+ textToByte,
17+ stringifyModel,
18+ anonymousSecurityScheme,
19+ Configuration (..),
20+ SecurityScheme,
21+ MonadHTTP (..),
22+ StringifyModel,
23+ JsonByteString (..),
24+ JsonDateTime (..),
25+ RequestBodyEncoding (..),
26+ QueryParameter (..),
27+ Nullable (..),
28+ ClientT (..),
29+ ClientM,
30+ )
31+where
32+
33+import qualified Control.Monad.IO.Class as MIO
34+import qualified Control.Monad.Reader as MR
35+import qualified Control.Monad.Trans.Class as MT
36+import qualified Data.Aeson as Aeson
37+import qualified Data.Aeson.Encoding as Encoding
38+import qualified Data.Bifunctor as BF
39+import qualified Data.ByteString.Char8 as B8
40+import qualified Data.ByteString.Lazy.Char8 as LB8
41+import qualified Data.HashMap.Strict as HMap
42+import qualified Data.Maybe as Maybe
43+import qualified Data.Scientific as Scientific
44+import Data.Text (Text)
45+import qualified Data.Text as T
46+import qualified Data.Text.Encoding as TE
47+import qualified Data.Time.LocalTime as Time
48+import qualified Data.Vector as Vector
49+import qualified Network.HTTP.Client as HC
50+import qualified Network.HTTP.Simple as HS
51+import qualified Network.HTTP.Types as HT
52+
53+-- | Abstracts the usage of 'Network.HTTP.Simple.httpBS' away,
54+-- so that it can be used for testing
55+class Monad m => MonadHTTP m where
56+ httpBS :: HS.Request -> m (HS.Response B8.ByteString)
57+
58+-- | This instance is the default instance used for production code
59+instance MonadHTTP IO where
60+ httpBS = HS.httpBS
61+
62+instance MonadHTTP m => MonadHTTP (MR.ReaderT r m) where
63+ httpBS = MT.lift . httpBS
64+
65+instance MonadHTTP m => MonadHTTP (ClientT m) where
66+ httpBS = MT.lift . httpBS
67+
68+-- | The monad in which the operations can be run.
69+-- Contains the 'Configuration' to run the requests with.
70+--
71+-- Run it with 'runWithConfiguration'
72+newtype ClientT m a = ClientT (MR.ReaderT Configuration m a)
73+ deriving (Functor, Applicative, Monad, MR.MonadReader Configuration)
74+
75+instance MT.MonadTrans ClientT where
76+ lift = ClientT . MT.lift
77+
78+instance MIO.MonadIO m => MIO.MonadIO (ClientT m) where
79+ liftIO = ClientT . MIO.liftIO
80+
81+-- | Utility type which uses 'IO' as underlying monad
82+type ClientM a = ClientT IO a
83+
84+-- | Run a 'ClientT' monad transformer in another monad with a specified configuration
85+runWithConfiguration :: Configuration -> ClientT m a -> m a
86+runWithConfiguration c (ClientT r) = MR.runReaderT r c
87+
88+-- | An operation can and must be configured with data, which may be common
89+-- for many operations.
90+--
91+-- This configuration consists of information about the server URL and the used security scheme.
92+--
93+-- In OpenAPI these information can be defined
94+--
95+-- * Root level
96+-- * Path level
97+-- * Operation level
98+--
99+-- To get started, the 'MockServer.Configuration.defaultConfiguration' can be used and changed accordingly.
100+--
101+-- Note that it is possible that @bearerAuthenticationSecurityScheme@ is not available because it is not a security scheme in the OpenAPI specification.
102+--
103+-- > defaultConfiguration
104+-- > { configSecurityScheme = bearerAuthenticationSecurityScheme "token" }
105+data Configuration = Configuration
106+ { -- | The path of the operation is appended to this URL
107+ configBaseURL :: Text,
108+ -- | The 'SecurityScheme' which is applied to the request
109+ -- This is used to set the @Authentication@ header for example
110+ configSecurityScheme :: SecurityScheme,
111+ -- | This flag indicates if an automatically generated @User-Agent@ header
112+ -- should be added to the request. This allows the server to detect with
113+ -- which version of the generator the code was generated.
114+ configIncludeUserAgent :: Bool,
115+ -- | The application name which will be included in the @User-Agent@ header
116+ -- if 'configIncludeUserAgent' is set to 'True'
117+ configApplicationName :: Text
118+ }
119+
120+-- | Defines how a request body is encoded
121+data RequestBodyEncoding
122+ = -- | Encode the body as JSON
123+ RequestBodyEncodingJSON
124+ | -- | Encode the body as form data
125+ RequestBodyEncodingFormData
126+
127+-- | Defines a query parameter with the information necessary for serialization
128+data QueryParameter = QueryParameter
129+ { queryParamName :: Text,
130+ queryParamValue :: Maybe Aeson.Value,
131+ queryParamStyle :: Text,
132+ queryParamExplode :: Bool
133+ }
134+ deriving (Show, Eq)
135+
136+-- | This type specifies a security scheme which can modify a request according to the scheme (e. g. add an Authorization header)
137+type SecurityScheme = HS.Request -> HS.Request
138+
139+-- | Anonymous security scheme which does not alter the request in any way
140+anonymousSecurityScheme :: SecurityScheme
141+anonymousSecurityScheme = id
142+
143+-- | This is the main functionality of this module
144+--
145+-- It makes a concrete Call to a Server without a body
146+doCallWithConfiguration ::
147+ MonadHTTP m =>
148+ -- | Configuration options like base URL and security scheme
149+ Configuration ->
150+ -- | HTTP method (GET, POST, etc.)
151+ Text ->
152+ -- | Path to append to the base URL (path parameters should already be replaced)
153+ Text ->
154+ -- | Query parameters
155+ [QueryParameter] ->
156+ -- | The raw response from the server
157+ m (HS.Response B8.ByteString)
158+doCallWithConfiguration config method path queryParams =
159+ httpBS $ createBaseRequest config method path queryParams
160+
161+-- | Same as 'doCallWithConfiguration' but run in a 'MR.ReaderT' environment which contains the configuration.
162+-- This is useful if multiple calls have to be executed with the same configuration.
163+doCallWithConfigurationM ::
164+ MonadHTTP m =>
165+ Text ->
166+ Text ->
167+ [QueryParameter] ->
168+ ClientT m (HS.Response B8.ByteString)
169+doCallWithConfigurationM method path queryParams = do
170+ config <- MR.ask
171+ MT.lift $ doCallWithConfiguration config method path queryParams
172+
173+-- | This is the main functionality of this module
174+--
175+-- It makes a concrete Call to a Server with a body
176+doBodyCallWithConfiguration ::
177+ (MonadHTTP m, Aeson.ToJSON body) =>
178+ -- | Configuration options like base URL and security scheme
179+ Configuration ->
180+ -- | HTTP method (GET, POST, etc.)
181+ Text ->
182+ -- | Path to append to the base URL (path parameters should already be replaced)
183+ Text ->
184+ -- | Query parameters
185+ [QueryParameter] ->
186+ -- | Request body
187+ Maybe body ->
188+ -- | JSON or form data deepobjects
189+ RequestBodyEncoding ->
190+ -- | The raw response from the server
191+ m (HS.Response B8.ByteString)
192+doBodyCallWithConfiguration config method path queryParams Nothing _ = doCallWithConfiguration config method path queryParams
193+doBodyCallWithConfiguration config method path queryParams (Just body) RequestBodyEncodingJSON =
194+ httpBS $ HS.setRequestMethod (textToByte method) $ HS.setRequestBodyJSON body baseRequest
195+ where
196+ baseRequest = createBaseRequest config method path queryParams
197+doBodyCallWithConfiguration config method path queryParams (Just body) RequestBodyEncodingFormData =
198+ httpBS $ HS.setRequestMethod (textToByte method) $ HS.setRequestBodyURLEncoded byteStringData baseRequest
199+ where
200+ baseRequest = createBaseRequest config method path queryParams
201+ byteStringData = createFormData body
202+
203+-- | Same as 'doBodyCallWithConfiguration' but run in a 'MR.ReaderT' environment which contains the configuration.
204+-- This is useful if multiple calls have to be executed with the same configuration.
205+doBodyCallWithConfigurationM ::
206+ (MonadHTTP m, Aeson.ToJSON body) =>
207+ Text ->
208+ Text ->
209+ [QueryParameter] ->
210+ Maybe body ->
211+ RequestBodyEncoding ->
212+ ClientT m (HS.Response B8.ByteString)
213+doBodyCallWithConfigurationM method path queryParams body encoding = do
214+ config <- MR.ask
215+ MT.lift $ doBodyCallWithConfiguration config method path queryParams body encoding
216+
217+-- | Creates a Base Request
218+createBaseRequest ::
219+ -- | Configuration options like base URL and security scheme
220+ Configuration ->
221+ -- | HTTP method (GET, POST, etc.)
222+ Text ->
223+ -- | The path for which the placeholders have already been replaced
224+ Text ->
225+ -- | Query Parameters
226+ [QueryParameter] ->
227+ -- | The Response from the server
228+ HS.Request
229+createBaseRequest config method path queryParams =
230+ configSecurityScheme config $
231+ addUserAgent $
232+ HS.setRequestMethod (textToByte method) $
233+ HS.setRequestQueryString query $
234+ HS.setRequestPath
235+ (B8.pack (T.unpack $ byteToText basePathModifier <> path))
236+ baseRequest
237+ where
238+ baseRequest = parseURL $ configBaseURL config
239+ basePath = HC.path baseRequest
240+ basePathModifier =
241+ if basePath == B8.pack "/" && T.isPrefixOf "/" path
242+ then ""
243+ else basePath
244+ -- filters all maybe
245+ query = BF.second pure <$> serializeQueryParams queryParams
246+ userAgent = configApplicationName config <> " openapi3-code-generator/0.1.0.7 (https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator)"
247+ addUserAgent =
248+ if configIncludeUserAgent config
249+ then HS.addRequestHeader HT.hUserAgent $ textToByte userAgent
250+ else id
251+
252+serializeQueryParams :: [QueryParameter] -> [(B8.ByteString, B8.ByteString)]
253+serializeQueryParams = (>>= serializeQueryParam)
254+
255+serializeQueryParam :: QueryParameter -> [(B8.ByteString, B8.ByteString)]
256+serializeQueryParam QueryParameter {..} =
257+ let concatValues :: B8.ByteString -> [(Maybe Text, B8.ByteString)] -> [(Text, B8.ByteString)]
258+ concatValues joinWith =
259+ if queryParamExplode
260+ then fmap (BF.first $ Maybe.fromMaybe queryParamName)
261+ else
262+ pure . (queryParamName,) . B8.intercalate joinWith
263+ . fmap
264+ ( \case
265+ (Nothing, value) -> value
266+ (Just name, value) -> textToByte name <> joinWith <> value
267+ )
268+ in BF.first textToByte <$> case queryParamValue of
269+ Nothing -> []
270+ Just value ->
271+ ( case queryParamStyle of
272+ "form" -> concatValues ","
273+ "spaceDelimited" -> concatValues " "
274+ "pipeDelimited" -> concatValues "|"
275+ "deepObject" -> const $ BF.second textToByte <$> jsonToFormDataPrefixed queryParamName value
276+ _ -> const []
277+ )
278+ $ jsonToFormDataFlat Nothing value
279+
280+encodeStrict :: Aeson.ToJSON a => a -> B8.ByteString
281+encodeStrict = LB8.toStrict . Aeson.encode
282+
283+jsonToFormDataFlat :: Maybe Text -> Aeson.Value -> [(Maybe Text, B8.ByteString)]
284+jsonToFormDataFlat _ Aeson.Null = []
285+jsonToFormDataFlat name (Aeson.Number a) = [(name, encodeStrict a)]
286+jsonToFormDataFlat name (Aeson.String a) = [(name, textToByte a)]
287+jsonToFormDataFlat name (Aeson.Bool a) = [(name, encodeStrict a)]
288+jsonToFormDataFlat _ (Aeson.Object object) = HMap.toList object >>= uncurry jsonToFormDataFlat . BF.first Just
289+jsonToFormDataFlat name (Aeson.Array vector) = Vector.toList vector >>= jsonToFormDataFlat name
290+
291+-- | creates form data bytestring array
292+createFormData :: (Aeson.ToJSON a) => a -> [(B8.ByteString, B8.ByteString)]
293+createFormData body =
294+ let formData = jsonToFormData $ Aeson.toJSON body
295+ in fmap (BF.bimap textToByte textToByte) formData
296+
297+-- | Convert a 'B8.ByteString' to 'Text'
298+byteToText :: B8.ByteString -> Text
299+byteToText = TE.decodeUtf8
300+
301+-- | Convert 'Text' a to 'B8.ByteString'
302+textToByte :: Text -> B8.ByteString
303+textToByte = TE.encodeUtf8
304+
305+parseURL :: Text -> HS.Request
306+parseURL url =
307+ Maybe.fromMaybe HS.defaultRequest $
308+ HS.parseRequest $
309+ T.unpack url
310+
311+jsonToFormData :: Aeson.Value -> [(Text, Text)]
312+jsonToFormData = jsonToFormDataPrefixed ""
313+
314+jsonToFormDataPrefixed :: Text -> Aeson.Value -> [(Text, Text)]
315+jsonToFormDataPrefixed prefix (Aeson.Number a) = case Scientific.toBoundedInteger a :: Maybe Int of
316+ Just myInt -> [(prefix, T.pack $ show myInt)]
317+ Nothing -> [(prefix, T.pack $ show a)]
318+jsonToFormDataPrefixed prefix (Aeson.Bool True) = [(prefix, "true")]
319+jsonToFormDataPrefixed prefix (Aeson.Bool False) = [(prefix, "false")]
320+jsonToFormDataPrefixed _ Aeson.Null = []
321+jsonToFormDataPrefixed prefix (Aeson.String a) = [(prefix, a)]
322+jsonToFormDataPrefixed "" (Aeson.Object object) =
323+ HMap.toList object >>= uncurry jsonToFormDataPrefixed
324+jsonToFormDataPrefixed prefix (Aeson.Object object) =
325+ HMap.toList object >>= (\(x, y) -> jsonToFormDataPrefixed (prefix <> "[" <> x <> "]") y)
326+jsonToFormDataPrefixed prefix (Aeson.Array vector) =
327+ Vector.toList vector >>= jsonToFormDataPrefixed (prefix <> "[]")
328+
329+-- | This type class makes the code generation for URL parameters easier as it allows to stringify a value
330+--
331+-- The 'Show' class is not sufficient as strings should not be stringified with quotes.
332+class Show a => StringifyModel a where
333+ -- | Stringifies a showable value
334+ --
335+ -- >>> stringifyModel "Test"
336+ -- "Test"
337+ --
338+ -- >>> stringifyModel 123
339+ -- "123"
340+ stringifyModel :: a -> String
341+
342+instance StringifyModel String where
343+ -- stringifyModel :: String -> String
344+ stringifyModel = id
345+
346+instance StringifyModel Text where
347+ -- stringifyModel :: Text -> String
348+ stringifyModel = T.unpack
349+
350+instance {-# OVERLAPS #-} Show a => StringifyModel a where
351+ -- stringifyModel :: Show a => a -> String
352+ stringifyModel = show
353+
354+-- | Wraps a 'B8.ByteString' to implement 'Aeson.ToJSON' and 'Aeson.FromJSON'
355+newtype JsonByteString = JsonByteString B8.ByteString
356+ deriving (Show, Eq, Ord)
357+
358+instance Aeson.ToJSON JsonByteString where
359+ toJSON (JsonByteString s) = Aeson.toJSON $ B8.unpack s
360+
361+instance Aeson.FromJSON JsonByteString where
362+ parseJSON (Aeson.String s) = pure $ JsonByteString $ textToByte s
363+ parseJSON _ = fail "Value cannot be converted to a 'JsonByteString'"
364+
365+-- | Wraps a 'Time.ZonedTime' to implement 'Aeson.ToJSON' and 'Aeson.FromJSON'
366+newtype JsonDateTime = JsonDateTime Time.ZonedTime
367+ deriving (Show)
368+
369+instance Eq JsonDateTime where
370+ (JsonDateTime d1) == (JsonDateTime d2) = Time.zonedTimeToUTC d1 == Time.zonedTimeToUTC d2
371+
372+instance Ord JsonDateTime where
373+ (JsonDateTime d1) <= (JsonDateTime d2) = Time.zonedTimeToUTC d1 <= Time.zonedTimeToUTC d2
374+
375+instance Aeson.ToJSON JsonDateTime where
376+ toJSON (JsonDateTime d) = Aeson.toJSON d
377+
378+instance Aeson.FromJSON JsonDateTime where
379+ parseJSON o = JsonDateTime <$> Aeson.parseJSON o
380+
381+data Nullable a = NonNull a | Null
382+ deriving (Show, Eq)
383+
384+instance Aeson.ToJSON a => Aeson.ToJSON (Nullable a) where
385+ toJSON Null = Aeson.Null
386+ toJSON (NonNull x) = Aeson.toJSON x
387+
388+ toEncoding Null = Encoding.null_
389+ toEncoding (NonNull x) = Aeson.toEncoding x
390+
391+instance Aeson.FromJSON a => Aeson.FromJSON (Nullable a) where
392+ parseJSON Aeson.Null = pure Null
393+ parseJSON x = NonNull <$> Aeson.parseJSON x
src/MockServer/Configuration.hsnew file+21
@@ -0,0 +1,21 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+
5+-- | Contains the default configuration
6+module MockServer.Configuration where
7+
8+import qualified Data.Text
9+import qualified GHC.Types
10+import qualified MockServer.Common
11+
12+-- | The default url specified by the OpenAPI specification
13+--
14+-- @http://localhost:1080/@
15+defaultURL = Data.Text.pack "http://localhost:1080/"
16+-- | The default application name used in the @User-Agent@ header which is based on the @info.title@ field of the specification
17+--
18+-- @MockServer API@
19+defaultApplicationName = Data.Text.pack "MockServer API"
20+-- | The default configuration containing the 'defaultURL' and no authorization
21+defaultConfiguration = MockServer.Common.Configuration defaultURL MockServer.Common.anonymousSecurityScheme GHC.Types.True defaultApplicationName
src/MockServer/Operations/Put_mockserver_bind.hsnew file+91
@@ -0,0 +1,91 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_bind
8+module MockServer.Operations.Put_mockserver_bind where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/bind
48+--
49+-- only supported on Netty version
50+put_mockserver_bind :: forall m . MockServer.Common.MonadHTTP m => Ports -- ^ The request body to send
51+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_bindResponse) -- ^ Monadic computation which returns the result of the operation
52+put_mockserver_bind body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_bindResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_bindResponse200 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
53+ Ports)
54+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_bindResponse400
55+ | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_bindResponse406
56+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/bind") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
57+-- | Represents a response of the operation 'put_mockserver_bind'.
58+--
59+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_bindResponseError' is used.
60+data Put_mockserver_bindResponse =
61+ Put_mockserver_bindResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
62+ | Put_mockserver_bindResponse200 Ports -- ^ listening on additional requested ports, note: the response ony contains ports added for the request, to list all ports use \/status
63+ | Put_mockserver_bindResponse400 -- ^ incorrect request format
64+ | Put_mockserver_bindResponse406 -- ^ unable to bind to ports (i.e. already bound or JVM process doesn\'t have permission)
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+-- | > PUT /mockserver/bind
67+--
68+-- The same as 'put_mockserver_bind' but accepts an explicit configuration.
69+put_mockserver_bindWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
70+ -> Ports -- ^ The request body to send
71+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_bindResponse) -- ^ Monadic computation which returns the result of the operation
72+put_mockserver_bindWithConfiguration config
73+ body = GHC.Base.fmap (\response_4 -> GHC.Base.fmap (Data.Either.either Put_mockserver_bindResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_bindResponse200 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
74+ Ports)
75+ | (\status_6 -> Network.HTTP.Types.Status.statusCode status_6 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_bindResponse400
76+ | (\status_7 -> Network.HTTP.Types.Status.statusCode status_7 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_bindResponse406
77+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_4) response_4) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/bind") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
78+-- | > PUT /mockserver/bind
79+--
80+-- The same as 'put_mockserver_bind' but returns the raw 'Data.ByteString.Char8.ByteString'.
81+put_mockserver_bindRaw :: forall m . MockServer.Common.MonadHTTP m => Ports -- ^ The request body to send
82+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
83+put_mockserver_bindRaw body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/bind") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
84+-- | > PUT /mockserver/bind
85+--
86+-- The same as 'put_mockserver_bind' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
87+put_mockserver_bindWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
88+ -> Ports -- ^ The request body to send
89+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
90+put_mockserver_bindWithConfigurationRaw config
91+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/bind") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/Operations/Put_mockserver_clear.hsnew file+100
@@ -0,0 +1,100 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_clear
8+module MockServer.Operations.Put_mockserver_clear where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/clear
48+--
49+-- clears expectations and recorded requests that match the request matcher
50+put_mockserver_clear :: forall m . MockServer.Common.MonadHTTP m => GHC.Maybe.Maybe Put_mockserver_clearRequestBodyVariants -- ^ The request body to send
51+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_clearResponse) -- ^ Monadic computation which returns the result of the operation
52+put_mockserver_clear body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_clearResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_clearResponse200
53+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_clearResponse400
54+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/clear") GHC.Base.mempty body MockServer.Common.RequestBodyEncodingJSON)
55+-- | Defines the oneOf schema located at @paths.\/mockserver\/clear.PUT.requestBody.content.application\/json.schema.oneOf@ in the specification.
56+--
57+--
58+data Put_mockserver_clearRequestBodyVariants =
59+ Put_mockserver_clearRequestBodyRequestDefinition RequestDefinition
60+ | Put_mockserver_clearRequestBodyExpectationId ExpectationId
61+ deriving (GHC.Show.Show, GHC.Classes.Eq)
62+instance Data.Aeson.Types.ToJSON.ToJSON Put_mockserver_clearRequestBodyVariants
63+ where toJSON (Put_mockserver_clearRequestBodyRequestDefinition a) = Data.Aeson.Types.ToJSON.toJSON a
64+ toJSON (Put_mockserver_clearRequestBodyExpectationId a) = Data.Aeson.Types.ToJSON.toJSON a
65+instance Data.Aeson.Types.FromJSON.FromJSON Put_mockserver_clearRequestBodyVariants
66+ where parseJSON val = case (Put_mockserver_clearRequestBodyRequestDefinition Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((Put_mockserver_clearRequestBodyExpectationId Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
67+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
68+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
69+-- | Represents a response of the operation 'put_mockserver_clear'.
70+--
71+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_clearResponseError' is used.
72+data Put_mockserver_clearResponse =
73+ Put_mockserver_clearResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
74+ | Put_mockserver_clearResponse200 -- ^ expectations and recorded requests cleared
75+ | Put_mockserver_clearResponse400 -- ^ incorrect request format
76+ deriving (GHC.Show.Show, GHC.Classes.Eq)
77+-- | > PUT /mockserver/clear
78+--
79+-- The same as 'put_mockserver_clear' but accepts an explicit configuration.
80+put_mockserver_clearWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
81+ -> GHC.Maybe.Maybe Put_mockserver_clearRequestBodyVariants -- ^ The request body to send
82+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_clearResponse) -- ^ Monadic computation which returns the result of the operation
83+put_mockserver_clearWithConfiguration config
84+ body = GHC.Base.fmap (\response_3 -> GHC.Base.fmap (Data.Either.either Put_mockserver_clearResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_4 -> Network.HTTP.Types.Status.statusCode status_4 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_clearResponse200
85+ | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_clearResponse400
86+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_3) response_3) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/clear") GHC.Base.mempty body MockServer.Common.RequestBodyEncodingJSON)
87+-- | > PUT /mockserver/clear
88+--
89+-- The same as 'put_mockserver_clear' but returns the raw 'Data.ByteString.Char8.ByteString'.
90+put_mockserver_clearRaw :: forall m . MockServer.Common.MonadHTTP m => GHC.Maybe.Maybe Put_mockserver_clearRequestBodyVariants -- ^ The request body to send
91+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
92+put_mockserver_clearRaw body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/clear") GHC.Base.mempty body MockServer.Common.RequestBodyEncodingJSON)
93+-- | > PUT /mockserver/clear
94+--
95+-- The same as 'put_mockserver_clear' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
96+put_mockserver_clearWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
97+ -> GHC.Maybe.Maybe Put_mockserver_clearRequestBodyVariants -- ^ The request body to send
98+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
99+put_mockserver_clearWithConfigurationRaw config
100+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/clear") GHC.Base.mempty body MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/Operations/Put_mockserver_expectation.hsnew file+91
@@ -0,0 +1,91 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_expectation
8+module MockServer.Operations.Put_mockserver_expectation where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/expectation
48+--
49+-- create expectation
50+put_mockserver_expectation :: forall m . MockServer.Common.MonadHTTP m => Expectations -- ^ The request body to send
51+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_expectationResponse) -- ^ Monadic computation which returns the result of the operation
52+put_mockserver_expectation body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_expectationResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 201) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_expectationResponse201 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
53+ ([Expectation]))
54+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_expectationResponse400
55+ | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_expectationResponse406
56+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/expectation") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
57+-- | Represents a response of the operation 'put_mockserver_expectation'.
58+--
59+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_expectationResponseError' is used.
60+data Put_mockserver_expectationResponse =
61+ Put_mockserver_expectationResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
62+ | Put_mockserver_expectationResponse201 ([Expectation]) -- ^ expectations created
63+ | Put_mockserver_expectationResponse400 -- ^ incorrect request format
64+ | Put_mockserver_expectationResponse406 -- ^ invalid expectation
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+-- | > PUT /mockserver/expectation
67+--
68+-- The same as 'put_mockserver_expectation' but accepts an explicit configuration.
69+put_mockserver_expectationWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
70+ -> Expectations -- ^ The request body to send
71+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_expectationResponse) -- ^ Monadic computation which returns the result of the operation
72+put_mockserver_expectationWithConfiguration config
73+ body = GHC.Base.fmap (\response_4 -> GHC.Base.fmap (Data.Either.either Put_mockserver_expectationResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 201) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_expectationResponse201 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
74+ ([Expectation]))
75+ | (\status_6 -> Network.HTTP.Types.Status.statusCode status_6 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_expectationResponse400
76+ | (\status_7 -> Network.HTTP.Types.Status.statusCode status_7 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_expectationResponse406
77+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_4) response_4) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/expectation") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
78+-- | > PUT /mockserver/expectation
79+--
80+-- The same as 'put_mockserver_expectation' but returns the raw 'Data.ByteString.Char8.ByteString'.
81+put_mockserver_expectationRaw :: forall m . MockServer.Common.MonadHTTP m => Expectations -- ^ The request body to send
82+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
83+put_mockserver_expectationRaw body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/expectation") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
84+-- | > PUT /mockserver/expectation
85+--
86+-- The same as 'put_mockserver_expectation' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
87+put_mockserver_expectationWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
88+ -> Expectations -- ^ The request body to send
89+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
90+put_mockserver_expectationWithConfigurationRaw config
91+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/expectation") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/Operations/Put_mockserver_openapi.hsnew file+91
@@ -0,0 +1,91 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_openapi
8+module MockServer.Operations.Put_mockserver_openapi where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/openapi
48+--
49+-- create expectations from OpenAPI or Swagger
50+put_mockserver_openapi :: forall m . MockServer.Common.MonadHTTP m => OpenAPIExpectations -- ^ The request body to send
51+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_openapiResponse) -- ^ Monadic computation which returns the result of the operation
52+put_mockserver_openapi body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_openapiResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 201) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_openapiResponse201 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
53+ ([Expectation]))
54+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_openapiResponse400
55+ | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_openapiResponse406
56+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/openapi") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
57+-- | Represents a response of the operation 'put_mockserver_openapi'.
58+--
59+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_openapiResponseError' is used.
60+data Put_mockserver_openapiResponse =
61+ Put_mockserver_openapiResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
62+ | Put_mockserver_openapiResponse201 ([Expectation]) -- ^ expectations created
63+ | Put_mockserver_openapiResponse400 -- ^ incorrect request format
64+ | Put_mockserver_openapiResponse406 -- ^ invalid expectation
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+-- | > PUT /mockserver/openapi
67+--
68+-- The same as 'put_mockserver_openapi' but accepts an explicit configuration.
69+put_mockserver_openapiWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
70+ -> OpenAPIExpectations -- ^ The request body to send
71+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_openapiResponse) -- ^ Monadic computation which returns the result of the operation
72+put_mockserver_openapiWithConfiguration config
73+ body = GHC.Base.fmap (\response_4 -> GHC.Base.fmap (Data.Either.either Put_mockserver_openapiResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 201) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_openapiResponse201 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
74+ ([Expectation]))
75+ | (\status_6 -> Network.HTTP.Types.Status.statusCode status_6 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_openapiResponse400
76+ | (\status_7 -> Network.HTTP.Types.Status.statusCode status_7 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_openapiResponse406
77+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_4) response_4) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/openapi") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
78+-- | > PUT /mockserver/openapi
79+--
80+-- The same as 'put_mockserver_openapi' but returns the raw 'Data.ByteString.Char8.ByteString'.
81+put_mockserver_openapiRaw :: forall m . MockServer.Common.MonadHTTP m => OpenAPIExpectations -- ^ The request body to send
82+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
83+put_mockserver_openapiRaw body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/openapi") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
84+-- | > PUT /mockserver/openapi
85+--
86+-- The same as 'put_mockserver_openapi' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
87+put_mockserver_openapiWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
88+ -> OpenAPIExpectations -- ^ The request body to send
89+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
90+put_mockserver_openapiWithConfigurationRaw config
91+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/openapi") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/Operations/Put_mockserver_reset.hsnew file+77
@@ -0,0 +1,77 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_reset
8+module MockServer.Operations.Put_mockserver_reset where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/reset
48+--
49+-- clears all expectations and recorded requests
50+put_mockserver_reset :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_resetResponse) -- ^ Monadic computation which returns the result of the operation
51+put_mockserver_reset = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_resetResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_resetResponse200
52+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/reset") GHC.Base.mempty)
53+-- | Represents a response of the operation 'put_mockserver_reset'.
54+--
55+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_resetResponseError' is used.
56+data Put_mockserver_resetResponse =
57+ Put_mockserver_resetResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
58+ | Put_mockserver_resetResponse200 -- ^ expectations and recorded requests cleared
59+ deriving (GHC.Show.Show, GHC.Classes.Eq)
60+-- | > PUT /mockserver/reset
61+--
62+-- The same as 'put_mockserver_reset' but accepts an explicit configuration.
63+put_mockserver_resetWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
64+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_resetResponse) -- ^ Monadic computation which returns the result of the operation
65+put_mockserver_resetWithConfiguration config = GHC.Base.fmap (\response_2 -> GHC.Base.fmap (Data.Either.either Put_mockserver_resetResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_resetResponse200
66+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_2) response_2) (MockServer.Common.doCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/reset") GHC.Base.mempty)
67+-- | > PUT /mockserver/reset
68+--
69+-- The same as 'put_mockserver_reset' but returns the raw 'Data.ByteString.Char8.ByteString'.
70+put_mockserver_resetRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
71+put_mockserver_resetRaw = GHC.Base.id (MockServer.Common.doCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/reset") GHC.Base.mempty)
72+-- | > PUT /mockserver/reset
73+--
74+-- The same as 'put_mockserver_reset' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
75+put_mockserver_resetWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
76+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
77+put_mockserver_resetWithConfigurationRaw config = GHC.Base.id (MockServer.Common.doCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/reset") GHC.Base.mempty)
src/MockServer/Operations/Put_mockserver_retrieve.hsnew file+189
@@ -0,0 +1,189 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_retrieve
8+module MockServer.Operations.Put_mockserver_retrieve where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/retrieve
48+--
49+-- retrieve recorded requests, active expectations, recorded expectations or log messages
50+put_mockserver_retrieve :: forall m . MockServer.Common.MonadHTTP m => Put_mockserver_retrieveParameters -- ^ Contains all available parameters of this operation (query and path parameters)
51+ -> GHC.Maybe.Maybe RequestDefinition -- ^ The request body to send
52+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_retrieveResponse) -- ^ Monadic computation which returns the result of the operation
53+put_mockserver_retrieve parameters
54+ body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_retrieveResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_retrieveResponse200 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
55+ Put_mockserver_retrieveResponseBody200Variants)
56+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_retrieveResponse400
57+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/retrieve") [MockServer.Common.QueryParameter (Data.Text.pack "format") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryFormat parameters) (Data.Text.pack "form") GHC.Types.False,
58+ MockServer.Common.QueryParameter (Data.Text.pack "type") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryType parameters) (Data.Text.pack "form") GHC.Types.False] body MockServer.Common.RequestBodyEncodingJSON)
59+-- | Defines the object schema located at @paths.\/mockserver\/retrieve.PUT.parameters@ in the specification.
60+--
61+--
62+data Put_mockserver_retrieveParameters = Put_mockserver_retrieveParameters {
63+ -- | queryFormat: Represents the parameter named \'format\'
64+ --
65+ -- changes response format, default if not specificed is \"json\", supported values are \"java\", \"json\", \"log_entries\"
66+ put_mockserver_retrieveParametersQueryFormat :: (GHC.Maybe.Maybe Put_mockserver_retrieveParametersQueryFormat)
67+ -- | queryType: Represents the parameter named \'type\'
68+ --
69+ -- specifies the type of object that is retrieve, default if not specified is \"requests\", supported values are \"logs\", \"requests\", \"recorded_expectations\", \"active_expectations\"
70+ , put_mockserver_retrieveParametersQueryType :: (GHC.Maybe.Maybe Put_mockserver_retrieveParametersQueryType)
71+ } deriving (GHC.Show.Show
72+ , GHC.Classes.Eq)
73+instance Data.Aeson.Types.ToJSON.ToJSON Put_mockserver_retrieveParameters
74+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryFormat" Data.Aeson.Types.ToJSON..=)) (put_mockserver_retrieveParametersQueryFormat obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryType" Data.Aeson.Types.ToJSON..=)) (put_mockserver_retrieveParametersQueryType obj) : GHC.Base.mempty))
75+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryFormat" Data.Aeson.Types.ToJSON..=)) (put_mockserver_retrieveParametersQueryFormat obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryType" Data.Aeson.Types.ToJSON..=)) (put_mockserver_retrieveParametersQueryType obj) : GHC.Base.mempty)))
76+instance Data.Aeson.Types.FromJSON.FromJSON Put_mockserver_retrieveParameters
77+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "Put_mockserver_retrieveParameters" (\obj -> (GHC.Base.pure Put_mockserver_retrieveParameters GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "queryFormat")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "queryType"))
78+-- | Create a new 'Put_mockserver_retrieveParameters' with all required fields.
79+mkPut_mockserver_retrieveParameters :: Put_mockserver_retrieveParameters
80+mkPut_mockserver_retrieveParameters = Put_mockserver_retrieveParameters{put_mockserver_retrieveParametersQueryFormat = GHC.Maybe.Nothing,
81+ put_mockserver_retrieveParametersQueryType = GHC.Maybe.Nothing}
82+-- | Defines the enum schema located at @paths.\/mockserver\/retrieve.PUT.parameters.properties.queryFormat@ in the specification.
83+--
84+-- Represents the parameter named \'format\'
85+--
86+-- changes response format, default if not specificed is \"json\", supported values are \"java\", \"json\", \"log_entries\"
87+data Put_mockserver_retrieveParametersQueryFormat =
88+ Put_mockserver_retrieveParametersQueryFormatOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
89+ | Put_mockserver_retrieveParametersQueryFormatTyped Data.Text.Internal.Text -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
90+ | Put_mockserver_retrieveParametersQueryFormatEnumJava -- ^ Represents the JSON value @"java"@
91+ | Put_mockserver_retrieveParametersQueryFormatEnumJson -- ^ Represents the JSON value @"json"@
92+ | Put_mockserver_retrieveParametersQueryFormatEnumLog_entries -- ^ Represents the JSON value @"log_entries"@
93+ deriving (GHC.Show.Show, GHC.Classes.Eq)
94+instance Data.Aeson.Types.ToJSON.ToJSON Put_mockserver_retrieveParametersQueryFormat
95+ where toJSON (Put_mockserver_retrieveParametersQueryFormatOther val) = val
96+ toJSON (Put_mockserver_retrieveParametersQueryFormatTyped val) = Data.Aeson.Types.ToJSON.toJSON val
97+ toJSON (Put_mockserver_retrieveParametersQueryFormatEnumJava) = "java"
98+ toJSON (Put_mockserver_retrieveParametersQueryFormatEnumJson) = "json"
99+ toJSON (Put_mockserver_retrieveParametersQueryFormatEnumLog_entries) = "log_entries"
100+instance Data.Aeson.Types.FromJSON.FromJSON Put_mockserver_retrieveParametersQueryFormat
101+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "java" -> Put_mockserver_retrieveParametersQueryFormatEnumJava
102+ | val GHC.Classes.== "json" -> Put_mockserver_retrieveParametersQueryFormatEnumJson
103+ | val GHC.Classes.== "log_entries" -> Put_mockserver_retrieveParametersQueryFormatEnumLog_entries
104+ | GHC.Base.otherwise -> Put_mockserver_retrieveParametersQueryFormatOther val)
105+-- | Defines the enum schema located at @paths.\/mockserver\/retrieve.PUT.parameters.properties.queryType@ in the specification.
106+--
107+-- Represents the parameter named \'type\'
108+--
109+-- specifies the type of object that is retrieve, default if not specified is \"requests\", supported values are \"logs\", \"requests\", \"recorded_expectations\", \"active_expectations\"
110+data Put_mockserver_retrieveParametersQueryType =
111+ Put_mockserver_retrieveParametersQueryTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
112+ | Put_mockserver_retrieveParametersQueryTypeTyped Data.Text.Internal.Text -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
113+ | Put_mockserver_retrieveParametersQueryTypeEnumLogs -- ^ Represents the JSON value @"logs"@
114+ | Put_mockserver_retrieveParametersQueryTypeEnumRequests -- ^ Represents the JSON value @"requests"@
115+ | Put_mockserver_retrieveParametersQueryTypeEnumRequest_responses -- ^ Represents the JSON value @"request_responses"@
116+ | Put_mockserver_retrieveParametersQueryTypeEnumRecorded_expectations -- ^ Represents the JSON value @"recorded_expectations"@
117+ | Put_mockserver_retrieveParametersQueryTypeEnumActive_expectations -- ^ Represents the JSON value @"active_expectations"@
118+ deriving (GHC.Show.Show, GHC.Classes.Eq)
119+instance Data.Aeson.Types.ToJSON.ToJSON Put_mockserver_retrieveParametersQueryType
120+ where toJSON (Put_mockserver_retrieveParametersQueryTypeOther val) = val
121+ toJSON (Put_mockserver_retrieveParametersQueryTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
122+ toJSON (Put_mockserver_retrieveParametersQueryTypeEnumLogs) = "logs"
123+ toJSON (Put_mockserver_retrieveParametersQueryTypeEnumRequests) = "requests"
124+ toJSON (Put_mockserver_retrieveParametersQueryTypeEnumRequest_responses) = "request_responses"
125+ toJSON (Put_mockserver_retrieveParametersQueryTypeEnumRecorded_expectations) = "recorded_expectations"
126+ toJSON (Put_mockserver_retrieveParametersQueryTypeEnumActive_expectations) = "active_expectations"
127+instance Data.Aeson.Types.FromJSON.FromJSON Put_mockserver_retrieveParametersQueryType
128+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "logs" -> Put_mockserver_retrieveParametersQueryTypeEnumLogs
129+ | val GHC.Classes.== "requests" -> Put_mockserver_retrieveParametersQueryTypeEnumRequests
130+ | val GHC.Classes.== "request_responses" -> Put_mockserver_retrieveParametersQueryTypeEnumRequest_responses
131+ | val GHC.Classes.== "recorded_expectations" -> Put_mockserver_retrieveParametersQueryTypeEnumRecorded_expectations
132+ | val GHC.Classes.== "active_expectations" -> Put_mockserver_retrieveParametersQueryTypeEnumActive_expectations
133+ | GHC.Base.otherwise -> Put_mockserver_retrieveParametersQueryTypeOther val)
134+-- | Represents a response of the operation 'put_mockserver_retrieve'.
135+--
136+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_retrieveResponseError' is used.
137+data Put_mockserver_retrieveResponse =
138+ Put_mockserver_retrieveResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
139+ | Put_mockserver_retrieveResponse200 Put_mockserver_retrieveResponseBody200Variants -- ^ recorded requests or active expectations returned
140+ | Put_mockserver_retrieveResponse400 -- ^ incorrect request format
141+ deriving (GHC.Show.Show, GHC.Classes.Eq)
142+-- | Defines the oneOf schema located at @paths.\/mockserver\/retrieve.PUT.responses.200.content.application\/json.schema.oneOf@ in the specification.
143+--
144+--
145+data Put_mockserver_retrieveResponseBody200Variants =
146+ Put_mockserver_retrieveResponseBody200ListTExpectation ([Expectation])
147+ | Put_mockserver_retrieveResponseBody200ListTHttpResponse ([HttpResponse])
148+ deriving (GHC.Show.Show, GHC.Classes.Eq)
149+instance Data.Aeson.Types.ToJSON.ToJSON Put_mockserver_retrieveResponseBody200Variants
150+ where toJSON (Put_mockserver_retrieveResponseBody200ListTExpectation a) = Data.Aeson.Types.ToJSON.toJSON a
151+ toJSON (Put_mockserver_retrieveResponseBody200ListTHttpResponse a) = Data.Aeson.Types.ToJSON.toJSON a
152+instance Data.Aeson.Types.FromJSON.FromJSON Put_mockserver_retrieveResponseBody200Variants
153+ where parseJSON val = case (Put_mockserver_retrieveResponseBody200ListTExpectation Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((Put_mockserver_retrieveResponseBody200ListTHttpResponse Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
154+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
155+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
156+-- | > PUT /mockserver/retrieve
157+--
158+-- The same as 'put_mockserver_retrieve' but accepts an explicit configuration.
159+put_mockserver_retrieveWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
160+ -> Put_mockserver_retrieveParameters -- ^ Contains all available parameters of this operation (query and path parameters)
161+ -> GHC.Maybe.Maybe RequestDefinition -- ^ The request body to send
162+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_retrieveResponse) -- ^ Monadic computation which returns the result of the operation
163+put_mockserver_retrieveWithConfiguration config
164+ parameters
165+ body = GHC.Base.fmap (\response_3 -> GHC.Base.fmap (Data.Either.either Put_mockserver_retrieveResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_4 -> Network.HTTP.Types.Status.statusCode status_4 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_retrieveResponse200 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
166+ Put_mockserver_retrieveResponseBody200Variants)
167+ | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_retrieveResponse400
168+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_3) response_3) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/retrieve") [MockServer.Common.QueryParameter (Data.Text.pack "format") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryFormat parameters) (Data.Text.pack "form") GHC.Types.False,
169+ MockServer.Common.QueryParameter (Data.Text.pack "type") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryType parameters) (Data.Text.pack "form") GHC.Types.False] body MockServer.Common.RequestBodyEncodingJSON)
170+-- | > PUT /mockserver/retrieve
171+--
172+-- The same as 'put_mockserver_retrieve' but returns the raw 'Data.ByteString.Char8.ByteString'.
173+put_mockserver_retrieveRaw :: forall m . MockServer.Common.MonadHTTP m => Put_mockserver_retrieveParameters -- ^ Contains all available parameters of this operation (query and path parameters)
174+ -> GHC.Maybe.Maybe RequestDefinition -- ^ The request body to send
175+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
176+put_mockserver_retrieveRaw parameters
177+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/retrieve") [MockServer.Common.QueryParameter (Data.Text.pack "format") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryFormat parameters) (Data.Text.pack "form") GHC.Types.False,
178+ MockServer.Common.QueryParameter (Data.Text.pack "type") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryType parameters) (Data.Text.pack "form") GHC.Types.False] body MockServer.Common.RequestBodyEncodingJSON)
179+-- | > PUT /mockserver/retrieve
180+--
181+-- The same as 'put_mockserver_retrieve' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
182+put_mockserver_retrieveWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
183+ -> Put_mockserver_retrieveParameters -- ^ Contains all available parameters of this operation (query and path parameters)
184+ -> GHC.Maybe.Maybe RequestDefinition -- ^ The request body to send
185+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
186+put_mockserver_retrieveWithConfigurationRaw config
187+ parameters
188+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/retrieve") [MockServer.Common.QueryParameter (Data.Text.pack "format") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryFormat parameters) (Data.Text.pack "form") GHC.Types.False,
189+ MockServer.Common.QueryParameter (Data.Text.pack "type") (Data.Aeson.Types.ToJSON.toJSON Data.Functor.<$> put_mockserver_retrieveParametersQueryType parameters) (Data.Text.pack "form") GHC.Types.False] body MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/Operations/Put_mockserver_status.hsnew file+79
@@ -0,0 +1,79 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_status
8+module MockServer.Operations.Put_mockserver_status where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/status
48+--
49+-- return listening ports
50+put_mockserver_status :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_statusResponse) -- ^ Monadic computation which returns the result of the operation
51+put_mockserver_status = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_statusResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_statusResponse200 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
52+ Ports)
53+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/status") GHC.Base.mempty)
54+-- | Represents a response of the operation 'put_mockserver_status'.
55+--
56+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_statusResponseError' is used.
57+data Put_mockserver_statusResponse =
58+ Put_mockserver_statusResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
59+ | Put_mockserver_statusResponse200 Ports -- ^ MockServer is running and listening on the listed ports
60+ deriving (GHC.Show.Show, GHC.Classes.Eq)
61+-- | > PUT /mockserver/status
62+--
63+-- The same as 'put_mockserver_status' but accepts an explicit configuration.
64+put_mockserver_statusWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
65+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_statusResponse) -- ^ Monadic computation which returns the result of the operation
66+put_mockserver_statusWithConfiguration config = GHC.Base.fmap (\response_2 -> GHC.Base.fmap (Data.Either.either Put_mockserver_statusResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Put_mockserver_statusResponse200 Data.Functor.<$> (Data.Aeson.eitherDecodeStrict body :: Data.Either.Either GHC.Base.String
67+ Ports)
68+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_2) response_2) (MockServer.Common.doCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/status") GHC.Base.mempty)
69+-- | > PUT /mockserver/status
70+--
71+-- The same as 'put_mockserver_status' but returns the raw 'Data.ByteString.Char8.ByteString'.
72+put_mockserver_statusRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
73+put_mockserver_statusRaw = GHC.Base.id (MockServer.Common.doCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/status") GHC.Base.mempty)
74+-- | > PUT /mockserver/status
75+--
76+-- The same as 'put_mockserver_status' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
77+put_mockserver_statusWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
78+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
79+put_mockserver_statusWithConfigurationRaw config = GHC.Base.id (MockServer.Common.doCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/status") GHC.Base.mempty)
src/MockServer/Operations/Put_mockserver_stop.hsnew file+77
@@ -0,0 +1,77 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_stop
8+module MockServer.Operations.Put_mockserver_stop where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/stop
48+--
49+-- only supported on Netty version
50+put_mockserver_stop :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_stopResponse) -- ^ Monadic computation which returns the result of the operation
51+put_mockserver_stop = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_stopResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_stopResponse200
52+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/stop") GHC.Base.mempty)
53+-- | Represents a response of the operation 'put_mockserver_stop'.
54+--
55+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_stopResponseError' is used.
56+data Put_mockserver_stopResponse =
57+ Put_mockserver_stopResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
58+ | Put_mockserver_stopResponse200 -- ^ MockServer process is stopping
59+ deriving (GHC.Show.Show, GHC.Classes.Eq)
60+-- | > PUT /mockserver/stop
61+--
62+-- The same as 'put_mockserver_stop' but accepts an explicit configuration.
63+put_mockserver_stopWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
64+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_stopResponse) -- ^ Monadic computation which returns the result of the operation
65+put_mockserver_stopWithConfiguration config = GHC.Base.fmap (\response_2 -> GHC.Base.fmap (Data.Either.either Put_mockserver_stopResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 200) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_stopResponse200
66+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_2) response_2) (MockServer.Common.doCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/stop") GHC.Base.mempty)
67+-- | > PUT /mockserver/stop
68+--
69+-- The same as 'put_mockserver_stop' but returns the raw 'Data.ByteString.Char8.ByteString'.
70+put_mockserver_stopRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
71+put_mockserver_stopRaw = GHC.Base.id (MockServer.Common.doCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/stop") GHC.Base.mempty)
72+-- | > PUT /mockserver/stop
73+--
74+-- The same as 'put_mockserver_stop' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
75+put_mockserver_stopWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
76+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
77+put_mockserver_stopWithConfigurationRaw config = GHC.Base.id (MockServer.Common.doCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/stop") GHC.Base.mempty)
src/MockServer/Operations/Put_mockserver_verify.hsnew file+89
@@ -0,0 +1,89 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_verify
8+module MockServer.Operations.Put_mockserver_verify where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/verify
48+--
49+-- verify a request has been received a specific number of times
50+put_mockserver_verify :: forall m . MockServer.Common.MonadHTTP m => Verification -- ^ The request body to send
51+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_verifyResponse) -- ^ Monadic computation which returns the result of the operation
52+put_mockserver_verify body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_verifyResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 202) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifyResponse202
53+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifyResponse400
54+ | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifyResponse406
55+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verify") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
56+-- | Represents a response of the operation 'put_mockserver_verify'.
57+--
58+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_verifyResponseError' is used.
59+data Put_mockserver_verifyResponse =
60+ Put_mockserver_verifyResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
61+ | Put_mockserver_verifyResponse202 -- ^ matching request has been received specified number of times
62+ | Put_mockserver_verifyResponse400 -- ^ incorrect request format
63+ | Put_mockserver_verifyResponse406 -- ^ request has not been received specified numbers of times
64+ deriving (GHC.Show.Show, GHC.Classes.Eq)
65+-- | > PUT /mockserver/verify
66+--
67+-- The same as 'put_mockserver_verify' but accepts an explicit configuration.
68+put_mockserver_verifyWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
69+ -> Verification -- ^ The request body to send
70+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_verifyResponse) -- ^ Monadic computation which returns the result of the operation
71+put_mockserver_verifyWithConfiguration config
72+ body = GHC.Base.fmap (\response_4 -> GHC.Base.fmap (Data.Either.either Put_mockserver_verifyResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 202) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifyResponse202
73+ | (\status_6 -> Network.HTTP.Types.Status.statusCode status_6 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifyResponse400
74+ | (\status_7 -> Network.HTTP.Types.Status.statusCode status_7 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifyResponse406
75+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_4) response_4) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verify") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
76+-- | > PUT /mockserver/verify
77+--
78+-- The same as 'put_mockserver_verify' but returns the raw 'Data.ByteString.Char8.ByteString'.
79+put_mockserver_verifyRaw :: forall m . MockServer.Common.MonadHTTP m => Verification -- ^ The request body to send
80+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
81+put_mockserver_verifyRaw body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verify") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
82+-- | > PUT /mockserver/verify
83+--
84+-- The same as 'put_mockserver_verify' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
85+put_mockserver_verifyWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
86+ -> Verification -- ^ The request body to send
87+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
88+put_mockserver_verifyWithConfigurationRaw config
89+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verify") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/Operations/Put_mockserver_verifySequence.hsnew file+89
@@ -0,0 +1,89 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE ExplicitForAll #-}
5+{-# LANGUAGE MultiWayIf #-}
6+
7+-- | Contains the different functions to run the operation put_mockserver_verifySequence
8+module MockServer.Operations.Put_mockserver_verifySequence where
9+
10+import qualified Prelude as GHC.Integer.Type
11+import qualified Prelude as GHC.Maybe
12+import qualified Control.Monad.Fail
13+import qualified Control.Monad.Trans.Reader
14+import qualified Data.Aeson
15+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
16+import qualified Data.Aeson as Data.Aeson.Types
17+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
18+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
19+import qualified Data.Aeson as Data.Aeson.Types.Internal
20+import qualified Data.ByteString.Char8
21+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
22+import qualified Data.Either
23+import qualified Data.Foldable
24+import qualified Data.Functor
25+import qualified Data.Maybe
26+import qualified Data.Scientific
27+import qualified Data.Text
28+import qualified Data.Text.Internal
29+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
30+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
31+import qualified Data.Vector
32+import qualified GHC.Base
33+import qualified GHC.Classes
34+import qualified GHC.Int
35+import qualified GHC.Show
36+import qualified GHC.Types
37+import qualified Network.HTTP.Client
38+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
39+import qualified Network.HTTP.Client as Network.HTTP.Client.Types
40+import qualified Network.HTTP.Simple
41+import qualified Network.HTTP.Types
42+import qualified Network.HTTP.Types as Network.HTTP.Types.Status
43+import qualified Network.HTTP.Types as Network.HTTP.Types.URI
44+import qualified MockServer.Common
45+import MockServer.Types
46+
47+-- | > PUT /mockserver/verifySequence
48+--
49+-- verify a sequence of request has been received in the specific order
50+put_mockserver_verifySequence :: forall m . MockServer.Common.MonadHTTP m => VerificationSequence -- ^ The request body to send
51+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Put_mockserver_verifySequenceResponse) -- ^ Monadic computation which returns the result of the operation
52+put_mockserver_verifySequence body = GHC.Base.fmap (\response_0 -> GHC.Base.fmap (Data.Either.either Put_mockserver_verifySequenceResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_1 -> Network.HTTP.Types.Status.statusCode status_1 GHC.Classes.== 202) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifySequenceResponse202
53+ | (\status_2 -> Network.HTTP.Types.Status.statusCode status_2 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifySequenceResponse400
54+ | (\status_3 -> Network.HTTP.Types.Status.statusCode status_3 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifySequenceResponse406
55+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_0) response_0) (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verifySequence") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
56+-- | Represents a response of the operation 'put_mockserver_verifySequence'.
57+--
58+-- The response constructor is chosen by the status code of the response. If no case matches (no specific case for the response code, no range case, no default case), 'Put_mockserver_verifySequenceResponseError' is used.
59+data Put_mockserver_verifySequenceResponse =
60+ Put_mockserver_verifySequenceResponseError GHC.Base.String -- ^ Means either no matching case available or a parse error
61+ | Put_mockserver_verifySequenceResponse202 -- ^ request sequence has been received in specified order
62+ | Put_mockserver_verifySequenceResponse400 -- ^ incorrect request format
63+ | Put_mockserver_verifySequenceResponse406 -- ^ request sequence has not been received in specified order
64+ deriving (GHC.Show.Show, GHC.Classes.Eq)
65+-- | > PUT /mockserver/verifySequence
66+--
67+-- The same as 'put_mockserver_verifySequence' but accepts an explicit configuration.
68+put_mockserver_verifySequenceWithConfiguration :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
69+ -> VerificationSequence -- ^ The request body to send
70+ -> m (Network.HTTP.Client.Types.Response Put_mockserver_verifySequenceResponse) -- ^ Monadic computation which returns the result of the operation
71+put_mockserver_verifySequenceWithConfiguration config
72+ body = GHC.Base.fmap (\response_4 -> GHC.Base.fmap (Data.Either.either Put_mockserver_verifySequenceResponseError GHC.Base.id GHC.Base.. (\response body -> if | (\status_5 -> Network.HTTP.Types.Status.statusCode status_5 GHC.Classes.== 202) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifySequenceResponse202
73+ | (\status_6 -> Network.HTTP.Types.Status.statusCode status_6 GHC.Classes.== 400) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifySequenceResponse400
74+ | (\status_7 -> Network.HTTP.Types.Status.statusCode status_7 GHC.Classes.== 406) (Network.HTTP.Client.Types.responseStatus response) -> Data.Either.Right Put_mockserver_verifySequenceResponse406
75+ | GHC.Base.otherwise -> Data.Either.Left "Missing default response type") response_4) response_4) (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verifySequence") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
76+-- | > PUT /mockserver/verifySequence
77+--
78+-- The same as 'put_mockserver_verifySequence' but returns the raw 'Data.ByteString.Char8.ByteString'.
79+put_mockserver_verifySequenceRaw :: forall m . MockServer.Common.MonadHTTP m => VerificationSequence -- ^ The request body to send
80+ -> MockServer.Common.ClientT m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
81+put_mockserver_verifySequenceRaw body = GHC.Base.id (MockServer.Common.doBodyCallWithConfigurationM (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verifySequence") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
82+-- | > PUT /mockserver/verifySequence
83+--
84+-- The same as 'put_mockserver_verifySequence' but accepts an explicit configuration and returns the raw 'Data.ByteString.Char8.ByteString'.
85+put_mockserver_verifySequenceWithConfigurationRaw :: forall m . MockServer.Common.MonadHTTP m => MockServer.Common.Configuration -- ^ The configuration to use in the request
86+ -> VerificationSequence -- ^ The request body to send
87+ -> m (Network.HTTP.Client.Types.Response Data.ByteString.Internal.ByteString) -- ^ Monadic computation which returns the result of the operation
88+put_mockserver_verifySequenceWithConfigurationRaw config
89+ body = GHC.Base.id (MockServer.Common.doBodyCallWithConfiguration config (Data.Text.toUpper GHC.Base.$ Data.Text.pack "PUT") (Data.Text.pack "/mockserver/verifySequence") GHC.Base.mempty (GHC.Maybe.Just body) MockServer.Common.RequestBodyEncodingJSON)
src/MockServer/SecuritySchemes.hsnew file+14
@@ -0,0 +1,14 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+
5+-- | Contains all supported security schemes defined in the specification
6+module MockServer.SecuritySchemes where
7+
8+import qualified Data.Text.Internal
9+import qualified GHC.Base
10+import qualified GHC.Classes
11+import qualified GHC.Show
12+import qualified Network.HTTP.Client as Network.HTTP.Client.Request
13+import qualified Network.HTTP.Simple
14+import qualified MockServer.Common
src/MockServer/TypeAlias.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains all types with cyclic dependencies (between each other or to itself)
7+module MockServer.TypeAlias where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+
35+
36+-- | Defines an alias for the schema located at @components.schemas.RawStringResponseBody@ in the specification.
37+--
38+-- string response body
39+type RawStringResponseBody = Data.Text.Internal.Text
40+
41+-- | Defines an alias for the schema located at @components.schemas.RawStringBodyMatcher@ in the specification.
42+--
43+-- substring body matcher
44+type RawStringBodyMatcher = Data.Text.Internal.Text
45+
46+-- | Defines an alias for the schema located at @components.schemas.RawJsonResponseBody@ in the specification.
47+--
48+-- json response body
49+type RawJsonResponseBody = Data.Aeson.Types.Internal.Object
50+
51+-- | Defines an alias for the schema located at @components.schemas.RawJsonBodyMatcher@ in the specification.
52+--
53+-- json matching fields body matcher
54+type RawJsonBodyMatcher = Data.Aeson.Types.Internal.Object
src/MockServer/Types.hsnew file+94
@@ -0,0 +1,94 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+-- | Rexports all type modules (used in the operation modules).
4+module MockServer.Types (
5+ module MockServer.TypeAlias,
6+ module MockServer.Types.BinaryBodyMatcher,
7+ module MockServer.Types.BinaryBodyResponse,
8+ module MockServer.Types.Body,
9+ module MockServer.Types.BodyWithContentType,
10+ module MockServer.Types.ConnectionOptions,
11+ module MockServer.Types.Delay,
12+ module MockServer.Types.Expectation,
13+ module MockServer.Types.ExpectationId,
14+ module MockServer.Types.Expectations,
15+ module MockServer.Types.HttpClassCallback,
16+ module MockServer.Types.HttpError,
17+ module MockServer.Types.HttpForward,
18+ module MockServer.Types.HttpObjectCallback,
19+ module MockServer.Types.HttpOverrideForwardedRequest,
20+ module MockServer.Types.HttpRequest,
21+ module MockServer.Types.HttpResponse,
22+ module MockServer.Types.HttpTemplate,
23+ module MockServer.Types.JsonBodyMatcher,
24+ module MockServer.Types.JsonPathBodyMatcher,
25+ module MockServer.Types.JsonResponseBody,
26+ module MockServer.Types.JsonSchemaBodyMatcher,
27+ module MockServer.Types.KeyToMultiValue,
28+ module MockServer.Types.KeyToValue,
29+ module MockServer.Types.OpenAPIDefinition,
30+ module MockServer.Types.OpenAPIExpectation,
31+ module MockServer.Types.OpenAPIExpectations,
32+ module MockServer.Types.ParameterBodyMatcher,
33+ module MockServer.Types.Ports,
34+ module MockServer.Types.RegexBodyMatcher,
35+ module MockServer.Types.RequestDefinition,
36+ module MockServer.Types.SocketAddress,
37+ module MockServer.Types.StringBodyMatcher,
38+ module MockServer.Types.StringOrJsonSchema,
39+ module MockServer.Types.StringResponseBody,
40+ module MockServer.Types.TimeToLive,
41+ module MockServer.Types.Times,
42+ module MockServer.Types.Verification,
43+ module MockServer.Types.VerificationSequence,
44+ module MockServer.Types.VerificationTimes,
45+ module MockServer.Types.XmlBodyMatcher,
46+ module MockServer.Types.XmlResponseBody,
47+ module MockServer.Types.XmlSchemaBodyMatcher,
48+ module MockServer.Types.XpathBodyMatcher,
49+ ) where
50+
51+import MockServer.TypeAlias
52+import MockServer.Types.BinaryBodyMatcher
53+import MockServer.Types.BinaryBodyResponse
54+import MockServer.Types.Body
55+import MockServer.Types.BodyWithContentType
56+import MockServer.Types.ConnectionOptions
57+import MockServer.Types.Delay
58+import MockServer.Types.Expectation
59+import MockServer.Types.ExpectationId
60+import MockServer.Types.Expectations
61+import MockServer.Types.HttpClassCallback
62+import MockServer.Types.HttpError
63+import MockServer.Types.HttpForward
64+import MockServer.Types.HttpObjectCallback
65+import MockServer.Types.HttpOverrideForwardedRequest
66+import MockServer.Types.HttpRequest
67+import MockServer.Types.HttpResponse
68+import MockServer.Types.HttpTemplate
69+import MockServer.Types.JsonBodyMatcher
70+import MockServer.Types.JsonPathBodyMatcher
71+import MockServer.Types.JsonResponseBody
72+import MockServer.Types.JsonSchemaBodyMatcher
73+import MockServer.Types.KeyToMultiValue
74+import MockServer.Types.KeyToValue
75+import MockServer.Types.OpenAPIDefinition
76+import MockServer.Types.OpenAPIExpectation
77+import MockServer.Types.OpenAPIExpectations
78+import MockServer.Types.ParameterBodyMatcher
79+import MockServer.Types.Ports
80+import MockServer.Types.RegexBodyMatcher
81+import MockServer.Types.RequestDefinition
82+import MockServer.Types.SocketAddress
83+import MockServer.Types.StringBodyMatcher
84+import MockServer.Types.StringOrJsonSchema
85+import MockServer.Types.StringResponseBody
86+import MockServer.Types.TimeToLive
87+import MockServer.Types.Times
88+import MockServer.Types.Verification
89+import MockServer.Types.VerificationSequence
90+import MockServer.Types.VerificationTimes
91+import MockServer.Types.XmlBodyMatcher
92+import MockServer.Types.XmlResponseBody
93+import MockServer.Types.XmlSchemaBodyMatcher
94+import MockServer.Types.XpathBodyMatcher
src/MockServer/Types/BinaryBodyMatcher.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema BinaryBodyMatcher
7+module MockServer.Types.BinaryBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.BinaryBodyMatcher@ in the specification.
37+--
38+-- binary body matcher
39+data BinaryBodyMatcher = BinaryBodyMatcher {
40+ -- | base64Bytes
41+ binaryBodyMatcherBase64Bytes :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | contentType
43+ , binaryBodyMatcherContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ -- | not
45+ , binaryBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
46+ -- | type
47+ , binaryBodyMatcherType :: (GHC.Maybe.Maybe BinaryBodyMatcherType)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON BinaryBodyMatcher
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("base64Bytes" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherBase64Bytes obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherType obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("base64Bytes" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherBase64Bytes obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (binaryBodyMatcherType obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON BinaryBodyMatcher
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "BinaryBodyMatcher" (\obj -> (((GHC.Base.pure BinaryBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "base64Bytes")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
55+-- | Create a new 'BinaryBodyMatcher' with all required fields.
56+mkBinaryBodyMatcher :: BinaryBodyMatcher
57+mkBinaryBodyMatcher = BinaryBodyMatcher{binaryBodyMatcherBase64Bytes = GHC.Maybe.Nothing,
58+ binaryBodyMatcherContentType = GHC.Maybe.Nothing,
59+ binaryBodyMatcherNot = GHC.Maybe.Nothing,
60+ binaryBodyMatcherType = GHC.Maybe.Nothing}
61+-- | Defines the enum schema located at @components.schemas.BinaryBodyMatcher.properties.type@ in the specification.
62+--
63+--
64+data BinaryBodyMatcherType =
65+ BinaryBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
66+ | BinaryBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
67+ | BinaryBodyMatcherTypeEnumBINARY -- ^ Represents the JSON value @"BINARY"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON BinaryBodyMatcherType
70+ where toJSON (BinaryBodyMatcherTypeOther val) = val
71+ toJSON (BinaryBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (BinaryBodyMatcherTypeEnumBINARY) = "BINARY"
73+instance Data.Aeson.Types.FromJSON.FromJSON BinaryBodyMatcherType
74+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "BINARY" -> BinaryBodyMatcherTypeEnumBINARY
75+ | GHC.Base.otherwise -> BinaryBodyMatcherTypeOther val)
src/MockServer/Types/BinaryBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.BinaryBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data BinaryBodyMatcher
6+instance Show BinaryBodyMatcher
7+instance Eq BinaryBodyMatcher
8+instance FromJSON BinaryBodyMatcher
9+instance ToJSON BinaryBodyMatcher
10+data BinaryBodyMatcherType
11+instance Show BinaryBodyMatcherType
12+instance Eq BinaryBodyMatcherType
13+instance FromJSON BinaryBodyMatcherType
14+instance ToJSON BinaryBodyMatcherType
src/MockServer/Types/BinaryBodyResponse.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema BinaryBodyResponse
7+module MockServer.Types.BinaryBodyResponse where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.BinaryBodyResponse@ in the specification.
37+--
38+-- binary response body
39+data BinaryBodyResponse = BinaryBodyResponse {
40+ -- | base64Bytes
41+ binaryBodyResponseBase64Bytes :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | contentType
43+ , binaryBodyResponseContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ -- | not
45+ , binaryBodyResponseNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
46+ -- | type
47+ , binaryBodyResponseType :: (GHC.Maybe.Maybe BinaryBodyResponseType)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON BinaryBodyResponse
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("base64Bytes" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseBase64Bytes obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseType obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("base64Bytes" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseBase64Bytes obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (binaryBodyResponseType obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON BinaryBodyResponse
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "BinaryBodyResponse" (\obj -> (((GHC.Base.pure BinaryBodyResponse GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "base64Bytes")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
55+-- | Create a new 'BinaryBodyResponse' with all required fields.
56+mkBinaryBodyResponse :: BinaryBodyResponse
57+mkBinaryBodyResponse = BinaryBodyResponse{binaryBodyResponseBase64Bytes = GHC.Maybe.Nothing,
58+ binaryBodyResponseContentType = GHC.Maybe.Nothing,
59+ binaryBodyResponseNot = GHC.Maybe.Nothing,
60+ binaryBodyResponseType = GHC.Maybe.Nothing}
61+-- | Defines the enum schema located at @components.schemas.BinaryBodyResponse.properties.type@ in the specification.
62+--
63+--
64+data BinaryBodyResponseType =
65+ BinaryBodyResponseTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
66+ | BinaryBodyResponseTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
67+ | BinaryBodyResponseTypeEnumBINARY -- ^ Represents the JSON value @"BINARY"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON BinaryBodyResponseType
70+ where toJSON (BinaryBodyResponseTypeOther val) = val
71+ toJSON (BinaryBodyResponseTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (BinaryBodyResponseTypeEnumBINARY) = "BINARY"
73+instance Data.Aeson.Types.FromJSON.FromJSON BinaryBodyResponseType
74+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "BINARY" -> BinaryBodyResponseTypeEnumBINARY
75+ | GHC.Base.otherwise -> BinaryBodyResponseTypeOther val)
src/MockServer/Types/BinaryBodyResponse.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.BinaryBodyResponse where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data BinaryBodyResponse
6+instance Show BinaryBodyResponse
7+instance Eq BinaryBodyResponse
8+instance FromJSON BinaryBodyResponse
9+instance ToJSON BinaryBodyResponse
10+data BinaryBodyResponseType
11+instance Show BinaryBodyResponseType
12+instance Eq BinaryBodyResponseType
13+instance FromJSON BinaryBodyResponseType
14+instance ToJSON BinaryBodyResponseType
src/MockServer/Types/Body.hsnew file+83
@@ -0,0 +1,83 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Body
7+module MockServer.Types.Body where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.BinaryBodyMatcher
36+import {-# SOURCE #-} MockServer.Types.JsonBodyMatcher
37+import {-# SOURCE #-} MockServer.Types.JsonPathBodyMatcher
38+import {-# SOURCE #-} MockServer.Types.JsonSchemaBodyMatcher
39+import {-# SOURCE #-} MockServer.Types.ParameterBodyMatcher
40+import {-# SOURCE #-} MockServer.Types.RegexBodyMatcher
41+import {-# SOURCE #-} MockServer.Types.StringBodyMatcher
42+import {-# SOURCE #-} MockServer.Types.XmlBodyMatcher
43+import {-# SOURCE #-} MockServer.Types.XmlSchemaBodyMatcher
44+import {-# SOURCE #-} MockServer.Types.XpathBodyMatcher
45+
46+-- | Defines the oneOf schema located at @components.schemas.Body.anyOf@ in the specification.
47+--
48+-- request body matcher
49+data BodyVariants =
50+ BodyBinaryBodyMatcher BinaryBodyMatcher
51+ | BodyJsonBodyMatcher JsonBodyMatcher
52+ | BodyRawJsonBodyMatcher RawJsonBodyMatcher
53+ | BodyJsonSchemaBodyMatcher JsonSchemaBodyMatcher
54+ | BodyJsonPathBodyMatcher JsonPathBodyMatcher
55+ | BodyParameterBodyMatcher ParameterBodyMatcher
56+ | BodyRegexBodyMatcher RegexBodyMatcher
57+ | BodyStringBodyMatcher StringBodyMatcher
58+ | BodyRawStringBodyMatcher RawStringBodyMatcher
59+ | BodyXmlBodyMatcher XmlBodyMatcher
60+ | BodyXmlSchemaBodyMatcher XmlSchemaBodyMatcher
61+ | BodyXpathBodyMatcher XpathBodyMatcher
62+ deriving (GHC.Show.Show, GHC.Classes.Eq)
63+instance Data.Aeson.Types.ToJSON.ToJSON BodyVariants
64+ where toJSON (BodyBinaryBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
65+ toJSON (BodyJsonBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
66+ toJSON (BodyRawJsonBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
67+ toJSON (BodyJsonSchemaBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
68+ toJSON (BodyJsonPathBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
69+ toJSON (BodyParameterBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
70+ toJSON (BodyRegexBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
71+ toJSON (BodyStringBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
72+ toJSON (BodyRawStringBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
73+ toJSON (BodyXmlBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
74+ toJSON (BodyXmlSchemaBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
75+ toJSON (BodyXpathBodyMatcher a) = Data.Aeson.Types.ToJSON.toJSON a
76+instance Data.Aeson.Types.FromJSON.FromJSON BodyVariants
77+ where parseJSON val = case (BodyBinaryBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyJsonBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyRawJsonBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyJsonSchemaBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyJsonPathBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyParameterBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyRegexBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyStringBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyRawStringBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyXmlBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyXmlSchemaBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyXpathBodyMatcher Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched"))))))))))) of
78+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
79+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
80+-- | Defines an alias for the schema located at @components.schemas.Body.anyOf@ in the specification.
81+--
82+-- request body matcher
83+type Body = BodyVariants
src/MockServer/Types/Body.hs-bootnew file+10
@@ -0,0 +1,10 @@
1+module MockServer.Types.Body where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data BodyVariants
6+instance Show BodyVariants
7+instance Eq BodyVariants
8+instance FromJSON BodyVariants
9+instance ToJSON BodyVariants
10+type Body = BodyVariants
src/MockServer/Types/BodyWithContentType.hsnew file+65
@@ -0,0 +1,65 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema BodyWithContentType
7+module MockServer.Types.BodyWithContentType where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.BinaryBodyResponse
36+import {-# SOURCE #-} MockServer.Types.JsonResponseBody
37+import {-# SOURCE #-} MockServer.Types.StringResponseBody
38+import {-# SOURCE #-} MockServer.Types.XmlResponseBody
39+
40+-- | Defines the oneOf schema located at @components.schemas.BodyWithContentType.anyOf@ in the specification.
41+--
42+-- response body
43+data BodyWithContentTypeVariants =
44+ BodyWithContentTypeBinaryBodyResponse BinaryBodyResponse
45+ | BodyWithContentTypeJsonResponseBody JsonResponseBody
46+ | BodyWithContentTypeRawJsonResponseBody RawJsonResponseBody
47+ | BodyWithContentTypeStringResponseBody StringResponseBody
48+ | BodyWithContentTypeRawStringResponseBody RawStringResponseBody
49+ | BodyWithContentTypeXmlResponseBody XmlResponseBody
50+ deriving (GHC.Show.Show, GHC.Classes.Eq)
51+instance Data.Aeson.Types.ToJSON.ToJSON BodyWithContentTypeVariants
52+ where toJSON (BodyWithContentTypeBinaryBodyResponse a) = Data.Aeson.Types.ToJSON.toJSON a
53+ toJSON (BodyWithContentTypeJsonResponseBody a) = Data.Aeson.Types.ToJSON.toJSON a
54+ toJSON (BodyWithContentTypeRawJsonResponseBody a) = Data.Aeson.Types.ToJSON.toJSON a
55+ toJSON (BodyWithContentTypeStringResponseBody a) = Data.Aeson.Types.ToJSON.toJSON a
56+ toJSON (BodyWithContentTypeRawStringResponseBody a) = Data.Aeson.Types.ToJSON.toJSON a
57+ toJSON (BodyWithContentTypeXmlResponseBody a) = Data.Aeson.Types.ToJSON.toJSON a
58+instance Data.Aeson.Types.FromJSON.FromJSON BodyWithContentTypeVariants
59+ where parseJSON val = case (BodyWithContentTypeBinaryBodyResponse Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyWithContentTypeJsonResponseBody Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyWithContentTypeRawJsonResponseBody Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyWithContentTypeStringResponseBody Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyWithContentTypeRawStringResponseBody Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((BodyWithContentTypeXmlResponseBody Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched"))))) of
60+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
61+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
62+-- | Defines an alias for the schema located at @components.schemas.BodyWithContentType.anyOf@ in the specification.
63+--
64+-- response body
65+type BodyWithContentType = BodyWithContentTypeVariants
src/MockServer/Types/BodyWithContentType.hs-bootnew file+10
@@ -0,0 +1,10 @@
1+module MockServer.Types.BodyWithContentType where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data BodyWithContentTypeVariants
6+instance Show BodyWithContentTypeVariants
7+instance Eq BodyWithContentTypeVariants
8+instance FromJSON BodyWithContentTypeVariants
9+instance ToJSON BodyWithContentTypeVariants
10+type BodyWithContentType = BodyWithContentTypeVariants
src/MockServer/Types/ConnectionOptions.hsnew file+70
@@ -0,0 +1,70 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema ConnectionOptions
7+module MockServer.Types.ConnectionOptions where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+
37+-- | Defines the object schema located at @components.schemas.ConnectionOptions@ in the specification.
38+--
39+-- connection options
40+data ConnectionOptions = ConnectionOptions {
41+ -- | chunkSize
42+ connectionOptionsChunkSize :: (GHC.Maybe.Maybe GHC.Types.Int)
43+ -- | closeSocket
44+ , connectionOptionsCloseSocket :: (GHC.Maybe.Maybe GHC.Types.Bool)
45+ -- | closeSocketDelay: response delay
46+ , connectionOptionsCloseSocketDelay :: (GHC.Maybe.Maybe Delay)
47+ -- | contentLengthHeaderOverride
48+ , connectionOptionsContentLengthHeaderOverride :: (GHC.Maybe.Maybe GHC.Types.Int)
49+ -- | keepAliveOverride
50+ , connectionOptionsKeepAliveOverride :: (GHC.Maybe.Maybe GHC.Types.Bool)
51+ -- | suppressConnectionHeader
52+ , connectionOptionsSuppressConnectionHeader :: (GHC.Maybe.Maybe GHC.Types.Bool)
53+ -- | suppressContentLengthHeader
54+ , connectionOptionsSuppressContentLengthHeader :: (GHC.Maybe.Maybe GHC.Types.Bool)
55+ } deriving (GHC.Show.Show
56+ , GHC.Classes.Eq)
57+instance Data.Aeson.Types.ToJSON.ToJSON ConnectionOptions
58+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("chunkSize" Data.Aeson.Types.ToJSON..=)) (connectionOptionsChunkSize obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("closeSocket" Data.Aeson.Types.ToJSON..=)) (connectionOptionsCloseSocket obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("closeSocketDelay" Data.Aeson.Types.ToJSON..=)) (connectionOptionsCloseSocketDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentLengthHeaderOverride" Data.Aeson.Types.ToJSON..=)) (connectionOptionsContentLengthHeaderOverride obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("keepAliveOverride" Data.Aeson.Types.ToJSON..=)) (connectionOptionsKeepAliveOverride obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("suppressConnectionHeader" Data.Aeson.Types.ToJSON..=)) (connectionOptionsSuppressConnectionHeader obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("suppressContentLengthHeader" Data.Aeson.Types.ToJSON..=)) (connectionOptionsSuppressContentLengthHeader obj) : GHC.Base.mempty))
59+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("chunkSize" Data.Aeson.Types.ToJSON..=)) (connectionOptionsChunkSize obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("closeSocket" Data.Aeson.Types.ToJSON..=)) (connectionOptionsCloseSocket obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("closeSocketDelay" Data.Aeson.Types.ToJSON..=)) (connectionOptionsCloseSocketDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentLengthHeaderOverride" Data.Aeson.Types.ToJSON..=)) (connectionOptionsContentLengthHeaderOverride obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("keepAliveOverride" Data.Aeson.Types.ToJSON..=)) (connectionOptionsKeepAliveOverride obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("suppressConnectionHeader" Data.Aeson.Types.ToJSON..=)) (connectionOptionsSuppressConnectionHeader obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("suppressContentLengthHeader" Data.Aeson.Types.ToJSON..=)) (connectionOptionsSuppressContentLengthHeader obj) : GHC.Base.mempty)))
60+instance Data.Aeson.Types.FromJSON.FromJSON ConnectionOptions
61+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "ConnectionOptions" (\obj -> ((((((GHC.Base.pure ConnectionOptions GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "chunkSize")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "closeSocket")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "closeSocketDelay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentLengthHeaderOverride")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "keepAliveOverride")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "suppressConnectionHeader")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "suppressContentLengthHeader"))
62+-- | Create a new 'ConnectionOptions' with all required fields.
63+mkConnectionOptions :: ConnectionOptions
64+mkConnectionOptions = ConnectionOptions{connectionOptionsChunkSize = GHC.Maybe.Nothing,
65+ connectionOptionsCloseSocket = GHC.Maybe.Nothing,
66+ connectionOptionsCloseSocketDelay = GHC.Maybe.Nothing,
67+ connectionOptionsContentLengthHeaderOverride = GHC.Maybe.Nothing,
68+ connectionOptionsKeepAliveOverride = GHC.Maybe.Nothing,
69+ connectionOptionsSuppressConnectionHeader = GHC.Maybe.Nothing,
70+ connectionOptionsSuppressContentLengthHeader = GHC.Maybe.Nothing}
src/MockServer/Types/ConnectionOptions.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.ConnectionOptions where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data ConnectionOptions
6+instance Show ConnectionOptions
7+instance Eq ConnectionOptions
8+instance FromJSON ConnectionOptions
9+instance ToJSON ConnectionOptions
src/MockServer/Types/Delay.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Delay
7+module MockServer.Types.Delay where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.Delay@ in the specification.
37+--
38+-- response delay
39+data Delay = Delay {
40+ -- | timeUnit
41+ delayTimeUnit :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | value
43+ , delayValue :: (GHC.Maybe.Maybe GHC.Types.Int)
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON Delay
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeUnit" Data.Aeson.Types.ToJSON..=)) (delayTimeUnit obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("value" Data.Aeson.Types.ToJSON..=)) (delayValue obj) : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeUnit" Data.Aeson.Types.ToJSON..=)) (delayTimeUnit obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("value" Data.Aeson.Types.ToJSON..=)) (delayValue obj) : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON Delay
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "Delay" (\obj -> (GHC.Base.pure Delay GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "timeUnit")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "value"))
51+-- | Create a new 'Delay' with all required fields.
52+mkDelay :: Delay
53+mkDelay = Delay{delayTimeUnit = GHC.Maybe.Nothing,
54+ delayValue = GHC.Maybe.Nothing}
src/MockServer/Types/Delay.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.Delay where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data Delay
6+instance Show Delay
7+instance Eq Delay
8+instance FromJSON Delay
9+instance ToJSON Delay
src/MockServer/Types/Expectation.hsnew file+107
@@ -0,0 +1,107 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Expectation
7+module MockServer.Types.Expectation where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.HttpClassCallback
36+import {-# SOURCE #-} MockServer.Types.HttpError
37+import {-# SOURCE #-} MockServer.Types.HttpForward
38+import {-# SOURCE #-} MockServer.Types.HttpObjectCallback
39+import {-# SOURCE #-} MockServer.Types.HttpOverrideForwardedRequest
40+import {-# SOURCE #-} MockServer.Types.HttpResponse
41+import {-# SOURCE #-} MockServer.Types.HttpTemplate
42+import {-# SOURCE #-} MockServer.Types.OpenAPIDefinition
43+import {-# SOURCE #-} MockServer.Types.RequestDefinition
44+import {-# SOURCE #-} MockServer.Types.TimeToLive
45+import {-# SOURCE #-} MockServer.Types.Times
46+
47+-- | Defines the object schema located at @components.schemas.Expectation@ in the specification.
48+--
49+--
50+data Expectation = Expectation {
51+ -- | httpError
52+ expectationHttpError :: (GHC.Maybe.Maybe HttpError)
53+ -- | httpForward
54+ , expectationHttpForward :: (GHC.Maybe.Maybe HttpForward)
55+ -- | httpForwardClassCallback
56+ , expectationHttpForwardClassCallback :: (GHC.Maybe.Maybe HttpClassCallback)
57+ -- | httpForwardObjectCallback
58+ , expectationHttpForwardObjectCallback :: (GHC.Maybe.Maybe HttpObjectCallback)
59+ -- | httpForwardTemplate
60+ , expectationHttpForwardTemplate :: (GHC.Maybe.Maybe HttpTemplate)
61+ -- | httpOverrideForwardedRequest
62+ , expectationHttpOverrideForwardedRequest :: (GHC.Maybe.Maybe HttpOverrideForwardedRequest)
63+ -- | httpRequest
64+ , expectationHttpRequest :: (GHC.Maybe.Maybe RequestDefinition)
65+ -- | httpResponse
66+ , expectationHttpResponse :: (GHC.Maybe.Maybe HttpResponse)
67+ -- | httpResponseClassCallback
68+ , expectationHttpResponseClassCallback :: (GHC.Maybe.Maybe HttpClassCallback)
69+ -- | httpResponseObjectCallback
70+ , expectationHttpResponseObjectCallback :: (GHC.Maybe.Maybe HttpObjectCallback)
71+ -- | httpResponseTemplate
72+ , expectationHttpResponseTemplate :: (GHC.Maybe.Maybe HttpTemplate)
73+ -- | id
74+ , expectationId :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
75+ -- | openAPIDefinition
76+ , expectationOpenAPIDefinition :: (GHC.Maybe.Maybe OpenAPIDefinition)
77+ -- | priority
78+ , expectationPriority :: (GHC.Maybe.Maybe GHC.Types.Int)
79+ -- | timeToLive
80+ , expectationTimeToLive :: (GHC.Maybe.Maybe TimeToLive)
81+ -- | times
82+ , expectationTimes :: (GHC.Maybe.Maybe Times)
83+ } deriving (GHC.Show.Show
84+ , GHC.Classes.Eq)
85+instance Data.Aeson.Types.ToJSON.ToJSON Expectation
86+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpError" Data.Aeson.Types.ToJSON..=)) (expectationHttpError obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForward" Data.Aeson.Types.ToJSON..=)) (expectationHttpForward obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForwardClassCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpForwardClassCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForwardObjectCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpForwardObjectCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForwardTemplate" Data.Aeson.Types.ToJSON..=)) (expectationHttpForwardTemplate obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpOverrideForwardedRequest" Data.Aeson.Types.ToJSON..=)) (expectationHttpOverrideForwardedRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequest" Data.Aeson.Types.ToJSON..=)) (expectationHttpRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponse" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponse obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponseClassCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponseClassCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponseObjectCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponseObjectCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponseTemplate" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponseTemplate obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("id" Data.Aeson.Types.ToJSON..=)) (expectationId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("openAPIDefinition" Data.Aeson.Types.ToJSON..=)) (expectationOpenAPIDefinition obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("priority" Data.Aeson.Types.ToJSON..=)) (expectationPriority obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeToLive" Data.Aeson.Types.ToJSON..=)) (expectationTimeToLive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("times" Data.Aeson.Types.ToJSON..=)) (expectationTimes obj) : GHC.Base.mempty))
87+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpError" Data.Aeson.Types.ToJSON..=)) (expectationHttpError obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForward" Data.Aeson.Types.ToJSON..=)) (expectationHttpForward obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForwardClassCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpForwardClassCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForwardObjectCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpForwardObjectCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpForwardTemplate" Data.Aeson.Types.ToJSON..=)) (expectationHttpForwardTemplate obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpOverrideForwardedRequest" Data.Aeson.Types.ToJSON..=)) (expectationHttpOverrideForwardedRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequest" Data.Aeson.Types.ToJSON..=)) (expectationHttpRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponse" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponse obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponseClassCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponseClassCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponseObjectCallback" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponseObjectCallback obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponseTemplate" Data.Aeson.Types.ToJSON..=)) (expectationHttpResponseTemplate obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("id" Data.Aeson.Types.ToJSON..=)) (expectationId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("openAPIDefinition" Data.Aeson.Types.ToJSON..=)) (expectationOpenAPIDefinition obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("priority" Data.Aeson.Types.ToJSON..=)) (expectationPriority obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeToLive" Data.Aeson.Types.ToJSON..=)) (expectationTimeToLive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("times" Data.Aeson.Types.ToJSON..=)) (expectationTimes obj) : GHC.Base.mempty)))
88+instance Data.Aeson.Types.FromJSON.FromJSON Expectation
89+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "Expectation" (\obj -> (((((((((((((((GHC.Base.pure Expectation GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpError")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpForward")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpForwardClassCallback")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpForwardObjectCallback")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpForwardTemplate")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpOverrideForwardedRequest")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpRequest")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpResponse")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpResponseClassCallback")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpResponseObjectCallback")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpResponseTemplate")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "id")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "openAPIDefinition")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "priority")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "timeToLive")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "times"))
90+-- | Create a new 'Expectation' with all required fields.
91+mkExpectation :: Expectation
92+mkExpectation = Expectation{expectationHttpError = GHC.Maybe.Nothing,
93+ expectationHttpForward = GHC.Maybe.Nothing,
94+ expectationHttpForwardClassCallback = GHC.Maybe.Nothing,
95+ expectationHttpForwardObjectCallback = GHC.Maybe.Nothing,
96+ expectationHttpForwardTemplate = GHC.Maybe.Nothing,
97+ expectationHttpOverrideForwardedRequest = GHC.Maybe.Nothing,
98+ expectationHttpRequest = GHC.Maybe.Nothing,
99+ expectationHttpResponse = GHC.Maybe.Nothing,
100+ expectationHttpResponseClassCallback = GHC.Maybe.Nothing,
101+ expectationHttpResponseObjectCallback = GHC.Maybe.Nothing,
102+ expectationHttpResponseTemplate = GHC.Maybe.Nothing,
103+ expectationId = GHC.Maybe.Nothing,
104+ expectationOpenAPIDefinition = GHC.Maybe.Nothing,
105+ expectationPriority = GHC.Maybe.Nothing,
106+ expectationTimeToLive = GHC.Maybe.Nothing,
107+ expectationTimes = GHC.Maybe.Nothing}
src/MockServer/Types/Expectation.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.Expectation where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data Expectation
6+instance Show Expectation
7+instance Eq Expectation
8+instance FromJSON Expectation
9+instance ToJSON Expectation
src/MockServer/Types/ExpectationId.hsnew file+52
@@ -0,0 +1,52 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema ExpectationId
7+module MockServer.Types.ExpectationId where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.ExpectationId@ in the specification.
37+--
38+--
39+data ExpectationId = ExpectationId {
40+ -- | id
41+ expectationIdId :: Data.Text.Internal.Text
42+ } deriving (GHC.Show.Show
43+ , GHC.Classes.Eq)
44+instance Data.Aeson.Types.ToJSON.ToJSON ExpectationId
45+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (["id" Data.Aeson.Types.ToJSON..= expectationIdId obj] : GHC.Base.mempty))
46+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (["id" Data.Aeson.Types.ToJSON..= expectationIdId obj] : GHC.Base.mempty)))
47+instance Data.Aeson.Types.FromJSON.FromJSON ExpectationId
48+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "ExpectationId" (\obj -> GHC.Base.pure ExpectationId GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..: "id"))
49+-- | Create a new 'ExpectationId' with all required fields.
50+mkExpectationId :: Data.Text.Internal.Text -- ^ 'expectationIdId'
51+ -> ExpectationId
52+mkExpectationId expectationIdId = ExpectationId{expectationIdId = expectationIdId}
src/MockServer/Types/ExpectationId.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.ExpectationId where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data ExpectationId
6+instance Show ExpectationId
7+instance Eq ExpectationId
8+instance FromJSON ExpectationId
9+instance ToJSON ExpectationId
src/MockServer/Types/Expectations.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Expectations
7+module MockServer.Types.Expectations where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Expectation
36+
37+-- | Defines the oneOf schema located at @components.schemas.Expectations.oneOf@ in the specification.
38+--
39+--
40+data ExpectationsVariants =
41+ ExpectationsExpectation Expectation
42+ | ExpectationsListTExpectation ([Expectation])
43+ deriving (GHC.Show.Show, GHC.Classes.Eq)
44+instance Data.Aeson.Types.ToJSON.ToJSON ExpectationsVariants
45+ where toJSON (ExpectationsExpectation a) = Data.Aeson.Types.ToJSON.toJSON a
46+ toJSON (ExpectationsListTExpectation a) = Data.Aeson.Types.ToJSON.toJSON a
47+instance Data.Aeson.Types.FromJSON.FromJSON ExpectationsVariants
48+ where parseJSON val = case (ExpectationsExpectation Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((ExpectationsListTExpectation Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
49+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
50+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
51+-- | Defines an alias for the schema located at @components.schemas.Expectations.oneOf@ in the specification.
52+--
53+--
54+type Expectations = ExpectationsVariants
src/MockServer/Types/Expectations.hs-bootnew file+10
@@ -0,0 +1,10 @@
1+module MockServer.Types.Expectations where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data ExpectationsVariants
6+instance Show ExpectationsVariants
7+instance Eq ExpectationsVariants
8+instance FromJSON ExpectationsVariants
9+instance ToJSON ExpectationsVariants
10+type Expectations = ExpectationsVariants
src/MockServer/Types/HttpClassCallback.hsnew file+55
@@ -0,0 +1,55 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpClassCallback
7+module MockServer.Types.HttpClassCallback where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+
37+-- | Defines the object schema located at @components.schemas.HttpClassCallback@ in the specification.
38+--
39+--
40+data HttpClassCallback = HttpClassCallback {
41+ -- | callbackClass
42+ httpClassCallbackCallbackClass :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
43+ -- | delay: response delay
44+ , httpClassCallbackDelay :: (GHC.Maybe.Maybe Delay)
45+ } deriving (GHC.Show.Show
46+ , GHC.Classes.Eq)
47+instance Data.Aeson.Types.ToJSON.ToJSON HttpClassCallback
48+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("callbackClass" Data.Aeson.Types.ToJSON..=)) (httpClassCallbackCallbackClass obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpClassCallbackDelay obj) : GHC.Base.mempty))
49+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("callbackClass" Data.Aeson.Types.ToJSON..=)) (httpClassCallbackCallbackClass obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpClassCallbackDelay obj) : GHC.Base.mempty)))
50+instance Data.Aeson.Types.FromJSON.FromJSON HttpClassCallback
51+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpClassCallback" (\obj -> (GHC.Base.pure HttpClassCallback GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "callbackClass")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay"))
52+-- | Create a new 'HttpClassCallback' with all required fields.
53+mkHttpClassCallback :: HttpClassCallback
54+mkHttpClassCallback = HttpClassCallback{httpClassCallbackCallbackClass = GHC.Maybe.Nothing,
55+ httpClassCallbackDelay = GHC.Maybe.Nothing}
src/MockServer/Types/HttpClassCallback.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.HttpClassCallback where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpClassCallback
6+instance Show HttpClassCallback
7+instance Eq HttpClassCallback
8+instance FromJSON HttpClassCallback
9+instance ToJSON HttpClassCallback
src/MockServer/Types/HttpError.hsnew file+58
@@ -0,0 +1,58 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpError
7+module MockServer.Types.HttpError where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+
37+-- | Defines the object schema located at @components.schemas.HttpError@ in the specification.
38+--
39+--
40+data HttpError = HttpError {
41+ -- | delay: response delay
42+ httpErrorDelay :: (GHC.Maybe.Maybe Delay)
43+ -- | dropConnection
44+ , httpErrorDropConnection :: (GHC.Maybe.Maybe GHC.Types.Bool)
45+ -- | responseBytes
46+ , httpErrorResponseBytes :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
47+ } deriving (GHC.Show.Show
48+ , GHC.Classes.Eq)
49+instance Data.Aeson.Types.ToJSON.ToJSON HttpError
50+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpErrorDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("dropConnection" Data.Aeson.Types.ToJSON..=)) (httpErrorDropConnection obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseBytes" Data.Aeson.Types.ToJSON..=)) (httpErrorResponseBytes obj) : GHC.Base.mempty))
51+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpErrorDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("dropConnection" Data.Aeson.Types.ToJSON..=)) (httpErrorDropConnection obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseBytes" Data.Aeson.Types.ToJSON..=)) (httpErrorResponseBytes obj) : GHC.Base.mempty)))
52+instance Data.Aeson.Types.FromJSON.FromJSON HttpError
53+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpError" (\obj -> ((GHC.Base.pure HttpError GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "dropConnection")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "responseBytes"))
54+-- | Create a new 'HttpError' with all required fields.
55+mkHttpError :: HttpError
56+mkHttpError = HttpError{httpErrorDelay = GHC.Maybe.Nothing,
57+ httpErrorDropConnection = GHC.Maybe.Nothing,
58+ httpErrorResponseBytes = GHC.Maybe.Nothing}
src/MockServer/Types/HttpError.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.HttpError where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpError
6+instance Show HttpError
7+instance Eq HttpError
8+instance FromJSON HttpError
9+instance ToJSON HttpError
src/MockServer/Types/HttpForward.hsnew file+79
@@ -0,0 +1,79 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpForward
7+module MockServer.Types.HttpForward where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+
37+-- | Defines the object schema located at @components.schemas.HttpForward@ in the specification.
38+--
39+--
40+data HttpForward = HttpForward {
41+ -- | delay: response delay
42+ httpForwardDelay :: (GHC.Maybe.Maybe Delay)
43+ -- | host
44+ , httpForwardHost :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
45+ -- | port
46+ , httpForwardPort :: (GHC.Maybe.Maybe GHC.Types.Int)
47+ -- | scheme
48+ , httpForwardScheme :: (GHC.Maybe.Maybe HttpForwardScheme)
49+ } deriving (GHC.Show.Show
50+ , GHC.Classes.Eq)
51+instance Data.Aeson.Types.ToJSON.ToJSON HttpForward
52+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpForwardDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("host" Data.Aeson.Types.ToJSON..=)) (httpForwardHost obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("port" Data.Aeson.Types.ToJSON..=)) (httpForwardPort obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("scheme" Data.Aeson.Types.ToJSON..=)) (httpForwardScheme obj) : GHC.Base.mempty))
53+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpForwardDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("host" Data.Aeson.Types.ToJSON..=)) (httpForwardHost obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("port" Data.Aeson.Types.ToJSON..=)) (httpForwardPort obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("scheme" Data.Aeson.Types.ToJSON..=)) (httpForwardScheme obj) : GHC.Base.mempty)))
54+instance Data.Aeson.Types.FromJSON.FromJSON HttpForward
55+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpForward" (\obj -> (((GHC.Base.pure HttpForward GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "host")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "port")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "scheme"))
56+-- | Create a new 'HttpForward' with all required fields.
57+mkHttpForward :: HttpForward
58+mkHttpForward = HttpForward{httpForwardDelay = GHC.Maybe.Nothing,
59+ httpForwardHost = GHC.Maybe.Nothing,
60+ httpForwardPort = GHC.Maybe.Nothing,
61+ httpForwardScheme = GHC.Maybe.Nothing}
62+-- | Defines the enum schema located at @components.schemas.HttpForward.properties.scheme@ in the specification.
63+--
64+--
65+data HttpForwardScheme =
66+ HttpForwardSchemeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
67+ | HttpForwardSchemeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
68+ | HttpForwardSchemeEnumHTTP -- ^ Represents the JSON value @"HTTP"@
69+ | HttpForwardSchemeEnumHTTPS -- ^ Represents the JSON value @"HTTPS"@
70+ deriving (GHC.Show.Show, GHC.Classes.Eq)
71+instance Data.Aeson.Types.ToJSON.ToJSON HttpForwardScheme
72+ where toJSON (HttpForwardSchemeOther val) = val
73+ toJSON (HttpForwardSchemeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
74+ toJSON (HttpForwardSchemeEnumHTTP) = "HTTP"
75+ toJSON (HttpForwardSchemeEnumHTTPS) = "HTTPS"
76+instance Data.Aeson.Types.FromJSON.FromJSON HttpForwardScheme
77+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "HTTP" -> HttpForwardSchemeEnumHTTP
78+ | val GHC.Classes.== "HTTPS" -> HttpForwardSchemeEnumHTTPS
79+ | GHC.Base.otherwise -> HttpForwardSchemeOther val)
src/MockServer/Types/HttpForward.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.HttpForward where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpForward
6+instance Show HttpForward
7+instance Eq HttpForward
8+instance FromJSON HttpForward
9+instance ToJSON HttpForward
10+data HttpForwardScheme
11+instance Show HttpForwardScheme
12+instance Eq HttpForwardScheme
13+instance FromJSON HttpForwardScheme
14+instance ToJSON HttpForwardScheme
src/MockServer/Types/HttpObjectCallback.hsnew file+58
@@ -0,0 +1,58 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpObjectCallback
7+module MockServer.Types.HttpObjectCallback where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+
37+-- | Defines the object schema located at @components.schemas.HttpObjectCallback@ in the specification.
38+--
39+--
40+data HttpObjectCallback = HttpObjectCallback {
41+ -- | clientId
42+ httpObjectCallbackClientId :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
43+ -- | delay: response delay
44+ , httpObjectCallbackDelay :: (GHC.Maybe.Maybe Delay)
45+ -- | responseCallback
46+ , httpObjectCallbackResponseCallback :: (GHC.Maybe.Maybe GHC.Types.Bool)
47+ } deriving (GHC.Show.Show
48+ , GHC.Classes.Eq)
49+instance Data.Aeson.Types.ToJSON.ToJSON HttpObjectCallback
50+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("clientId" Data.Aeson.Types.ToJSON..=)) (httpObjectCallbackClientId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpObjectCallbackDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseCallback" Data.Aeson.Types.ToJSON..=)) (httpObjectCallbackResponseCallback obj) : GHC.Base.mempty))
51+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("clientId" Data.Aeson.Types.ToJSON..=)) (httpObjectCallbackClientId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpObjectCallbackDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseCallback" Data.Aeson.Types.ToJSON..=)) (httpObjectCallbackResponseCallback obj) : GHC.Base.mempty)))
52+instance Data.Aeson.Types.FromJSON.FromJSON HttpObjectCallback
53+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpObjectCallback" (\obj -> ((GHC.Base.pure HttpObjectCallback GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "clientId")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "responseCallback"))
54+-- | Create a new 'HttpObjectCallback' with all required fields.
55+mkHttpObjectCallback :: HttpObjectCallback
56+mkHttpObjectCallback = HttpObjectCallback{httpObjectCallbackClientId = GHC.Maybe.Nothing,
57+ httpObjectCallbackDelay = GHC.Maybe.Nothing,
58+ httpObjectCallbackResponseCallback = GHC.Maybe.Nothing}
src/MockServer/Types/HttpObjectCallback.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.HttpObjectCallback where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpObjectCallback
6+instance Show HttpObjectCallback
7+instance Eq HttpObjectCallback
8+instance FromJSON HttpObjectCallback
9+instance ToJSON HttpObjectCallback
src/MockServer/Types/HttpOverrideForwardedRequest.hsnew file+281
@@ -0,0 +1,281 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpOverrideForwardedRequest
7+module MockServer.Types.HttpOverrideForwardedRequest where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+import {-# SOURCE #-} MockServer.Types.HttpRequest
37+import {-# SOURCE #-} MockServer.Types.HttpResponse
38+import {-# SOURCE #-} MockServer.Types.KeyToMultiValue
39+import {-# SOURCE #-} MockServer.Types.KeyToValue
40+
41+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf@ in the specification.
42+--
43+--
44+data HttpOverrideForwardedRequestOneOf1 = HttpOverrideForwardedRequestOneOf1 {
45+ -- | delay: response delay
46+ httpOverrideForwardedRequestOneOf1Delay :: (GHC.Maybe.Maybe Delay)
47+ -- | requestModifier
48+ , httpOverrideForwardedRequestOneOf1RequestModifier :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1RequestModifier)
49+ -- | requestOverride
50+ , httpOverrideForwardedRequestOneOf1RequestOverride :: (GHC.Maybe.Maybe HttpRequest)
51+ -- | responseModifier
52+ , httpOverrideForwardedRequestOneOf1ResponseModifier :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1ResponseModifier)
53+ -- | responseOverride
54+ , httpOverrideForwardedRequestOneOf1ResponseOverride :: (GHC.Maybe.Maybe HttpResponse)
55+ } deriving (GHC.Show.Show
56+ , GHC.Classes.Eq)
57+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1
58+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1Delay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("requestModifier" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifier obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("requestOverride" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestOverride obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseModifier" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifier obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseOverride" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseOverride obj) : GHC.Base.mempty))
59+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1Delay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("requestModifier" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifier obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("requestOverride" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestOverride obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseModifier" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifier obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("responseOverride" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseOverride obj) : GHC.Base.mempty)))
60+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1
61+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1" (\obj -> ((((GHC.Base.pure HttpOverrideForwardedRequestOneOf1 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "requestModifier")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "requestOverride")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "responseModifier")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "responseOverride"))
62+-- | Create a new 'HttpOverrideForwardedRequestOneOf1' with all required fields.
63+mkHttpOverrideForwardedRequestOneOf1 :: HttpOverrideForwardedRequestOneOf1
64+mkHttpOverrideForwardedRequestOneOf1 = HttpOverrideForwardedRequestOneOf1{httpOverrideForwardedRequestOneOf1Delay = GHC.Maybe.Nothing,
65+ httpOverrideForwardedRequestOneOf1RequestModifier = GHC.Maybe.Nothing,
66+ httpOverrideForwardedRequestOneOf1RequestOverride = GHC.Maybe.Nothing,
67+ httpOverrideForwardedRequestOneOf1ResponseModifier = GHC.Maybe.Nothing,
68+ httpOverrideForwardedRequestOneOf1ResponseOverride = GHC.Maybe.Nothing}
69+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.requestModifier@ in the specification.
70+--
71+--
72+data HttpOverrideForwardedRequestOneOf1RequestModifier = HttpOverrideForwardedRequestOneOf1RequestModifier {
73+ -- | cookies
74+ httpOverrideForwardedRequestOneOf1RequestModifierCookies :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1RequestModifierCookies)
75+ -- | headers
76+ , httpOverrideForwardedRequestOneOf1RequestModifierHeaders :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1RequestModifierHeaders)
77+ -- | path
78+ , httpOverrideForwardedRequestOneOf1RequestModifierPath :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1RequestModifierPath)
79+ -- | queryStringParameters
80+ , httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters)
81+ } deriving (GHC.Show.Show
82+ , GHC.Classes.Eq)
83+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1RequestModifier
84+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeaders obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("path" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierPath obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryStringParameters" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters obj) : GHC.Base.mempty))
85+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeaders obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("path" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierPath obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryStringParameters" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters obj) : GHC.Base.mempty)))
86+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1RequestModifier
87+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1RequestModifier" (\obj -> (((GHC.Base.pure HttpOverrideForwardedRequestOneOf1RequestModifier GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "cookies")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "headers")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "path")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "queryStringParameters"))
88+-- | Create a new 'HttpOverrideForwardedRequestOneOf1RequestModifier' with all required fields.
89+mkHttpOverrideForwardedRequestOneOf1RequestModifier :: HttpOverrideForwardedRequestOneOf1RequestModifier
90+mkHttpOverrideForwardedRequestOneOf1RequestModifier = HttpOverrideForwardedRequestOneOf1RequestModifier{httpOverrideForwardedRequestOneOf1RequestModifierCookies = GHC.Maybe.Nothing,
91+ httpOverrideForwardedRequestOneOf1RequestModifierHeaders = GHC.Maybe.Nothing,
92+ httpOverrideForwardedRequestOneOf1RequestModifierPath = GHC.Maybe.Nothing,
93+ httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters = GHC.Maybe.Nothing}
94+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.requestModifier.properties.cookies@ in the specification.
95+--
96+--
97+data HttpOverrideForwardedRequestOneOf1RequestModifierCookies = HttpOverrideForwardedRequestOneOf1RequestModifierCookies {
98+ -- | add
99+ httpOverrideForwardedRequestOneOf1RequestModifierCookiesAdd :: (GHC.Maybe.Maybe KeyToValue)
100+ -- | remove
101+ , httpOverrideForwardedRequestOneOf1RequestModifierCookiesRemove :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
102+ -- | replace
103+ , httpOverrideForwardedRequestOneOf1RequestModifierCookiesReplace :: (GHC.Maybe.Maybe KeyToValue)
104+ } deriving (GHC.Show.Show
105+ , GHC.Classes.Eq)
106+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierCookies
107+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookiesAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookiesRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookiesReplace obj) : GHC.Base.mempty))
108+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookiesAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookiesRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierCookiesReplace obj) : GHC.Base.mempty)))
109+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierCookies
110+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1RequestModifierCookies" (\obj -> ((GHC.Base.pure HttpOverrideForwardedRequestOneOf1RequestModifierCookies GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "add")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "remove")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "replace"))
111+-- | Create a new 'HttpOverrideForwardedRequestOneOf1RequestModifierCookies' with all required fields.
112+mkHttpOverrideForwardedRequestOneOf1RequestModifierCookies :: HttpOverrideForwardedRequestOneOf1RequestModifierCookies
113+mkHttpOverrideForwardedRequestOneOf1RequestModifierCookies = HttpOverrideForwardedRequestOneOf1RequestModifierCookies{httpOverrideForwardedRequestOneOf1RequestModifierCookiesAdd = GHC.Maybe.Nothing,
114+ httpOverrideForwardedRequestOneOf1RequestModifierCookiesRemove = GHC.Maybe.Nothing,
115+ httpOverrideForwardedRequestOneOf1RequestModifierCookiesReplace = GHC.Maybe.Nothing}
116+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.requestModifier.properties.headers@ in the specification.
117+--
118+--
119+data HttpOverrideForwardedRequestOneOf1RequestModifierHeaders = HttpOverrideForwardedRequestOneOf1RequestModifierHeaders {
120+ -- | add
121+ httpOverrideForwardedRequestOneOf1RequestModifierHeadersAdd :: (GHC.Maybe.Maybe KeyToMultiValue)
122+ -- | remove
123+ , httpOverrideForwardedRequestOneOf1RequestModifierHeadersRemove :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
124+ -- | replace
125+ , httpOverrideForwardedRequestOneOf1RequestModifierHeadersReplace :: (GHC.Maybe.Maybe KeyToMultiValue)
126+ } deriving (GHC.Show.Show
127+ , GHC.Classes.Eq)
128+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
129+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeadersAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeadersRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeadersReplace obj) : GHC.Base.mempty))
130+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeadersAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeadersRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierHeadersReplace obj) : GHC.Base.mempty)))
131+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
132+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1RequestModifierHeaders" (\obj -> ((GHC.Base.pure HttpOverrideForwardedRequestOneOf1RequestModifierHeaders GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "add")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "remove")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "replace"))
133+-- | Create a new 'HttpOverrideForwardedRequestOneOf1RequestModifierHeaders' with all required fields.
134+mkHttpOverrideForwardedRequestOneOf1RequestModifierHeaders :: HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
135+mkHttpOverrideForwardedRequestOneOf1RequestModifierHeaders = HttpOverrideForwardedRequestOneOf1RequestModifierHeaders{httpOverrideForwardedRequestOneOf1RequestModifierHeadersAdd = GHC.Maybe.Nothing,
136+ httpOverrideForwardedRequestOneOf1RequestModifierHeadersRemove = GHC.Maybe.Nothing,
137+ httpOverrideForwardedRequestOneOf1RequestModifierHeadersReplace = GHC.Maybe.Nothing}
138+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.requestModifier.properties.path@ in the specification.
139+--
140+--
141+data HttpOverrideForwardedRequestOneOf1RequestModifierPath = HttpOverrideForwardedRequestOneOf1RequestModifierPath {
142+ -- | regex
143+ httpOverrideForwardedRequestOneOf1RequestModifierPathRegex :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
144+ -- | substitution
145+ , httpOverrideForwardedRequestOneOf1RequestModifierPathSubstitution :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
146+ } deriving (GHC.Show.Show
147+ , GHC.Classes.Eq)
148+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierPath
149+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("regex" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierPathRegex obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("substitution" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierPathSubstitution obj) : GHC.Base.mempty))
150+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("regex" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierPathRegex obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("substitution" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierPathSubstitution obj) : GHC.Base.mempty)))
151+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierPath
152+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1RequestModifierPath" (\obj -> (GHC.Base.pure HttpOverrideForwardedRequestOneOf1RequestModifierPath GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "regex")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "substitution"))
153+-- | Create a new 'HttpOverrideForwardedRequestOneOf1RequestModifierPath' with all required fields.
154+mkHttpOverrideForwardedRequestOneOf1RequestModifierPath :: HttpOverrideForwardedRequestOneOf1RequestModifierPath
155+mkHttpOverrideForwardedRequestOneOf1RequestModifierPath = HttpOverrideForwardedRequestOneOf1RequestModifierPath{httpOverrideForwardedRequestOneOf1RequestModifierPathRegex = GHC.Maybe.Nothing,
156+ httpOverrideForwardedRequestOneOf1RequestModifierPathSubstitution = GHC.Maybe.Nothing}
157+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.requestModifier.properties.queryStringParameters@ in the specification.
158+--
159+--
160+data HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters = HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters {
161+ -- | add
162+ httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersAdd :: (GHC.Maybe.Maybe KeyToMultiValue)
163+ -- | remove
164+ , httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersRemove :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
165+ -- | replace
166+ , httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersReplace :: (GHC.Maybe.Maybe KeyToMultiValue)
167+ } deriving (GHC.Show.Show
168+ , GHC.Classes.Eq)
169+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
170+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersReplace obj) : GHC.Base.mempty))
171+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersReplace obj) : GHC.Base.mempty)))
172+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
173+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters" (\obj -> ((GHC.Base.pure HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "add")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "remove")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "replace"))
174+-- | Create a new 'HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters' with all required fields.
175+mkHttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters :: HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
176+mkHttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters = HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters{httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersAdd = GHC.Maybe.Nothing,
177+ httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersRemove = GHC.Maybe.Nothing,
178+ httpOverrideForwardedRequestOneOf1RequestModifierQueryStringParametersReplace = GHC.Maybe.Nothing}
179+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.responseModifier@ in the specification.
180+--
181+--
182+data HttpOverrideForwardedRequestOneOf1ResponseModifier = HttpOverrideForwardedRequestOneOf1ResponseModifier {
183+ -- | cookies
184+ httpOverrideForwardedRequestOneOf1ResponseModifierCookies :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1ResponseModifierCookies)
185+ -- | headers
186+ , httpOverrideForwardedRequestOneOf1ResponseModifierHeaders :: (GHC.Maybe.Maybe HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders)
187+ } deriving (GHC.Show.Show
188+ , GHC.Classes.Eq)
189+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1ResponseModifier
190+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeaders obj) : GHC.Base.mempty))
191+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeaders obj) : GHC.Base.mempty)))
192+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1ResponseModifier
193+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1ResponseModifier" (\obj -> (GHC.Base.pure HttpOverrideForwardedRequestOneOf1ResponseModifier GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "cookies")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "headers"))
194+-- | Create a new 'HttpOverrideForwardedRequestOneOf1ResponseModifier' with all required fields.
195+mkHttpOverrideForwardedRequestOneOf1ResponseModifier :: HttpOverrideForwardedRequestOneOf1ResponseModifier
196+mkHttpOverrideForwardedRequestOneOf1ResponseModifier = HttpOverrideForwardedRequestOneOf1ResponseModifier{httpOverrideForwardedRequestOneOf1ResponseModifierCookies = GHC.Maybe.Nothing,
197+ httpOverrideForwardedRequestOneOf1ResponseModifierHeaders = GHC.Maybe.Nothing}
198+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.responseModifier.properties.cookies@ in the specification.
199+--
200+--
201+data HttpOverrideForwardedRequestOneOf1ResponseModifierCookies = HttpOverrideForwardedRequestOneOf1ResponseModifierCookies {
202+ -- | add
203+ httpOverrideForwardedRequestOneOf1ResponseModifierCookiesAdd :: (GHC.Maybe.Maybe KeyToValue)
204+ -- | remove
205+ , httpOverrideForwardedRequestOneOf1ResponseModifierCookiesRemove :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
206+ -- | replace
207+ , httpOverrideForwardedRequestOneOf1ResponseModifierCookiesReplace :: (GHC.Maybe.Maybe KeyToValue)
208+ } deriving (GHC.Show.Show
209+ , GHC.Classes.Eq)
210+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
211+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookiesAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookiesRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookiesReplace obj) : GHC.Base.mempty))
212+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookiesAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookiesRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierCookiesReplace obj) : GHC.Base.mempty)))
213+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
214+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1ResponseModifierCookies" (\obj -> ((GHC.Base.pure HttpOverrideForwardedRequestOneOf1ResponseModifierCookies GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "add")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "remove")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "replace"))
215+-- | Create a new 'HttpOverrideForwardedRequestOneOf1ResponseModifierCookies' with all required fields.
216+mkHttpOverrideForwardedRequestOneOf1ResponseModifierCookies :: HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
217+mkHttpOverrideForwardedRequestOneOf1ResponseModifierCookies = HttpOverrideForwardedRequestOneOf1ResponseModifierCookies{httpOverrideForwardedRequestOneOf1ResponseModifierCookiesAdd = GHC.Maybe.Nothing,
218+ httpOverrideForwardedRequestOneOf1ResponseModifierCookiesRemove = GHC.Maybe.Nothing,
219+ httpOverrideForwardedRequestOneOf1ResponseModifierCookiesReplace = GHC.Maybe.Nothing}
220+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf.properties.responseModifier.properties.headers@ in the specification.
221+--
222+--
223+data HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders = HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders {
224+ -- | add
225+ httpOverrideForwardedRequestOneOf1ResponseModifierHeadersAdd :: (GHC.Maybe.Maybe KeyToMultiValue)
226+ -- | remove
227+ , httpOverrideForwardedRequestOneOf1ResponseModifierHeadersRemove :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
228+ -- | replace
229+ , httpOverrideForwardedRequestOneOf1ResponseModifierHeadersReplace :: (GHC.Maybe.Maybe KeyToMultiValue)
230+ } deriving (GHC.Show.Show
231+ , GHC.Classes.Eq)
232+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
233+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeadersAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeadersRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeadersReplace obj) : GHC.Base.mempty))
234+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("add" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeadersAdd obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remove" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeadersRemove obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("replace" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf1ResponseModifierHeadersReplace obj) : GHC.Base.mempty)))
235+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
236+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders" (\obj -> ((GHC.Base.pure HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "add")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "remove")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "replace"))
237+-- | Create a new 'HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders' with all required fields.
238+mkHttpOverrideForwardedRequestOneOf1ResponseModifierHeaders :: HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
239+mkHttpOverrideForwardedRequestOneOf1ResponseModifierHeaders = HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders{httpOverrideForwardedRequestOneOf1ResponseModifierHeadersAdd = GHC.Maybe.Nothing,
240+ httpOverrideForwardedRequestOneOf1ResponseModifierHeadersRemove = GHC.Maybe.Nothing,
241+ httpOverrideForwardedRequestOneOf1ResponseModifierHeadersReplace = GHC.Maybe.Nothing}
242+-- | Defines the object schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf@ in the specification.
243+--
244+--
245+data HttpOverrideForwardedRequestOneOf2 = HttpOverrideForwardedRequestOneOf2 {
246+ -- | delay: response delay
247+ httpOverrideForwardedRequestOneOf2Delay :: (GHC.Maybe.Maybe Delay)
248+ -- | httpRequest
249+ , httpOverrideForwardedRequestOneOf2HttpRequest :: (GHC.Maybe.Maybe HttpRequest)
250+ -- | httpResponse
251+ , httpOverrideForwardedRequestOneOf2HttpResponse :: (GHC.Maybe.Maybe HttpResponse)
252+ } deriving (GHC.Show.Show
253+ , GHC.Classes.Eq)
254+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestOneOf2
255+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf2Delay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequest" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf2HttpRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponse" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf2HttpResponse obj) : GHC.Base.mempty))
256+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf2Delay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequest" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf2HttpRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpResponse" Data.Aeson.Types.ToJSON..=)) (httpOverrideForwardedRequestOneOf2HttpResponse obj) : GHC.Base.mempty)))
257+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestOneOf2
258+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpOverrideForwardedRequestOneOf2" (\obj -> ((GHC.Base.pure HttpOverrideForwardedRequestOneOf2 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpRequest")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpResponse"))
259+-- | Create a new 'HttpOverrideForwardedRequestOneOf2' with all required fields.
260+mkHttpOverrideForwardedRequestOneOf2 :: HttpOverrideForwardedRequestOneOf2
261+mkHttpOverrideForwardedRequestOneOf2 = HttpOverrideForwardedRequestOneOf2{httpOverrideForwardedRequestOneOf2Delay = GHC.Maybe.Nothing,
262+ httpOverrideForwardedRequestOneOf2HttpRequest = GHC.Maybe.Nothing,
263+ httpOverrideForwardedRequestOneOf2HttpResponse = GHC.Maybe.Nothing}
264+-- | Defines the oneOf schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf@ in the specification.
265+--
266+--
267+data HttpOverrideForwardedRequestVariants =
268+ HttpOverrideForwardedRequestHttpOverrideForwardedRequestOneOf1 HttpOverrideForwardedRequestOneOf1
269+ | HttpOverrideForwardedRequestHttpOverrideForwardedRequestOneOf2 HttpOverrideForwardedRequestOneOf2
270+ deriving (GHC.Show.Show, GHC.Classes.Eq)
271+instance Data.Aeson.Types.ToJSON.ToJSON HttpOverrideForwardedRequestVariants
272+ where toJSON (HttpOverrideForwardedRequestHttpOverrideForwardedRequestOneOf1 a) = Data.Aeson.Types.ToJSON.toJSON a
273+ toJSON (HttpOverrideForwardedRequestHttpOverrideForwardedRequestOneOf2 a) = Data.Aeson.Types.ToJSON.toJSON a
274+instance Data.Aeson.Types.FromJSON.FromJSON HttpOverrideForwardedRequestVariants
275+ where parseJSON val = case (HttpOverrideForwardedRequestHttpOverrideForwardedRequestOneOf1 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((HttpOverrideForwardedRequestHttpOverrideForwardedRequestOneOf2 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
276+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
277+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
278+-- | Defines an alias for the schema located at @components.schemas.HttpOverrideForwardedRequest.oneOf@ in the specification.
279+--
280+--
281+type HttpOverrideForwardedRequest = HttpOverrideForwardedRequestVariants
src/MockServer/Types/HttpOverrideForwardedRequest.hs-bootnew file+60
@@ -0,0 +1,60 @@
1+module MockServer.Types.HttpOverrideForwardedRequest where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpOverrideForwardedRequestOneOf1
6+instance Show HttpOverrideForwardedRequestOneOf1
7+instance Eq HttpOverrideForwardedRequestOneOf1
8+instance FromJSON HttpOverrideForwardedRequestOneOf1
9+instance ToJSON HttpOverrideForwardedRequestOneOf1
10+data HttpOverrideForwardedRequestOneOf1RequestModifier
11+instance Show HttpOverrideForwardedRequestOneOf1RequestModifier
12+instance Eq HttpOverrideForwardedRequestOneOf1RequestModifier
13+instance FromJSON HttpOverrideForwardedRequestOneOf1RequestModifier
14+instance ToJSON HttpOverrideForwardedRequestOneOf1RequestModifier
15+data HttpOverrideForwardedRequestOneOf1RequestModifierCookies
16+instance Show HttpOverrideForwardedRequestOneOf1RequestModifierCookies
17+instance Eq HttpOverrideForwardedRequestOneOf1RequestModifierCookies
18+instance FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierCookies
19+instance ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierCookies
20+data HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
21+instance Show HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
22+instance Eq HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
23+instance FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
24+instance ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierHeaders
25+data HttpOverrideForwardedRequestOneOf1RequestModifierPath
26+instance Show HttpOverrideForwardedRequestOneOf1RequestModifierPath
27+instance Eq HttpOverrideForwardedRequestOneOf1RequestModifierPath
28+instance FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierPath
29+instance ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierPath
30+data HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
31+instance Show HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
32+instance Eq HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
33+instance FromJSON HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
34+instance ToJSON HttpOverrideForwardedRequestOneOf1RequestModifierQueryStringParameters
35+data HttpOverrideForwardedRequestOneOf1ResponseModifier
36+instance Show HttpOverrideForwardedRequestOneOf1ResponseModifier
37+instance Eq HttpOverrideForwardedRequestOneOf1ResponseModifier
38+instance FromJSON HttpOverrideForwardedRequestOneOf1ResponseModifier
39+instance ToJSON HttpOverrideForwardedRequestOneOf1ResponseModifier
40+data HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
41+instance Show HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
42+instance Eq HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
43+instance FromJSON HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
44+instance ToJSON HttpOverrideForwardedRequestOneOf1ResponseModifierCookies
45+data HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
46+instance Show HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
47+instance Eq HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
48+instance FromJSON HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
49+instance ToJSON HttpOverrideForwardedRequestOneOf1ResponseModifierHeaders
50+data HttpOverrideForwardedRequestOneOf2
51+instance Show HttpOverrideForwardedRequestOneOf2
52+instance Eq HttpOverrideForwardedRequestOneOf2
53+instance FromJSON HttpOverrideForwardedRequestOneOf2
54+instance ToJSON HttpOverrideForwardedRequestOneOf2
55+data HttpOverrideForwardedRequestVariants
56+instance Show HttpOverrideForwardedRequestVariants
57+instance Eq HttpOverrideForwardedRequestVariants
58+instance FromJSON HttpOverrideForwardedRequestVariants
59+instance ToJSON HttpOverrideForwardedRequestVariants
60+type HttpOverrideForwardedRequest = HttpOverrideForwardedRequestVariants
src/MockServer/Types/HttpRequest.hsnew file+83
@@ -0,0 +1,83 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpRequest
7+module MockServer.Types.HttpRequest where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Body
36+import {-# SOURCE #-} MockServer.Types.KeyToMultiValue
37+import {-# SOURCE #-} MockServer.Types.KeyToValue
38+import {-# SOURCE #-} MockServer.Types.SocketAddress
39+import {-# SOURCE #-} MockServer.Types.StringOrJsonSchema
40+
41+-- | Defines the object schema located at @components.schemas.HttpRequest@ in the specification.
42+--
43+--
44+data HttpRequest = HttpRequest {
45+ -- | body: request body matcher
46+ httpRequestBody :: (GHC.Maybe.Maybe Body)
47+ -- | cookies
48+ , httpRequestCookies :: (GHC.Maybe.Maybe KeyToValue)
49+ -- | headers
50+ , httpRequestHeaders :: (GHC.Maybe.Maybe KeyToMultiValue)
51+ -- | keepAlive
52+ , httpRequestKeepAlive :: (GHC.Maybe.Maybe GHC.Types.Bool)
53+ -- | method
54+ , httpRequestMethod :: (GHC.Maybe.Maybe StringOrJsonSchema)
55+ -- | path
56+ , httpRequestPath :: (GHC.Maybe.Maybe StringOrJsonSchema)
57+ -- | pathParameters
58+ , httpRequestPathParameters :: (GHC.Maybe.Maybe KeyToMultiValue)
59+ -- | queryStringParameters
60+ , httpRequestQueryStringParameters :: (GHC.Maybe.Maybe KeyToMultiValue)
61+ -- | secure
62+ , httpRequestSecure :: (GHC.Maybe.Maybe GHC.Types.Bool)
63+ -- | socketAddress
64+ , httpRequestSocketAddress :: (GHC.Maybe.Maybe SocketAddress)
65+ } deriving (GHC.Show.Show
66+ , GHC.Classes.Eq)
67+instance Data.Aeson.Types.ToJSON.ToJSON HttpRequest
68+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("body" Data.Aeson.Types.ToJSON..=)) (httpRequestBody obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpRequestCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpRequestHeaders obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("keepAlive" Data.Aeson.Types.ToJSON..=)) (httpRequestKeepAlive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("method" Data.Aeson.Types.ToJSON..=)) (httpRequestMethod obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("path" Data.Aeson.Types.ToJSON..=)) (httpRequestPath obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("pathParameters" Data.Aeson.Types.ToJSON..=)) (httpRequestPathParameters obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryStringParameters" Data.Aeson.Types.ToJSON..=)) (httpRequestQueryStringParameters obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("secure" Data.Aeson.Types.ToJSON..=)) (httpRequestSecure obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("socketAddress" Data.Aeson.Types.ToJSON..=)) (httpRequestSocketAddress obj) : GHC.Base.mempty))
69+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("body" Data.Aeson.Types.ToJSON..=)) (httpRequestBody obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpRequestCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpRequestHeaders obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("keepAlive" Data.Aeson.Types.ToJSON..=)) (httpRequestKeepAlive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("method" Data.Aeson.Types.ToJSON..=)) (httpRequestMethod obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("path" Data.Aeson.Types.ToJSON..=)) (httpRequestPath obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("pathParameters" Data.Aeson.Types.ToJSON..=)) (httpRequestPathParameters obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("queryStringParameters" Data.Aeson.Types.ToJSON..=)) (httpRequestQueryStringParameters obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("secure" Data.Aeson.Types.ToJSON..=)) (httpRequestSecure obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("socketAddress" Data.Aeson.Types.ToJSON..=)) (httpRequestSocketAddress obj) : GHC.Base.mempty)))
70+instance Data.Aeson.Types.FromJSON.FromJSON HttpRequest
71+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpRequest" (\obj -> (((((((((GHC.Base.pure HttpRequest GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "body")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "cookies")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "headers")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "keepAlive")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "method")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "path")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "pathParameters")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "queryStringParameters")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "secure")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "socketAddress"))
72+-- | Create a new 'HttpRequest' with all required fields.
73+mkHttpRequest :: HttpRequest
74+mkHttpRequest = HttpRequest{httpRequestBody = GHC.Maybe.Nothing,
75+ httpRequestCookies = GHC.Maybe.Nothing,
76+ httpRequestHeaders = GHC.Maybe.Nothing,
77+ httpRequestKeepAlive = GHC.Maybe.Nothing,
78+ httpRequestMethod = GHC.Maybe.Nothing,
79+ httpRequestPath = GHC.Maybe.Nothing,
80+ httpRequestPathParameters = GHC.Maybe.Nothing,
81+ httpRequestQueryStringParameters = GHC.Maybe.Nothing,
82+ httpRequestSecure = GHC.Maybe.Nothing,
83+ httpRequestSocketAddress = GHC.Maybe.Nothing}
src/MockServer/Types/HttpRequest.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.HttpRequest where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpRequest
6+instance Show HttpRequest
7+instance Eq HttpRequest
8+instance FromJSON HttpRequest
9+instance ToJSON HttpRequest
src/MockServer/Types/HttpResponse.hsnew file+74
@@ -0,0 +1,74 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpResponse
7+module MockServer.Types.HttpResponse where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.BodyWithContentType
36+import {-# SOURCE #-} MockServer.Types.ConnectionOptions
37+import {-# SOURCE #-} MockServer.Types.Delay
38+import {-# SOURCE #-} MockServer.Types.KeyToMultiValue
39+import {-# SOURCE #-} MockServer.Types.KeyToValue
40+
41+-- | Defines the object schema located at @components.schemas.HttpResponse@ in the specification.
42+--
43+--
44+data HttpResponse = HttpResponse {
45+ -- | body: response body
46+ httpResponseBody :: (GHC.Maybe.Maybe BodyWithContentType)
47+ -- | connectionOptions: connection options
48+ , httpResponseConnectionOptions :: (GHC.Maybe.Maybe ConnectionOptions)
49+ -- | cookies
50+ , httpResponseCookies :: (GHC.Maybe.Maybe KeyToValue)
51+ -- | delay: response delay
52+ , httpResponseDelay :: (GHC.Maybe.Maybe Delay)
53+ -- | headers
54+ , httpResponseHeaders :: (GHC.Maybe.Maybe KeyToMultiValue)
55+ -- | reasonPhrase
56+ , httpResponseReasonPhrase :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
57+ -- | statusCode
58+ , httpResponseStatusCode :: (GHC.Maybe.Maybe GHC.Types.Int)
59+ } deriving (GHC.Show.Show
60+ , GHC.Classes.Eq)
61+instance Data.Aeson.Types.ToJSON.ToJSON HttpResponse
62+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("body" Data.Aeson.Types.ToJSON..=)) (httpResponseBody obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("connectionOptions" Data.Aeson.Types.ToJSON..=)) (httpResponseConnectionOptions obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpResponseCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpResponseDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpResponseHeaders obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("reasonPhrase" Data.Aeson.Types.ToJSON..=)) (httpResponseReasonPhrase obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("statusCode" Data.Aeson.Types.ToJSON..=)) (httpResponseStatusCode obj) : GHC.Base.mempty))
63+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("body" Data.Aeson.Types.ToJSON..=)) (httpResponseBody obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("connectionOptions" Data.Aeson.Types.ToJSON..=)) (httpResponseConnectionOptions obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("cookies" Data.Aeson.Types.ToJSON..=)) (httpResponseCookies obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpResponseDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("headers" Data.Aeson.Types.ToJSON..=)) (httpResponseHeaders obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("reasonPhrase" Data.Aeson.Types.ToJSON..=)) (httpResponseReasonPhrase obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("statusCode" Data.Aeson.Types.ToJSON..=)) (httpResponseStatusCode obj) : GHC.Base.mempty)))
64+instance Data.Aeson.Types.FromJSON.FromJSON HttpResponse
65+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpResponse" (\obj -> ((((((GHC.Base.pure HttpResponse GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "body")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "connectionOptions")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "cookies")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "headers")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "reasonPhrase")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "statusCode"))
66+-- | Create a new 'HttpResponse' with all required fields.
67+mkHttpResponse :: HttpResponse
68+mkHttpResponse = HttpResponse{httpResponseBody = GHC.Maybe.Nothing,
69+ httpResponseConnectionOptions = GHC.Maybe.Nothing,
70+ httpResponseCookies = GHC.Maybe.Nothing,
71+ httpResponseDelay = GHC.Maybe.Nothing,
72+ httpResponseHeaders = GHC.Maybe.Nothing,
73+ httpResponseReasonPhrase = GHC.Maybe.Nothing,
74+ httpResponseStatusCode = GHC.Maybe.Nothing}
src/MockServer/Types/HttpResponse.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.HttpResponse where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpResponse
6+instance Show HttpResponse
7+instance Eq HttpResponse
8+instance FromJSON HttpResponse
9+instance ToJSON HttpResponse
src/MockServer/Types/HttpTemplate.hsnew file+79
@@ -0,0 +1,79 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema HttpTemplate
7+module MockServer.Types.HttpTemplate where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Delay
36+
37+-- | Defines the object schema located at @components.schemas.HttpTemplate@ in the specification.
38+--
39+--
40+data HttpTemplate = HttpTemplate {
41+ -- | delay: response delay
42+ httpTemplateDelay :: (GHC.Maybe.Maybe Delay)
43+ -- | template
44+ , httpTemplateTemplate :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
45+ -- | templateType
46+ , httpTemplateTemplateType :: (GHC.Maybe.Maybe HttpTemplateTemplateType)
47+ } deriving (GHC.Show.Show
48+ , GHC.Classes.Eq)
49+instance Data.Aeson.Types.ToJSON.ToJSON HttpTemplate
50+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpTemplateDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("template" Data.Aeson.Types.ToJSON..=)) (httpTemplateTemplate obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("templateType" Data.Aeson.Types.ToJSON..=)) (httpTemplateTemplateType obj) : GHC.Base.mempty))
51+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("delay" Data.Aeson.Types.ToJSON..=)) (httpTemplateDelay obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("template" Data.Aeson.Types.ToJSON..=)) (httpTemplateTemplate obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("templateType" Data.Aeson.Types.ToJSON..=)) (httpTemplateTemplateType obj) : GHC.Base.mempty)))
52+instance Data.Aeson.Types.FromJSON.FromJSON HttpTemplate
53+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "HttpTemplate" (\obj -> ((GHC.Base.pure HttpTemplate GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "delay")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "template")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "templateType"))
54+-- | Create a new 'HttpTemplate' with all required fields.
55+mkHttpTemplate :: HttpTemplate
56+mkHttpTemplate = HttpTemplate{httpTemplateDelay = GHC.Maybe.Nothing,
57+ httpTemplateTemplate = GHC.Maybe.Nothing,
58+ httpTemplateTemplateType = GHC.Maybe.Nothing}
59+-- | Defines the enum schema located at @components.schemas.HttpTemplate.properties.templateType@ in the specification.
60+--
61+--
62+data HttpTemplateTemplateType =
63+ HttpTemplateTemplateTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
64+ | HttpTemplateTemplateTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
65+ | HttpTemplateTemplateTypeEnumVELOCITY -- ^ Represents the JSON value @"VELOCITY"@
66+ | HttpTemplateTemplateTypeEnumJAVASCRIPT -- ^ Represents the JSON value @"JAVASCRIPT"@
67+ | HttpTemplateTemplateTypeEnumMUSTACHE -- ^ Represents the JSON value @"MUSTACHE"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON HttpTemplateTemplateType
70+ where toJSON (HttpTemplateTemplateTypeOther val) = val
71+ toJSON (HttpTemplateTemplateTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (HttpTemplateTemplateTypeEnumVELOCITY) = "VELOCITY"
73+ toJSON (HttpTemplateTemplateTypeEnumJAVASCRIPT) = "JAVASCRIPT"
74+ toJSON (HttpTemplateTemplateTypeEnumMUSTACHE) = "MUSTACHE"
75+instance Data.Aeson.Types.FromJSON.FromJSON HttpTemplateTemplateType
76+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "VELOCITY" -> HttpTemplateTemplateTypeEnumVELOCITY
77+ | val GHC.Classes.== "JAVASCRIPT" -> HttpTemplateTemplateTypeEnumJAVASCRIPT
78+ | val GHC.Classes.== "MUSTACHE" -> HttpTemplateTemplateTypeEnumMUSTACHE
79+ | GHC.Base.otherwise -> HttpTemplateTemplateTypeOther val)
src/MockServer/Types/HttpTemplate.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.HttpTemplate where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data HttpTemplate
6+instance Show HttpTemplate
7+instance Eq HttpTemplate
8+instance FromJSON HttpTemplate
9+instance ToJSON HttpTemplate
10+data HttpTemplateTemplateType
11+instance Show HttpTemplateTemplateType
12+instance Eq HttpTemplateTemplateType
13+instance FromJSON HttpTemplateTemplateType
14+instance ToJSON HttpTemplateTemplateType
src/MockServer/Types/JsonBodyMatcher.hsnew file+96
@@ -0,0 +1,96 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema JsonBodyMatcher
7+module MockServer.Types.JsonBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.JsonBodyMatcher@ in the specification.
37+--
38+-- json body matcher
39+data JsonBodyMatcher = JsonBodyMatcher {
40+ -- | contentType
41+ jsonBodyMatcherContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | json
43+ , jsonBodyMatcherJson :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ -- | matchType
45+ , jsonBodyMatcherMatchType :: (GHC.Maybe.Maybe JsonBodyMatcherMatchType)
46+ -- | not
47+ , jsonBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
48+ -- | type
49+ , jsonBodyMatcherType :: (GHC.Maybe.Maybe JsonBodyMatcherType)
50+ } deriving (GHC.Show.Show
51+ , GHC.Classes.Eq)
52+instance Data.Aeson.Types.ToJSON.ToJSON JsonBodyMatcher
53+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("json" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherJson obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("matchType" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherMatchType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherType obj) : GHC.Base.mempty))
54+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("json" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherJson obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("matchType" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherMatchType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonBodyMatcherType obj) : GHC.Base.mempty)))
55+instance Data.Aeson.Types.FromJSON.FromJSON JsonBodyMatcher
56+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "JsonBodyMatcher" (\obj -> ((((GHC.Base.pure JsonBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "json")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "matchType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
57+-- | Create a new 'JsonBodyMatcher' with all required fields.
58+mkJsonBodyMatcher :: JsonBodyMatcher
59+mkJsonBodyMatcher = JsonBodyMatcher{jsonBodyMatcherContentType = GHC.Maybe.Nothing,
60+ jsonBodyMatcherJson = GHC.Maybe.Nothing,
61+ jsonBodyMatcherMatchType = GHC.Maybe.Nothing,
62+ jsonBodyMatcherNot = GHC.Maybe.Nothing,
63+ jsonBodyMatcherType = GHC.Maybe.Nothing}
64+-- | Defines the enum schema located at @components.schemas.JsonBodyMatcher.properties.matchType@ in the specification.
65+--
66+--
67+data JsonBodyMatcherMatchType =
68+ JsonBodyMatcherMatchTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
69+ | JsonBodyMatcherMatchTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
70+ | JsonBodyMatcherMatchTypeEnumSTRICT -- ^ Represents the JSON value @"STRICT"@
71+ | JsonBodyMatcherMatchTypeEnumONLY_MATCHING_FIELDS -- ^ Represents the JSON value @"ONLY_MATCHING_FIELDS"@
72+ deriving (GHC.Show.Show, GHC.Classes.Eq)
73+instance Data.Aeson.Types.ToJSON.ToJSON JsonBodyMatcherMatchType
74+ where toJSON (JsonBodyMatcherMatchTypeOther val) = val
75+ toJSON (JsonBodyMatcherMatchTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
76+ toJSON (JsonBodyMatcherMatchTypeEnumSTRICT) = "STRICT"
77+ toJSON (JsonBodyMatcherMatchTypeEnumONLY_MATCHING_FIELDS) = "ONLY_MATCHING_FIELDS"
78+instance Data.Aeson.Types.FromJSON.FromJSON JsonBodyMatcherMatchType
79+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "STRICT" -> JsonBodyMatcherMatchTypeEnumSTRICT
80+ | val GHC.Classes.== "ONLY_MATCHING_FIELDS" -> JsonBodyMatcherMatchTypeEnumONLY_MATCHING_FIELDS
81+ | GHC.Base.otherwise -> JsonBodyMatcherMatchTypeOther val)
82+-- | Defines the enum schema located at @components.schemas.JsonBodyMatcher.properties.type@ in the specification.
83+--
84+--
85+data JsonBodyMatcherType =
86+ JsonBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
87+ | JsonBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
88+ | JsonBodyMatcherTypeEnumJSON -- ^ Represents the JSON value @"JSON"@
89+ deriving (GHC.Show.Show, GHC.Classes.Eq)
90+instance Data.Aeson.Types.ToJSON.ToJSON JsonBodyMatcherType
91+ where toJSON (JsonBodyMatcherTypeOther val) = val
92+ toJSON (JsonBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
93+ toJSON (JsonBodyMatcherTypeEnumJSON) = "JSON"
94+instance Data.Aeson.Types.FromJSON.FromJSON JsonBodyMatcherType
95+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "JSON" -> JsonBodyMatcherTypeEnumJSON
96+ | GHC.Base.otherwise -> JsonBodyMatcherTypeOther val)
src/MockServer/Types/JsonBodyMatcher.hs-bootnew file+19
@@ -0,0 +1,19 @@
1+module MockServer.Types.JsonBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data JsonBodyMatcher
6+instance Show JsonBodyMatcher
7+instance Eq JsonBodyMatcher
8+instance FromJSON JsonBodyMatcher
9+instance ToJSON JsonBodyMatcher
10+data JsonBodyMatcherMatchType
11+instance Show JsonBodyMatcherMatchType
12+instance Eq JsonBodyMatcherMatchType
13+instance FromJSON JsonBodyMatcherMatchType
14+instance ToJSON JsonBodyMatcherMatchType
15+data JsonBodyMatcherType
16+instance Show JsonBodyMatcherType
17+instance Eq JsonBodyMatcherType
18+instance FromJSON JsonBodyMatcherType
19+instance ToJSON JsonBodyMatcherType
src/MockServer/Types/JsonPathBodyMatcher.hsnew file+72
@@ -0,0 +1,72 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema JsonPathBodyMatcher
7+module MockServer.Types.JsonPathBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.JsonPathBodyMatcher@ in the specification.
37+--
38+-- JSON path body matcher
39+data JsonPathBodyMatcher = JsonPathBodyMatcher {
40+ -- | jsonPath
41+ jsonPathBodyMatcherJsonPath :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | not
43+ , jsonPathBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
44+ -- | type
45+ , jsonPathBodyMatcherType :: (GHC.Maybe.Maybe JsonPathBodyMatcherType)
46+ } deriving (GHC.Show.Show
47+ , GHC.Classes.Eq)
48+instance Data.Aeson.Types.ToJSON.ToJSON JsonPathBodyMatcher
49+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("jsonPath" Data.Aeson.Types.ToJSON..=)) (jsonPathBodyMatcherJsonPath obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonPathBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonPathBodyMatcherType obj) : GHC.Base.mempty))
50+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("jsonPath" Data.Aeson.Types.ToJSON..=)) (jsonPathBodyMatcherJsonPath obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonPathBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonPathBodyMatcherType obj) : GHC.Base.mempty)))
51+instance Data.Aeson.Types.FromJSON.FromJSON JsonPathBodyMatcher
52+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "JsonPathBodyMatcher" (\obj -> ((GHC.Base.pure JsonPathBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "jsonPath")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
53+-- | Create a new 'JsonPathBodyMatcher' with all required fields.
54+mkJsonPathBodyMatcher :: JsonPathBodyMatcher
55+mkJsonPathBodyMatcher = JsonPathBodyMatcher{jsonPathBodyMatcherJsonPath = GHC.Maybe.Nothing,
56+ jsonPathBodyMatcherNot = GHC.Maybe.Nothing,
57+ jsonPathBodyMatcherType = GHC.Maybe.Nothing}
58+-- | Defines the enum schema located at @components.schemas.JsonPathBodyMatcher.properties.type@ in the specification.
59+--
60+--
61+data JsonPathBodyMatcherType =
62+ JsonPathBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
63+ | JsonPathBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
64+ | JsonPathBodyMatcherTypeEnumJSON_PATH -- ^ Represents the JSON value @"JSON_PATH"@
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+instance Data.Aeson.Types.ToJSON.ToJSON JsonPathBodyMatcherType
67+ where toJSON (JsonPathBodyMatcherTypeOther val) = val
68+ toJSON (JsonPathBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
69+ toJSON (JsonPathBodyMatcherTypeEnumJSON_PATH) = "JSON_PATH"
70+instance Data.Aeson.Types.FromJSON.FromJSON JsonPathBodyMatcherType
71+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "JSON_PATH" -> JsonPathBodyMatcherTypeEnumJSON_PATH
72+ | GHC.Base.otherwise -> JsonPathBodyMatcherTypeOther val)
src/MockServer/Types/JsonPathBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.JsonPathBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data JsonPathBodyMatcher
6+instance Show JsonPathBodyMatcher
7+instance Eq JsonPathBodyMatcher
8+instance FromJSON JsonPathBodyMatcher
9+instance ToJSON JsonPathBodyMatcher
10+data JsonPathBodyMatcherType
11+instance Show JsonPathBodyMatcherType
12+instance Eq JsonPathBodyMatcherType
13+instance FromJSON JsonPathBodyMatcherType
14+instance ToJSON JsonPathBodyMatcherType
src/MockServer/Types/JsonResponseBody.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema JsonResponseBody
7+module MockServer.Types.JsonResponseBody where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.JsonResponseBody@ in the specification.
37+--
38+-- json response body
39+data JsonResponseBody = JsonResponseBody {
40+ -- | contentType
41+ jsonResponseBodyContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | json
43+ , jsonResponseBodyJson :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ -- | not
45+ , jsonResponseBodyNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
46+ -- | type
47+ , jsonResponseBodyType :: (GHC.Maybe.Maybe JsonResponseBodyType)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON JsonResponseBody
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("json" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyJson obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyType obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("json" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyJson obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonResponseBodyType obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON JsonResponseBody
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "JsonResponseBody" (\obj -> (((GHC.Base.pure JsonResponseBody GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "json")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
55+-- | Create a new 'JsonResponseBody' with all required fields.
56+mkJsonResponseBody :: JsonResponseBody
57+mkJsonResponseBody = JsonResponseBody{jsonResponseBodyContentType = GHC.Maybe.Nothing,
58+ jsonResponseBodyJson = GHC.Maybe.Nothing,
59+ jsonResponseBodyNot = GHC.Maybe.Nothing,
60+ jsonResponseBodyType = GHC.Maybe.Nothing}
61+-- | Defines the enum schema located at @components.schemas.JsonResponseBody.properties.type@ in the specification.
62+--
63+--
64+data JsonResponseBodyType =
65+ JsonResponseBodyTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
66+ | JsonResponseBodyTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
67+ | JsonResponseBodyTypeEnumJSON -- ^ Represents the JSON value @"JSON"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON JsonResponseBodyType
70+ where toJSON (JsonResponseBodyTypeOther val) = val
71+ toJSON (JsonResponseBodyTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (JsonResponseBodyTypeEnumJSON) = "JSON"
73+instance Data.Aeson.Types.FromJSON.FromJSON JsonResponseBodyType
74+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "JSON" -> JsonResponseBodyTypeEnumJSON
75+ | GHC.Base.otherwise -> JsonResponseBodyTypeOther val)
src/MockServer/Types/JsonResponseBody.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.JsonResponseBody where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data JsonResponseBody
6+instance Show JsonResponseBody
7+instance Eq JsonResponseBody
8+instance FromJSON JsonResponseBody
9+instance ToJSON JsonResponseBody
10+data JsonResponseBodyType
11+instance Show JsonResponseBodyType
12+instance Eq JsonResponseBodyType
13+instance FromJSON JsonResponseBodyType
14+instance ToJSON JsonResponseBodyType
src/MockServer/Types/JsonSchemaBodyMatcher.hsnew file+73
@@ -0,0 +1,73 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema JsonSchemaBodyMatcher
7+module MockServer.Types.JsonSchemaBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Http__JsonSchema_OrgDraft_04Schema
36+
37+-- | Defines the object schema located at @components.schemas.JsonSchemaBodyMatcher@ in the specification.
38+--
39+-- json schema body matcher
40+data JsonSchemaBodyMatcher = JsonSchemaBodyMatcher {
41+ -- | jsonSchema
42+ jsonSchemaBodyMatcherJsonSchema :: (GHC.Maybe.Maybe Http___json_schema'org_draft_04_schema)
43+ -- | not
44+ , jsonSchemaBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
45+ -- | type
46+ , jsonSchemaBodyMatcherType :: (GHC.Maybe.Maybe JsonSchemaBodyMatcherType)
47+ } deriving (GHC.Show.Show
48+ , GHC.Classes.Eq)
49+instance Data.Aeson.Types.ToJSON.ToJSON JsonSchemaBodyMatcher
50+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("jsonSchema" Data.Aeson.Types.ToJSON..=)) (jsonSchemaBodyMatcherJsonSchema obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonSchemaBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonSchemaBodyMatcherType obj) : GHC.Base.mempty))
51+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("jsonSchema" Data.Aeson.Types.ToJSON..=)) (jsonSchemaBodyMatcherJsonSchema obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (jsonSchemaBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (jsonSchemaBodyMatcherType obj) : GHC.Base.mempty)))
52+instance Data.Aeson.Types.FromJSON.FromJSON JsonSchemaBodyMatcher
53+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "JsonSchemaBodyMatcher" (\obj -> ((GHC.Base.pure JsonSchemaBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "jsonSchema")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
54+-- | Create a new 'JsonSchemaBodyMatcher' with all required fields.
55+mkJsonSchemaBodyMatcher :: JsonSchemaBodyMatcher
56+mkJsonSchemaBodyMatcher = JsonSchemaBodyMatcher{jsonSchemaBodyMatcherJsonSchema = GHC.Maybe.Nothing,
57+ jsonSchemaBodyMatcherNot = GHC.Maybe.Nothing,
58+ jsonSchemaBodyMatcherType = GHC.Maybe.Nothing}
59+-- | Defines the enum schema located at @components.schemas.JsonSchemaBodyMatcher.properties.type@ in the specification.
60+--
61+--
62+data JsonSchemaBodyMatcherType =
63+ JsonSchemaBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
64+ | JsonSchemaBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
65+ | JsonSchemaBodyMatcherTypeEnumJSON_SCHEMA -- ^ Represents the JSON value @"JSON_SCHEMA"@
66+ deriving (GHC.Show.Show, GHC.Classes.Eq)
67+instance Data.Aeson.Types.ToJSON.ToJSON JsonSchemaBodyMatcherType
68+ where toJSON (JsonSchemaBodyMatcherTypeOther val) = val
69+ toJSON (JsonSchemaBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
70+ toJSON (JsonSchemaBodyMatcherTypeEnumJSON_SCHEMA) = "JSON_SCHEMA"
71+instance Data.Aeson.Types.FromJSON.FromJSON JsonSchemaBodyMatcherType
72+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "JSON_SCHEMA" -> JsonSchemaBodyMatcherTypeEnumJSON_SCHEMA
73+ | GHC.Base.otherwise -> JsonSchemaBodyMatcherTypeOther val)
src/MockServer/Types/JsonSchemaBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.JsonSchemaBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data JsonSchemaBodyMatcher
6+instance Show JsonSchemaBodyMatcher
7+instance Eq JsonSchemaBodyMatcher
8+instance FromJSON JsonSchemaBodyMatcher
9+instance ToJSON JsonSchemaBodyMatcher
10+data JsonSchemaBodyMatcherType
11+instance Show JsonSchemaBodyMatcherType
12+instance Eq JsonSchemaBodyMatcherType
13+instance FromJSON JsonSchemaBodyMatcherType
14+instance ToJSON JsonSchemaBodyMatcherType
src/MockServer/Types/KeyToMultiValue.hsnew file+106
@@ -0,0 +1,106 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema KeyToMultiValue
7+module MockServer.Types.KeyToMultiValue where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.KeyToMultiValue.oneOf.items@ in the specification.
37+--
38+--
39+data KeyToMultiValueOneOf1 = KeyToMultiValueOneOf1 {
40+ -- | name
41+ keyToMultiValueOneOf1Name :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | values
43+ , keyToMultiValueOneOf1Values :: (GHC.Maybe.Maybe ([Data.Text.Internal.Text]))
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON KeyToMultiValueOneOf1
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("name" Data.Aeson.Types.ToJSON..=)) (keyToMultiValueOneOf1Name obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("values" Data.Aeson.Types.ToJSON..=)) (keyToMultiValueOneOf1Values obj) : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("name" Data.Aeson.Types.ToJSON..=)) (keyToMultiValueOneOf1Name obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("values" Data.Aeson.Types.ToJSON..=)) (keyToMultiValueOneOf1Values obj) : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON KeyToMultiValueOneOf1
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "KeyToMultiValueOneOf1" (\obj -> (GHC.Base.pure KeyToMultiValueOneOf1 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "name")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "values"))
51+-- | Create a new 'KeyToMultiValueOneOf1' with all required fields.
52+mkKeyToMultiValueOneOf1 :: KeyToMultiValueOneOf1
53+mkKeyToMultiValueOneOf1 = KeyToMultiValueOneOf1{keyToMultiValueOneOf1Name = GHC.Maybe.Nothing,
54+ keyToMultiValueOneOf1Values = GHC.Maybe.Nothing}
55+-- | Defines the object schema located at @components.schemas.KeyToMultiValue.oneOf@ in the specification.
56+--
57+--
58+data KeyToMultiValueOneOf2 = KeyToMultiValueOneOf2 {
59+ -- | keyMatchStyle
60+ keyToMultiValueOneOf2KeyMatchStyle :: (GHC.Maybe.Maybe KeyToMultiValueOneOf2KeyMatchStyle)
61+ } deriving (GHC.Show.Show
62+ , GHC.Classes.Eq)
63+instance Data.Aeson.Types.ToJSON.ToJSON KeyToMultiValueOneOf2
64+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("keyMatchStyle" Data.Aeson.Types.ToJSON..=)) (keyToMultiValueOneOf2KeyMatchStyle obj) : GHC.Base.mempty))
65+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("keyMatchStyle" Data.Aeson.Types.ToJSON..=)) (keyToMultiValueOneOf2KeyMatchStyle obj) : GHC.Base.mempty)))
66+instance Data.Aeson.Types.FromJSON.FromJSON KeyToMultiValueOneOf2
67+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "KeyToMultiValueOneOf2" (\obj -> GHC.Base.pure KeyToMultiValueOneOf2 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "keyMatchStyle"))
68+-- | Create a new 'KeyToMultiValueOneOf2' with all required fields.
69+mkKeyToMultiValueOneOf2 :: KeyToMultiValueOneOf2
70+mkKeyToMultiValueOneOf2 = KeyToMultiValueOneOf2{keyToMultiValueOneOf2KeyMatchStyle = GHC.Maybe.Nothing}
71+-- | Defines the enum schema located at @components.schemas.KeyToMultiValue.oneOf.properties.keyMatchStyle@ in the specification.
72+--
73+--
74+data KeyToMultiValueOneOf2KeyMatchStyle =
75+ KeyToMultiValueOneOf2KeyMatchStyleOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
76+ | KeyToMultiValueOneOf2KeyMatchStyleTyped Data.Text.Internal.Text -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
77+ | KeyToMultiValueOneOf2KeyMatchStyleEnumMATCHING_KEY -- ^ Represents the JSON value @"MATCHING_KEY"@
78+ | KeyToMultiValueOneOf2KeyMatchStyleEnumSUB_SET -- ^ Represents the JSON value @"SUB_SET"@
79+ deriving (GHC.Show.Show, GHC.Classes.Eq)
80+instance Data.Aeson.Types.ToJSON.ToJSON KeyToMultiValueOneOf2KeyMatchStyle
81+ where toJSON (KeyToMultiValueOneOf2KeyMatchStyleOther val) = val
82+ toJSON (KeyToMultiValueOneOf2KeyMatchStyleTyped val) = Data.Aeson.Types.ToJSON.toJSON val
83+ toJSON (KeyToMultiValueOneOf2KeyMatchStyleEnumMATCHING_KEY) = "MATCHING_KEY"
84+ toJSON (KeyToMultiValueOneOf2KeyMatchStyleEnumSUB_SET) = "SUB_SET"
85+instance Data.Aeson.Types.FromJSON.FromJSON KeyToMultiValueOneOf2KeyMatchStyle
86+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "MATCHING_KEY" -> KeyToMultiValueOneOf2KeyMatchStyleEnumMATCHING_KEY
87+ | val GHC.Classes.== "SUB_SET" -> KeyToMultiValueOneOf2KeyMatchStyleEnumSUB_SET
88+ | GHC.Base.otherwise -> KeyToMultiValueOneOf2KeyMatchStyleOther val)
89+-- | Defines the oneOf schema located at @components.schemas.KeyToMultiValue.oneOf@ in the specification.
90+--
91+--
92+data KeyToMultiValueVariants =
93+ KeyToMultiValueListTKeyToMultiValueOneOf1 ([KeyToMultiValueOneOf1])
94+ | KeyToMultiValueKeyToMultiValueOneOf2 KeyToMultiValueOneOf2
95+ deriving (GHC.Show.Show, GHC.Classes.Eq)
96+instance Data.Aeson.Types.ToJSON.ToJSON KeyToMultiValueVariants
97+ where toJSON (KeyToMultiValueListTKeyToMultiValueOneOf1 a) = Data.Aeson.Types.ToJSON.toJSON a
98+ toJSON (KeyToMultiValueKeyToMultiValueOneOf2 a) = Data.Aeson.Types.ToJSON.toJSON a
99+instance Data.Aeson.Types.FromJSON.FromJSON KeyToMultiValueVariants
100+ where parseJSON val = case (KeyToMultiValueListTKeyToMultiValueOneOf1 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((KeyToMultiValueKeyToMultiValueOneOf2 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
101+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
102+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
103+-- | Defines an alias for the schema located at @components.schemas.KeyToMultiValue.oneOf@ in the specification.
104+--
105+--
106+type KeyToMultiValue = KeyToMultiValueVariants
src/MockServer/Types/KeyToMultiValue.hs-bootnew file+25
@@ -0,0 +1,25 @@
1+module MockServer.Types.KeyToMultiValue where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data KeyToMultiValueOneOf1
6+instance Show KeyToMultiValueOneOf1
7+instance Eq KeyToMultiValueOneOf1
8+instance FromJSON KeyToMultiValueOneOf1
9+instance ToJSON KeyToMultiValueOneOf1
10+data KeyToMultiValueOneOf2
11+instance Show KeyToMultiValueOneOf2
12+instance Eq KeyToMultiValueOneOf2
13+instance FromJSON KeyToMultiValueOneOf2
14+instance ToJSON KeyToMultiValueOneOf2
15+data KeyToMultiValueOneOf2KeyMatchStyle
16+instance Show KeyToMultiValueOneOf2KeyMatchStyle
17+instance Eq KeyToMultiValueOneOf2KeyMatchStyle
18+instance FromJSON KeyToMultiValueOneOf2KeyMatchStyle
19+instance ToJSON KeyToMultiValueOneOf2KeyMatchStyle
20+data KeyToMultiValueVariants
21+instance Show KeyToMultiValueVariants
22+instance Eq KeyToMultiValueVariants
23+instance FromJSON KeyToMultiValueVariants
24+instance ToJSON KeyToMultiValueVariants
25+type KeyToMultiValue = KeyToMultiValueVariants
src/MockServer/Types/KeyToValue.hsnew file+72
@@ -0,0 +1,72 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema KeyToValue
7+module MockServer.Types.KeyToValue where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.KeyToValue.oneOf.items@ in the specification.
37+--
38+--
39+data KeyToValueOneOf1 = KeyToValueOneOf1 {
40+ -- | name
41+ keyToValueOneOf1Name :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | value
43+ , keyToValueOneOf1Value :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON KeyToValueOneOf1
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("name" Data.Aeson.Types.ToJSON..=)) (keyToValueOneOf1Name obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("value" Data.Aeson.Types.ToJSON..=)) (keyToValueOneOf1Value obj) : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("name" Data.Aeson.Types.ToJSON..=)) (keyToValueOneOf1Name obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("value" Data.Aeson.Types.ToJSON..=)) (keyToValueOneOf1Value obj) : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON KeyToValueOneOf1
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "KeyToValueOneOf1" (\obj -> (GHC.Base.pure KeyToValueOneOf1 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "name")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "value"))
51+-- | Create a new 'KeyToValueOneOf1' with all required fields.
52+mkKeyToValueOneOf1 :: KeyToValueOneOf1
53+mkKeyToValueOneOf1 = KeyToValueOneOf1{keyToValueOneOf1Name = GHC.Maybe.Nothing,
54+ keyToValueOneOf1Value = GHC.Maybe.Nothing}
55+-- | Defines the oneOf schema located at @components.schemas.KeyToValue.oneOf@ in the specification.
56+--
57+--
58+data KeyToValueVariants =
59+ KeyToValueListTKeyToValueOneOf1 ([KeyToValueOneOf1])
60+ | KeyToValueObject Data.Aeson.Types.Internal.Object
61+ deriving (GHC.Show.Show, GHC.Classes.Eq)
62+instance Data.Aeson.Types.ToJSON.ToJSON KeyToValueVariants
63+ where toJSON (KeyToValueListTKeyToValueOneOf1 a) = Data.Aeson.Types.ToJSON.toJSON a
64+ toJSON (KeyToValueObject a) = Data.Aeson.Types.ToJSON.toJSON a
65+instance Data.Aeson.Types.FromJSON.FromJSON KeyToValueVariants
66+ where parseJSON val = case (KeyToValueListTKeyToValueOneOf1 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((KeyToValueObject Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
67+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
68+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
69+-- | Defines an alias for the schema located at @components.schemas.KeyToValue.oneOf@ in the specification.
70+--
71+--
72+type KeyToValue = KeyToValueVariants
src/MockServer/Types/KeyToValue.hs-bootnew file+15
@@ -0,0 +1,15 @@
1+module MockServer.Types.KeyToValue where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data KeyToValueOneOf1
6+instance Show KeyToValueOneOf1
7+instance Eq KeyToValueOneOf1
8+instance FromJSON KeyToValueOneOf1
9+instance ToJSON KeyToValueOneOf1
10+data KeyToValueVariants
11+instance Show KeyToValueVariants
12+instance Eq KeyToValueVariants
13+instance FromJSON KeyToValueVariants
14+instance ToJSON KeyToValueVariants
15+type KeyToValue = KeyToValueVariants
src/MockServer/Types/OpenAPIDefinition.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema OpenAPIDefinition
7+module MockServer.Types.OpenAPIDefinition where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.OpenAPIDefinition@ in the specification.
37+--
38+--
39+data OpenAPIDefinition = OpenAPIDefinition {
40+ -- | operationId
41+ openAPIDefinitionOperationId :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | specUrlOrPayload
43+ , openAPIDefinitionSpecUrlOrPayload :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON OpenAPIDefinition
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("operationId" Data.Aeson.Types.ToJSON..=)) (openAPIDefinitionOperationId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("specUrlOrPayload" Data.Aeson.Types.ToJSON..=)) (openAPIDefinitionSpecUrlOrPayload obj) : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("operationId" Data.Aeson.Types.ToJSON..=)) (openAPIDefinitionOperationId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("specUrlOrPayload" Data.Aeson.Types.ToJSON..=)) (openAPIDefinitionSpecUrlOrPayload obj) : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON OpenAPIDefinition
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "OpenAPIDefinition" (\obj -> (GHC.Base.pure OpenAPIDefinition GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "operationId")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "specUrlOrPayload"))
51+-- | Create a new 'OpenAPIDefinition' with all required fields.
52+mkOpenAPIDefinition :: OpenAPIDefinition
53+mkOpenAPIDefinition = OpenAPIDefinition{openAPIDefinitionOperationId = GHC.Maybe.Nothing,
54+ openAPIDefinitionSpecUrlOrPayload = GHC.Maybe.Nothing}
src/MockServer/Types/OpenAPIDefinition.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.OpenAPIDefinition where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data OpenAPIDefinition
6+instance Show OpenAPIDefinition
7+instance Eq OpenAPIDefinition
8+instance FromJSON OpenAPIDefinition
9+instance ToJSON OpenAPIDefinition
src/MockServer/Types/OpenAPIExpectation.hsnew file+69
@@ -0,0 +1,69 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema OpenAPIExpectation
7+module MockServer.Types.OpenAPIExpectation where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.OpenAPIExpectation@ in the specification.
37+--
38+--
39+data OpenAPIExpectation = OpenAPIExpectation {
40+ -- | operationsAndResponses
41+ openAPIExpectationOperationsAndResponses :: (GHC.Maybe.Maybe Data.Aeson.Types.Internal.Object)
42+ -- | specUrlOrPayload
43+ , openAPIExpectationSpecUrlOrPayload :: OpenAPIExpectationSpecUrlOrPayloadVariants
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON OpenAPIExpectation
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("operationsAndResponses" Data.Aeson.Types.ToJSON..=)) (openAPIExpectationOperationsAndResponses obj) : ["specUrlOrPayload" Data.Aeson.Types.ToJSON..= openAPIExpectationSpecUrlOrPayload obj] : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("operationsAndResponses" Data.Aeson.Types.ToJSON..=)) (openAPIExpectationOperationsAndResponses obj) : ["specUrlOrPayload" Data.Aeson.Types.ToJSON..= openAPIExpectationSpecUrlOrPayload obj] : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON OpenAPIExpectation
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "OpenAPIExpectation" (\obj -> (GHC.Base.pure OpenAPIExpectation GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "operationsAndResponses")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..: "specUrlOrPayload"))
51+-- | Create a new 'OpenAPIExpectation' with all required fields.
52+mkOpenAPIExpectation :: OpenAPIExpectationSpecUrlOrPayloadVariants -- ^ 'openAPIExpectationSpecUrlOrPayload'
53+ -> OpenAPIExpectation
54+mkOpenAPIExpectation openAPIExpectationSpecUrlOrPayload = OpenAPIExpectation{openAPIExpectationOperationsAndResponses = GHC.Maybe.Nothing,
55+ openAPIExpectationSpecUrlOrPayload = openAPIExpectationSpecUrlOrPayload}
56+-- | Defines the oneOf schema located at @components.schemas.OpenAPIExpectation.properties.specUrlOrPayload.anyOf@ in the specification.
57+--
58+--
59+data OpenAPIExpectationSpecUrlOrPayloadVariants =
60+ OpenAPIExpectationSpecUrlOrPayloadText Data.Text.Internal.Text
61+ | OpenAPIExpectationSpecUrlOrPayloadObject Data.Aeson.Types.Internal.Object
62+ deriving (GHC.Show.Show, GHC.Classes.Eq)
63+instance Data.Aeson.Types.ToJSON.ToJSON OpenAPIExpectationSpecUrlOrPayloadVariants
64+ where toJSON (OpenAPIExpectationSpecUrlOrPayloadText a) = Data.Aeson.Types.ToJSON.toJSON a
65+ toJSON (OpenAPIExpectationSpecUrlOrPayloadObject a) = Data.Aeson.Types.ToJSON.toJSON a
66+instance Data.Aeson.Types.FromJSON.FromJSON OpenAPIExpectationSpecUrlOrPayloadVariants
67+ where parseJSON val = case (OpenAPIExpectationSpecUrlOrPayloadText Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((OpenAPIExpectationSpecUrlOrPayloadObject Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
68+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
69+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
src/MockServer/Types/OpenAPIExpectation.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.OpenAPIExpectation where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data OpenAPIExpectation
6+instance Show OpenAPIExpectation
7+instance Eq OpenAPIExpectation
8+instance FromJSON OpenAPIExpectation
9+instance ToJSON OpenAPIExpectation
10+data OpenAPIExpectationSpecUrlOrPayloadVariants
11+instance Show OpenAPIExpectationSpecUrlOrPayloadVariants
12+instance Eq OpenAPIExpectationSpecUrlOrPayloadVariants
13+instance FromJSON OpenAPIExpectationSpecUrlOrPayloadVariants
14+instance ToJSON OpenAPIExpectationSpecUrlOrPayloadVariants
src/MockServer/Types/OpenAPIExpectations.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema OpenAPIExpectations
7+module MockServer.Types.OpenAPIExpectations where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.OpenAPIExpectation
36+
37+-- | Defines the oneOf schema located at @components.schemas.OpenAPIExpectations.oneOf@ in the specification.
38+--
39+--
40+data OpenAPIExpectationsVariants =
41+ OpenAPIExpectationsOpenAPIExpectation OpenAPIExpectation
42+ | OpenAPIExpectationsListTOpenAPIExpectation ([OpenAPIExpectation])
43+ deriving (GHC.Show.Show, GHC.Classes.Eq)
44+instance Data.Aeson.Types.ToJSON.ToJSON OpenAPIExpectationsVariants
45+ where toJSON (OpenAPIExpectationsOpenAPIExpectation a) = Data.Aeson.Types.ToJSON.toJSON a
46+ toJSON (OpenAPIExpectationsListTOpenAPIExpectation a) = Data.Aeson.Types.ToJSON.toJSON a
47+instance Data.Aeson.Types.FromJSON.FromJSON OpenAPIExpectationsVariants
48+ where parseJSON val = case (OpenAPIExpectationsOpenAPIExpectation Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((OpenAPIExpectationsListTOpenAPIExpectation Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
49+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
50+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
51+-- | Defines an alias for the schema located at @components.schemas.OpenAPIExpectations.oneOf@ in the specification.
52+--
53+--
54+type OpenAPIExpectations = OpenAPIExpectationsVariants
src/MockServer/Types/OpenAPIExpectations.hs-bootnew file+10
@@ -0,0 +1,10 @@
1+module MockServer.Types.OpenAPIExpectations where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data OpenAPIExpectationsVariants
6+instance Show OpenAPIExpectationsVariants
7+instance Eq OpenAPIExpectationsVariants
8+instance FromJSON OpenAPIExpectationsVariants
9+instance ToJSON OpenAPIExpectationsVariants
10+type OpenAPIExpectations = OpenAPIExpectationsVariants
src/MockServer/Types/ParameterBodyMatcher.hsnew file+73
@@ -0,0 +1,73 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema ParameterBodyMatcher
7+module MockServer.Types.ParameterBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.KeyToMultiValue
36+
37+-- | Defines the object schema located at @components.schemas.ParameterBodyMatcher@ in the specification.
38+--
39+-- parameter body matcher
40+data ParameterBodyMatcher = ParameterBodyMatcher {
41+ -- | not
42+ parameterBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
43+ -- | parameters
44+ , parameterBodyMatcherParameters :: (GHC.Maybe.Maybe KeyToMultiValue)
45+ -- | type
46+ , parameterBodyMatcherType :: (GHC.Maybe.Maybe ParameterBodyMatcherType)
47+ } deriving (GHC.Show.Show
48+ , GHC.Classes.Eq)
49+instance Data.Aeson.Types.ToJSON.ToJSON ParameterBodyMatcher
50+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (parameterBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("parameters" Data.Aeson.Types.ToJSON..=)) (parameterBodyMatcherParameters obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (parameterBodyMatcherType obj) : GHC.Base.mempty))
51+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (parameterBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("parameters" Data.Aeson.Types.ToJSON..=)) (parameterBodyMatcherParameters obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (parameterBodyMatcherType obj) : GHC.Base.mempty)))
52+instance Data.Aeson.Types.FromJSON.FromJSON ParameterBodyMatcher
53+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "ParameterBodyMatcher" (\obj -> ((GHC.Base.pure ParameterBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "parameters")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
54+-- | Create a new 'ParameterBodyMatcher' with all required fields.
55+mkParameterBodyMatcher :: ParameterBodyMatcher
56+mkParameterBodyMatcher = ParameterBodyMatcher{parameterBodyMatcherNot = GHC.Maybe.Nothing,
57+ parameterBodyMatcherParameters = GHC.Maybe.Nothing,
58+ parameterBodyMatcherType = GHC.Maybe.Nothing}
59+-- | Defines the enum schema located at @components.schemas.ParameterBodyMatcher.properties.type@ in the specification.
60+--
61+--
62+data ParameterBodyMatcherType =
63+ ParameterBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
64+ | ParameterBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
65+ | ParameterBodyMatcherTypeEnumPARAMETERS -- ^ Represents the JSON value @"PARAMETERS"@
66+ deriving (GHC.Show.Show, GHC.Classes.Eq)
67+instance Data.Aeson.Types.ToJSON.ToJSON ParameterBodyMatcherType
68+ where toJSON (ParameterBodyMatcherTypeOther val) = val
69+ toJSON (ParameterBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
70+ toJSON (ParameterBodyMatcherTypeEnumPARAMETERS) = "PARAMETERS"
71+instance Data.Aeson.Types.FromJSON.FromJSON ParameterBodyMatcherType
72+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "PARAMETERS" -> ParameterBodyMatcherTypeEnumPARAMETERS
73+ | GHC.Base.otherwise -> ParameterBodyMatcherTypeOther val)
src/MockServer/Types/ParameterBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.ParameterBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data ParameterBodyMatcher
6+instance Show ParameterBodyMatcher
7+instance Eq ParameterBodyMatcher
8+instance FromJSON ParameterBodyMatcher
9+instance ToJSON ParameterBodyMatcher
10+data ParameterBodyMatcherType
11+instance Show ParameterBodyMatcherType
12+instance Eq ParameterBodyMatcherType
13+instance FromJSON ParameterBodyMatcherType
14+instance ToJSON ParameterBodyMatcherType
src/MockServer/Types/Ports.hsnew file+51
@@ -0,0 +1,51 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Ports
7+module MockServer.Types.Ports where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.Ports@ in the specification.
37+--
38+-- list of ports
39+data Ports = Ports {
40+ -- | ports
41+ portsPorts :: (GHC.Maybe.Maybe ([GHC.Types.Double]))
42+ } deriving (GHC.Show.Show
43+ , GHC.Classes.Eq)
44+instance Data.Aeson.Types.ToJSON.ToJSON Ports
45+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("ports" Data.Aeson.Types.ToJSON..=)) (portsPorts obj) : GHC.Base.mempty))
46+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("ports" Data.Aeson.Types.ToJSON..=)) (portsPorts obj) : GHC.Base.mempty)))
47+instance Data.Aeson.Types.FromJSON.FromJSON Ports
48+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "Ports" (\obj -> GHC.Base.pure Ports GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "ports"))
49+-- | Create a new 'Ports' with all required fields.
50+mkPorts :: Ports
51+mkPorts = Ports{portsPorts = GHC.Maybe.Nothing}
src/MockServer/Types/Ports.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.Ports where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data Ports
6+instance Show Ports
7+instance Eq Ports
8+instance FromJSON Ports
9+instance ToJSON Ports
src/MockServer/Types/RegexBodyMatcher.hsnew file+72
@@ -0,0 +1,72 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema RegexBodyMatcher
7+module MockServer.Types.RegexBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.RegexBodyMatcher@ in the specification.
37+--
38+-- regex body matcher
39+data RegexBodyMatcher = RegexBodyMatcher {
40+ -- | not
41+ regexBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
42+ -- | regex
43+ , regexBodyMatcherRegex :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
44+ -- | type
45+ , regexBodyMatcherType :: (GHC.Maybe.Maybe RegexBodyMatcherType)
46+ } deriving (GHC.Show.Show
47+ , GHC.Classes.Eq)
48+instance Data.Aeson.Types.ToJSON.ToJSON RegexBodyMatcher
49+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (regexBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("regex" Data.Aeson.Types.ToJSON..=)) (regexBodyMatcherRegex obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (regexBodyMatcherType obj) : GHC.Base.mempty))
50+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (regexBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("regex" Data.Aeson.Types.ToJSON..=)) (regexBodyMatcherRegex obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (regexBodyMatcherType obj) : GHC.Base.mempty)))
51+instance Data.Aeson.Types.FromJSON.FromJSON RegexBodyMatcher
52+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "RegexBodyMatcher" (\obj -> ((GHC.Base.pure RegexBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "regex")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
53+-- | Create a new 'RegexBodyMatcher' with all required fields.
54+mkRegexBodyMatcher :: RegexBodyMatcher
55+mkRegexBodyMatcher = RegexBodyMatcher{regexBodyMatcherNot = GHC.Maybe.Nothing,
56+ regexBodyMatcherRegex = GHC.Maybe.Nothing,
57+ regexBodyMatcherType = GHC.Maybe.Nothing}
58+-- | Defines the enum schema located at @components.schemas.RegexBodyMatcher.properties.type@ in the specification.
59+--
60+--
61+data RegexBodyMatcherType =
62+ RegexBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
63+ | RegexBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
64+ | RegexBodyMatcherTypeEnumREGEX -- ^ Represents the JSON value @"REGEX"@
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+instance Data.Aeson.Types.ToJSON.ToJSON RegexBodyMatcherType
67+ where toJSON (RegexBodyMatcherTypeOther val) = val
68+ toJSON (RegexBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
69+ toJSON (RegexBodyMatcherTypeEnumREGEX) = "REGEX"
70+instance Data.Aeson.Types.FromJSON.FromJSON RegexBodyMatcherType
71+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "REGEX" -> RegexBodyMatcherTypeEnumREGEX
72+ | GHC.Base.otherwise -> RegexBodyMatcherTypeOther val)
src/MockServer/Types/RegexBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.RegexBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data RegexBodyMatcher
6+instance Show RegexBodyMatcher
7+instance Eq RegexBodyMatcher
8+instance FromJSON RegexBodyMatcher
9+instance ToJSON RegexBodyMatcher
10+data RegexBodyMatcherType
11+instance Show RegexBodyMatcherType
12+instance Eq RegexBodyMatcherType
13+instance FromJSON RegexBodyMatcherType
14+instance ToJSON RegexBodyMatcherType
src/MockServer/Types/RequestDefinition.hsnew file+55
@@ -0,0 +1,55 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema RequestDefinition
7+module MockServer.Types.RequestDefinition where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.HttpRequest
36+import {-# SOURCE #-} MockServer.Types.OpenAPIDefinition
37+
38+-- | Defines the oneOf schema located at @components.schemas.RequestDefinition.oneOf@ in the specification.
39+--
40+--
41+data RequestDefinitionVariants =
42+ RequestDefinitionHttpRequest HttpRequest
43+ | RequestDefinitionOpenAPIDefinition OpenAPIDefinition
44+ deriving (GHC.Show.Show, GHC.Classes.Eq)
45+instance Data.Aeson.Types.ToJSON.ToJSON RequestDefinitionVariants
46+ where toJSON (RequestDefinitionHttpRequest a) = Data.Aeson.Types.ToJSON.toJSON a
47+ toJSON (RequestDefinitionOpenAPIDefinition a) = Data.Aeson.Types.ToJSON.toJSON a
48+instance Data.Aeson.Types.FromJSON.FromJSON RequestDefinitionVariants
49+ where parseJSON val = case (RequestDefinitionHttpRequest Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((RequestDefinitionOpenAPIDefinition Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
50+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
51+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
52+-- | Defines an alias for the schema located at @components.schemas.RequestDefinition.oneOf@ in the specification.
53+--
54+--
55+type RequestDefinition = RequestDefinitionVariants
src/MockServer/Types/RequestDefinition.hs-bootnew file+10
@@ -0,0 +1,10 @@
1+module MockServer.Types.RequestDefinition where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data RequestDefinitionVariants
6+instance Show RequestDefinitionVariants
7+instance Eq RequestDefinitionVariants
8+instance FromJSON RequestDefinitionVariants
9+instance ToJSON RequestDefinitionVariants
10+type RequestDefinition = RequestDefinitionVariants
src/MockServer/Types/SocketAddress.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema SocketAddress
7+module MockServer.Types.SocketAddress where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.SocketAddress@ in the specification.
37+--
38+--
39+data SocketAddress = SocketAddress {
40+ -- | host
41+ socketAddressHost :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | port
43+ , socketAddressPort :: (GHC.Maybe.Maybe GHC.Types.Int)
44+ -- | scheme
45+ , socketAddressScheme :: (GHC.Maybe.Maybe SocketAddressScheme)
46+ } deriving (GHC.Show.Show
47+ , GHC.Classes.Eq)
48+instance Data.Aeson.Types.ToJSON.ToJSON SocketAddress
49+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("host" Data.Aeson.Types.ToJSON..=)) (socketAddressHost obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("port" Data.Aeson.Types.ToJSON..=)) (socketAddressPort obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("scheme" Data.Aeson.Types.ToJSON..=)) (socketAddressScheme obj) : GHC.Base.mempty))
50+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("host" Data.Aeson.Types.ToJSON..=)) (socketAddressHost obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("port" Data.Aeson.Types.ToJSON..=)) (socketAddressPort obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("scheme" Data.Aeson.Types.ToJSON..=)) (socketAddressScheme obj) : GHC.Base.mempty)))
51+instance Data.Aeson.Types.FromJSON.FromJSON SocketAddress
52+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "SocketAddress" (\obj -> ((GHC.Base.pure SocketAddress GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "host")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "port")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "scheme"))
53+-- | Create a new 'SocketAddress' with all required fields.
54+mkSocketAddress :: SocketAddress
55+mkSocketAddress = SocketAddress{socketAddressHost = GHC.Maybe.Nothing,
56+ socketAddressPort = GHC.Maybe.Nothing,
57+ socketAddressScheme = GHC.Maybe.Nothing}
58+-- | Defines the enum schema located at @components.schemas.SocketAddress.properties.scheme@ in the specification.
59+--
60+--
61+data SocketAddressScheme =
62+ SocketAddressSchemeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
63+ | SocketAddressSchemeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
64+ | SocketAddressSchemeEnumHTTP -- ^ Represents the JSON value @"HTTP"@
65+ | SocketAddressSchemeEnumHTTPS -- ^ Represents the JSON value @"HTTPS"@
66+ deriving (GHC.Show.Show, GHC.Classes.Eq)
67+instance Data.Aeson.Types.ToJSON.ToJSON SocketAddressScheme
68+ where toJSON (SocketAddressSchemeOther val) = val
69+ toJSON (SocketAddressSchemeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
70+ toJSON (SocketAddressSchemeEnumHTTP) = "HTTP"
71+ toJSON (SocketAddressSchemeEnumHTTPS) = "HTTPS"
72+instance Data.Aeson.Types.FromJSON.FromJSON SocketAddressScheme
73+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "HTTP" -> SocketAddressSchemeEnumHTTP
74+ | val GHC.Classes.== "HTTPS" -> SocketAddressSchemeEnumHTTPS
75+ | GHC.Base.otherwise -> SocketAddressSchemeOther val)
src/MockServer/Types/SocketAddress.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.SocketAddress where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data SocketAddress
6+instance Show SocketAddress
7+instance Eq SocketAddress
8+instance FromJSON SocketAddress
9+instance ToJSON SocketAddress
10+data SocketAddressScheme
11+instance Show SocketAddressScheme
12+instance Eq SocketAddressScheme
13+instance FromJSON SocketAddressScheme
14+instance ToJSON SocketAddressScheme
src/MockServer/Types/StringBodyMatcher.hsnew file+78
@@ -0,0 +1,78 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema StringBodyMatcher
7+module MockServer.Types.StringBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.StringBodyMatcher@ in the specification.
37+--
38+-- string body matcher
39+data StringBodyMatcher = StringBodyMatcher {
40+ -- | contentType
41+ stringBodyMatcherContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | not
43+ , stringBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
44+ -- | string
45+ , stringBodyMatcherString :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
46+ -- | subString
47+ , stringBodyMatcherSubString :: (GHC.Maybe.Maybe GHC.Types.Bool)
48+ -- | type
49+ , stringBodyMatcherType :: (GHC.Maybe.Maybe StringBodyMatcherType)
50+ } deriving (GHC.Show.Show
51+ , GHC.Classes.Eq)
52+instance Data.Aeson.Types.ToJSON.ToJSON StringBodyMatcher
53+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("string" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherString obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("subString" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherSubString obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherType obj) : GHC.Base.mempty))
54+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("string" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherString obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("subString" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherSubString obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (stringBodyMatcherType obj) : GHC.Base.mempty)))
55+instance Data.Aeson.Types.FromJSON.FromJSON StringBodyMatcher
56+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "StringBodyMatcher" (\obj -> ((((GHC.Base.pure StringBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "string")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "subString")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
57+-- | Create a new 'StringBodyMatcher' with all required fields.
58+mkStringBodyMatcher :: StringBodyMatcher
59+mkStringBodyMatcher = StringBodyMatcher{stringBodyMatcherContentType = GHC.Maybe.Nothing,
60+ stringBodyMatcherNot = GHC.Maybe.Nothing,
61+ stringBodyMatcherString = GHC.Maybe.Nothing,
62+ stringBodyMatcherSubString = GHC.Maybe.Nothing,
63+ stringBodyMatcherType = GHC.Maybe.Nothing}
64+-- | Defines the enum schema located at @components.schemas.StringBodyMatcher.properties.type@ in the specification.
65+--
66+--
67+data StringBodyMatcherType =
68+ StringBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
69+ | StringBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
70+ | StringBodyMatcherTypeEnumSTRING -- ^ Represents the JSON value @"STRING"@
71+ deriving (GHC.Show.Show, GHC.Classes.Eq)
72+instance Data.Aeson.Types.ToJSON.ToJSON StringBodyMatcherType
73+ where toJSON (StringBodyMatcherTypeOther val) = val
74+ toJSON (StringBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
75+ toJSON (StringBodyMatcherTypeEnumSTRING) = "STRING"
76+instance Data.Aeson.Types.FromJSON.FromJSON StringBodyMatcherType
77+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "STRING" -> StringBodyMatcherTypeEnumSTRING
78+ | GHC.Base.otherwise -> StringBodyMatcherTypeOther val)
src/MockServer/Types/StringBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.StringBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data StringBodyMatcher
6+instance Show StringBodyMatcher
7+instance Eq StringBodyMatcher
8+instance FromJSON StringBodyMatcher
9+instance ToJSON StringBodyMatcher
10+data StringBodyMatcherType
11+instance Show StringBodyMatcherType
12+instance Eq StringBodyMatcherType
13+instance FromJSON StringBodyMatcherType
14+instance ToJSON StringBodyMatcherType
src/MockServer/Types/StringOrJsonSchema.hsnew file+133
@@ -0,0 +1,133 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema StringOrJsonSchema
7+module MockServer.Types.StringOrJsonSchema where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.Http__JsonSchema_OrgDraft_04Schema
36+
37+-- | Defines the object schema located at @components.schemas.StringOrJsonSchema.oneOf@ in the specification.
38+--
39+--
40+data StringOrJsonSchemaOneOf2 = StringOrJsonSchemaOneOf2 {
41+ -- | not
42+ stringOrJsonSchemaOneOf2Not :: (GHC.Maybe.Maybe GHC.Types.Bool)
43+ -- | optional
44+ , stringOrJsonSchemaOneOf2Optional :: (GHC.Maybe.Maybe GHC.Types.Bool)
45+ -- | parameterStyle
46+ , stringOrJsonSchemaOneOf2ParameterStyle :: (GHC.Maybe.Maybe StringOrJsonSchemaOneOf2ParameterStyle)
47+ -- | schema
48+ , stringOrJsonSchemaOneOf2Schema :: (GHC.Maybe.Maybe Http___json_schema'org_draft_04_schema)
49+ -- | value
50+ , stringOrJsonSchemaOneOf2Value :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
51+ } deriving (GHC.Show.Show
52+ , GHC.Classes.Eq)
53+instance Data.Aeson.Types.ToJSON.ToJSON StringOrJsonSchemaOneOf2
54+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Not obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("optional" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Optional obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("parameterStyle" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2ParameterStyle obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("schema" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Schema obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("value" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Value obj) : GHC.Base.mempty))
55+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Not obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("optional" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Optional obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("parameterStyle" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2ParameterStyle obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("schema" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Schema obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("value" Data.Aeson.Types.ToJSON..=)) (stringOrJsonSchemaOneOf2Value obj) : GHC.Base.mempty)))
56+instance Data.Aeson.Types.FromJSON.FromJSON StringOrJsonSchemaOneOf2
57+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "StringOrJsonSchemaOneOf2" (\obj -> ((((GHC.Base.pure StringOrJsonSchemaOneOf2 GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "optional")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "parameterStyle")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "schema")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "value"))
58+-- | Create a new 'StringOrJsonSchemaOneOf2' with all required fields.
59+mkStringOrJsonSchemaOneOf2 :: StringOrJsonSchemaOneOf2
60+mkStringOrJsonSchemaOneOf2 = StringOrJsonSchemaOneOf2{stringOrJsonSchemaOneOf2Not = GHC.Maybe.Nothing,
61+ stringOrJsonSchemaOneOf2Optional = GHC.Maybe.Nothing,
62+ stringOrJsonSchemaOneOf2ParameterStyle = GHC.Maybe.Nothing,
63+ stringOrJsonSchemaOneOf2Schema = GHC.Maybe.Nothing,
64+ stringOrJsonSchemaOneOf2Value = GHC.Maybe.Nothing}
65+-- | Defines the enum schema located at @components.schemas.StringOrJsonSchema.oneOf.properties.parameterStyle@ in the specification.
66+--
67+--
68+data StringOrJsonSchemaOneOf2ParameterStyle =
69+ StringOrJsonSchemaOneOf2ParameterStyleOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
70+ | StringOrJsonSchemaOneOf2ParameterStyleTyped Data.Text.Internal.Text -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
71+ | StringOrJsonSchemaOneOf2ParameterStyleEnumSIMPLE -- ^ Represents the JSON value @"SIMPLE"@
72+ | StringOrJsonSchemaOneOf2ParameterStyleEnumSIMPLE_EXPLODED -- ^ Represents the JSON value @"SIMPLE_EXPLODED"@
73+ | StringOrJsonSchemaOneOf2ParameterStyleEnumLABEL -- ^ Represents the JSON value @"LABEL"@
74+ | StringOrJsonSchemaOneOf2ParameterStyleEnumLABEL_EXPLODED -- ^ Represents the JSON value @"LABEL_EXPLODED"@
75+ | StringOrJsonSchemaOneOf2ParameterStyleEnumMATRIX -- ^ Represents the JSON value @"MATRIX"@
76+ | StringOrJsonSchemaOneOf2ParameterStyleEnumMATRIX_EXPLODED -- ^ Represents the JSON value @"MATRIX_EXPLODED"@
77+ | StringOrJsonSchemaOneOf2ParameterStyleEnumFORM_EXPLODED -- ^ Represents the JSON value @"FORM_EXPLODED"@
78+ | StringOrJsonSchemaOneOf2ParameterStyleEnumFORM -- ^ Represents the JSON value @"FORM"@
79+ | StringOrJsonSchemaOneOf2ParameterStyleEnumSPACE_DELIMITED_EXPLODED -- ^ Represents the JSON value @"SPACE_DELIMITED_EXPLODED"@
80+ | StringOrJsonSchemaOneOf2ParameterStyleEnumSPACE_DELIMITED -- ^ Represents the JSON value @"SPACE_DELIMITED"@
81+ | StringOrJsonSchemaOneOf2ParameterStyleEnumPIPE_DELIMITED_EXPLODED -- ^ Represents the JSON value @"PIPE_DELIMITED_EXPLODED"@
82+ | StringOrJsonSchemaOneOf2ParameterStyleEnumPIPE_DELIMITED -- ^ Represents the JSON value @"PIPE_DELIMITED"@
83+ | StringOrJsonSchemaOneOf2ParameterStyleEnumDEEP_OBJECT -- ^ Represents the JSON value @"DEEP_OBJECT"@
84+ deriving (GHC.Show.Show, GHC.Classes.Eq)
85+instance Data.Aeson.Types.ToJSON.ToJSON StringOrJsonSchemaOneOf2ParameterStyle
86+ where toJSON (StringOrJsonSchemaOneOf2ParameterStyleOther val) = val
87+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleTyped val) = Data.Aeson.Types.ToJSON.toJSON val
88+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumSIMPLE) = "SIMPLE"
89+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumSIMPLE_EXPLODED) = "SIMPLE_EXPLODED"
90+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumLABEL) = "LABEL"
91+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumLABEL_EXPLODED) = "LABEL_EXPLODED"
92+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumMATRIX) = "MATRIX"
93+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumMATRIX_EXPLODED) = "MATRIX_EXPLODED"
94+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumFORM_EXPLODED) = "FORM_EXPLODED"
95+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumFORM) = "FORM"
96+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumSPACE_DELIMITED_EXPLODED) = "SPACE_DELIMITED_EXPLODED"
97+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumSPACE_DELIMITED) = "SPACE_DELIMITED"
98+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumPIPE_DELIMITED_EXPLODED) = "PIPE_DELIMITED_EXPLODED"
99+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumPIPE_DELIMITED) = "PIPE_DELIMITED"
100+ toJSON (StringOrJsonSchemaOneOf2ParameterStyleEnumDEEP_OBJECT) = "DEEP_OBJECT"
101+instance Data.Aeson.Types.FromJSON.FromJSON StringOrJsonSchemaOneOf2ParameterStyle
102+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "SIMPLE" -> StringOrJsonSchemaOneOf2ParameterStyleEnumSIMPLE
103+ | val GHC.Classes.== "SIMPLE_EXPLODED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumSIMPLE_EXPLODED
104+ | val GHC.Classes.== "LABEL" -> StringOrJsonSchemaOneOf2ParameterStyleEnumLABEL
105+ | val GHC.Classes.== "LABEL_EXPLODED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumLABEL_EXPLODED
106+ | val GHC.Classes.== "MATRIX" -> StringOrJsonSchemaOneOf2ParameterStyleEnumMATRIX
107+ | val GHC.Classes.== "MATRIX_EXPLODED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumMATRIX_EXPLODED
108+ | val GHC.Classes.== "FORM_EXPLODED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumFORM_EXPLODED
109+ | val GHC.Classes.== "FORM" -> StringOrJsonSchemaOneOf2ParameterStyleEnumFORM
110+ | val GHC.Classes.== "SPACE_DELIMITED_EXPLODED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumSPACE_DELIMITED_EXPLODED
111+ | val GHC.Classes.== "SPACE_DELIMITED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumSPACE_DELIMITED
112+ | val GHC.Classes.== "PIPE_DELIMITED_EXPLODED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumPIPE_DELIMITED_EXPLODED
113+ | val GHC.Classes.== "PIPE_DELIMITED" -> StringOrJsonSchemaOneOf2ParameterStyleEnumPIPE_DELIMITED
114+ | val GHC.Classes.== "DEEP_OBJECT" -> StringOrJsonSchemaOneOf2ParameterStyleEnumDEEP_OBJECT
115+ | GHC.Base.otherwise -> StringOrJsonSchemaOneOf2ParameterStyleOther val)
116+-- | Defines the oneOf schema located at @components.schemas.StringOrJsonSchema.oneOf@ in the specification.
117+--
118+--
119+data StringOrJsonSchemaVariants =
120+ StringOrJsonSchemaText Data.Text.Internal.Text
121+ | StringOrJsonSchemaStringOrJsonSchemaOneOf2 StringOrJsonSchemaOneOf2
122+ deriving (GHC.Show.Show, GHC.Classes.Eq)
123+instance Data.Aeson.Types.ToJSON.ToJSON StringOrJsonSchemaVariants
124+ where toJSON (StringOrJsonSchemaText a) = Data.Aeson.Types.ToJSON.toJSON a
125+ toJSON (StringOrJsonSchemaStringOrJsonSchemaOneOf2 a) = Data.Aeson.Types.ToJSON.toJSON a
126+instance Data.Aeson.Types.FromJSON.FromJSON StringOrJsonSchemaVariants
127+ where parseJSON val = case (StringOrJsonSchemaText Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> ((StringOrJsonSchemaStringOrJsonSchemaOneOf2 Data.Functor.<$> Data.Aeson.Types.FromJSON.fromJSON val) GHC.Base.<|> Data.Aeson.Types.Internal.Error "No variant matched") of
128+ Data.Aeson.Types.Internal.Success a -> GHC.Base.pure a
129+ Data.Aeson.Types.Internal.Error a -> Control.Monad.Fail.fail a
130+-- | Defines an alias for the schema located at @components.schemas.StringOrJsonSchema.oneOf@ in the specification.
131+--
132+--
133+type StringOrJsonSchema = StringOrJsonSchemaVariants
src/MockServer/Types/StringOrJsonSchema.hs-bootnew file+20
@@ -0,0 +1,20 @@
1+module MockServer.Types.StringOrJsonSchema where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data StringOrJsonSchemaOneOf2
6+instance Show StringOrJsonSchemaOneOf2
7+instance Eq StringOrJsonSchemaOneOf2
8+instance FromJSON StringOrJsonSchemaOneOf2
9+instance ToJSON StringOrJsonSchemaOneOf2
10+data StringOrJsonSchemaOneOf2ParameterStyle
11+instance Show StringOrJsonSchemaOneOf2ParameterStyle
12+instance Eq StringOrJsonSchemaOneOf2ParameterStyle
13+instance FromJSON StringOrJsonSchemaOneOf2ParameterStyle
14+instance ToJSON StringOrJsonSchemaOneOf2ParameterStyle
15+data StringOrJsonSchemaVariants
16+instance Show StringOrJsonSchemaVariants
17+instance Eq StringOrJsonSchemaVariants
18+instance FromJSON StringOrJsonSchemaVariants
19+instance ToJSON StringOrJsonSchemaVariants
20+type StringOrJsonSchema = StringOrJsonSchemaVariants
src/MockServer/Types/StringResponseBody.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema StringResponseBody
7+module MockServer.Types.StringResponseBody where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.StringResponseBody@ in the specification.
37+--
38+-- string response body
39+data StringResponseBody = StringResponseBody {
40+ -- | contentType
41+ stringResponseBodyContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | not
43+ , stringResponseBodyNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
44+ -- | string
45+ , stringResponseBodyString :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
46+ -- | type
47+ , stringResponseBodyType :: (GHC.Maybe.Maybe StringResponseBodyType)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON StringResponseBody
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("string" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyString obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyType obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("string" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyString obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (stringResponseBodyType obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON StringResponseBody
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "StringResponseBody" (\obj -> (((GHC.Base.pure StringResponseBody GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "string")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type"))
55+-- | Create a new 'StringResponseBody' with all required fields.
56+mkStringResponseBody :: StringResponseBody
57+mkStringResponseBody = StringResponseBody{stringResponseBodyContentType = GHC.Maybe.Nothing,
58+ stringResponseBodyNot = GHC.Maybe.Nothing,
59+ stringResponseBodyString = GHC.Maybe.Nothing,
60+ stringResponseBodyType = GHC.Maybe.Nothing}
61+-- | Defines the enum schema located at @components.schemas.StringResponseBody.properties.type@ in the specification.
62+--
63+--
64+data StringResponseBodyType =
65+ StringResponseBodyTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
66+ | StringResponseBodyTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
67+ | StringResponseBodyTypeEnumSTRING -- ^ Represents the JSON value @"STRING"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON StringResponseBodyType
70+ where toJSON (StringResponseBodyTypeOther val) = val
71+ toJSON (StringResponseBodyTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (StringResponseBodyTypeEnumSTRING) = "STRING"
73+instance Data.Aeson.Types.FromJSON.FromJSON StringResponseBodyType
74+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "STRING" -> StringResponseBodyTypeEnumSTRING
75+ | GHC.Base.otherwise -> StringResponseBodyTypeOther val)
src/MockServer/Types/StringResponseBody.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.StringResponseBody where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data StringResponseBody
6+instance Show StringResponseBody
7+instance Eq StringResponseBody
8+instance FromJSON StringResponseBody
9+instance ToJSON StringResponseBody
10+data StringResponseBodyType
11+instance Show StringResponseBodyType
12+instance Eq StringResponseBodyType
13+instance FromJSON StringResponseBodyType
14+instance ToJSON StringResponseBodyType
src/MockServer/Types/TimeToLive.hsnew file+90
@@ -0,0 +1,90 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema TimeToLive
7+module MockServer.Types.TimeToLive where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.TimeToLive@ in the specification.
37+--
38+--
39+data TimeToLive = TimeToLive {
40+ -- | timeToLive
41+ timeToLiveTimeToLive :: (GHC.Maybe.Maybe GHC.Types.Int)
42+ -- | timeUnit
43+ , timeToLiveTimeUnit :: (GHC.Maybe.Maybe TimeToLiveTimeUnit)
44+ -- | unlimited
45+ , timeToLiveUnlimited :: (GHC.Maybe.Maybe GHC.Types.Bool)
46+ } deriving (GHC.Show.Show
47+ , GHC.Classes.Eq)
48+instance Data.Aeson.Types.ToJSON.ToJSON TimeToLive
49+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeToLive" Data.Aeson.Types.ToJSON..=)) (timeToLiveTimeToLive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeUnit" Data.Aeson.Types.ToJSON..=)) (timeToLiveTimeUnit obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("unlimited" Data.Aeson.Types.ToJSON..=)) (timeToLiveUnlimited obj) : GHC.Base.mempty))
50+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeToLive" Data.Aeson.Types.ToJSON..=)) (timeToLiveTimeToLive obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("timeUnit" Data.Aeson.Types.ToJSON..=)) (timeToLiveTimeUnit obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("unlimited" Data.Aeson.Types.ToJSON..=)) (timeToLiveUnlimited obj) : GHC.Base.mempty)))
51+instance Data.Aeson.Types.FromJSON.FromJSON TimeToLive
52+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "TimeToLive" (\obj -> ((GHC.Base.pure TimeToLive GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "timeToLive")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "timeUnit")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "unlimited"))
53+-- | Create a new 'TimeToLive' with all required fields.
54+mkTimeToLive :: TimeToLive
55+mkTimeToLive = TimeToLive{timeToLiveTimeToLive = GHC.Maybe.Nothing,
56+ timeToLiveTimeUnit = GHC.Maybe.Nothing,
57+ timeToLiveUnlimited = GHC.Maybe.Nothing}
58+-- | Defines the enum schema located at @components.schemas.TimeToLive.properties.timeUnit@ in the specification.
59+--
60+--
61+data TimeToLiveTimeUnit =
62+ TimeToLiveTimeUnitOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
63+ | TimeToLiveTimeUnitTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
64+ | TimeToLiveTimeUnitEnumDAYS -- ^ Represents the JSON value @"DAYS"@
65+ | TimeToLiveTimeUnitEnumHOURS -- ^ Represents the JSON value @"HOURS"@
66+ | TimeToLiveTimeUnitEnumMINUTES -- ^ Represents the JSON value @"MINUTES"@
67+ | TimeToLiveTimeUnitEnumSECONDS -- ^ Represents the JSON value @"SECONDS"@
68+ | TimeToLiveTimeUnitEnumMILLISECONDS -- ^ Represents the JSON value @"MILLISECONDS"@
69+ | TimeToLiveTimeUnitEnumMICROSECONDS -- ^ Represents the JSON value @"MICROSECONDS"@
70+ | TimeToLiveTimeUnitEnumNANOSECONDS -- ^ Represents the JSON value @"NANOSECONDS"@
71+ deriving (GHC.Show.Show, GHC.Classes.Eq)
72+instance Data.Aeson.Types.ToJSON.ToJSON TimeToLiveTimeUnit
73+ where toJSON (TimeToLiveTimeUnitOther val) = val
74+ toJSON (TimeToLiveTimeUnitTyped val) = Data.Aeson.Types.ToJSON.toJSON val
75+ toJSON (TimeToLiveTimeUnitEnumDAYS) = "DAYS"
76+ toJSON (TimeToLiveTimeUnitEnumHOURS) = "HOURS"
77+ toJSON (TimeToLiveTimeUnitEnumMINUTES) = "MINUTES"
78+ toJSON (TimeToLiveTimeUnitEnumSECONDS) = "SECONDS"
79+ toJSON (TimeToLiveTimeUnitEnumMILLISECONDS) = "MILLISECONDS"
80+ toJSON (TimeToLiveTimeUnitEnumMICROSECONDS) = "MICROSECONDS"
81+ toJSON (TimeToLiveTimeUnitEnumNANOSECONDS) = "NANOSECONDS"
82+instance Data.Aeson.Types.FromJSON.FromJSON TimeToLiveTimeUnit
83+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "DAYS" -> TimeToLiveTimeUnitEnumDAYS
84+ | val GHC.Classes.== "HOURS" -> TimeToLiveTimeUnitEnumHOURS
85+ | val GHC.Classes.== "MINUTES" -> TimeToLiveTimeUnitEnumMINUTES
86+ | val GHC.Classes.== "SECONDS" -> TimeToLiveTimeUnitEnumSECONDS
87+ | val GHC.Classes.== "MILLISECONDS" -> TimeToLiveTimeUnitEnumMILLISECONDS
88+ | val GHC.Classes.== "MICROSECONDS" -> TimeToLiveTimeUnitEnumMICROSECONDS
89+ | val GHC.Classes.== "NANOSECONDS" -> TimeToLiveTimeUnitEnumNANOSECONDS
90+ | GHC.Base.otherwise -> TimeToLiveTimeUnitOther val)
src/MockServer/Types/TimeToLive.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.TimeToLive where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data TimeToLive
6+instance Show TimeToLive
7+instance Eq TimeToLive
8+instance FromJSON TimeToLive
9+instance ToJSON TimeToLive
10+data TimeToLiveTimeUnit
11+instance Show TimeToLiveTimeUnit
12+instance Eq TimeToLiveTimeUnit
13+instance FromJSON TimeToLiveTimeUnit
14+instance ToJSON TimeToLiveTimeUnit
src/MockServer/Types/Times.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Times
7+module MockServer.Types.Times where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.Times@ in the specification.
37+--
38+--
39+data Times = Times {
40+ -- | remainingTimes
41+ timesRemainingTimes :: (GHC.Maybe.Maybe GHC.Types.Int)
42+ -- | unlimited
43+ , timesUnlimited :: (GHC.Maybe.Maybe GHC.Types.Bool)
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON Times
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remainingTimes" Data.Aeson.Types.ToJSON..=)) (timesRemainingTimes obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("unlimited" Data.Aeson.Types.ToJSON..=)) (timesUnlimited obj) : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("remainingTimes" Data.Aeson.Types.ToJSON..=)) (timesRemainingTimes obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("unlimited" Data.Aeson.Types.ToJSON..=)) (timesUnlimited obj) : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON Times
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "Times" (\obj -> (GHC.Base.pure Times GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "remainingTimes")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "unlimited"))
51+-- | Create a new 'Times' with all required fields.
52+mkTimes :: Times
53+mkTimes = Times{timesRemainingTimes = GHC.Maybe.Nothing,
54+ timesUnlimited = GHC.Maybe.Nothing}
src/MockServer/Types/Times.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.Times where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data Times
6+instance Show Times
7+instance Eq Times
8+instance FromJSON Times
9+instance ToJSON Times
src/MockServer/Types/Verification.hsnew file+63
@@ -0,0 +1,63 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema Verification
7+module MockServer.Types.Verification where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.ExpectationId
36+import {-# SOURCE #-} MockServer.Types.RequestDefinition
37+import {-# SOURCE #-} MockServer.Types.VerificationTimes
38+
39+-- | Defines the object schema located at @components.schemas.Verification@ in the specification.
40+--
41+-- verification
42+data Verification = Verification {
43+ -- | expectationId
44+ verificationExpectationId :: (GHC.Maybe.Maybe ExpectationId)
45+ -- | httpRequest
46+ , verificationHttpRequest :: (GHC.Maybe.Maybe RequestDefinition)
47+ -- | maximumNumberOfRequestToReturnInVerificationFailure
48+ , verificationMaximumNumberOfRequestToReturnInVerificationFailure :: (GHC.Maybe.Maybe GHC.Types.Int)
49+ -- | times: number of request to verify
50+ , verificationTimes :: (GHC.Maybe.Maybe VerificationTimes)
51+ } deriving (GHC.Show.Show
52+ , GHC.Classes.Eq)
53+instance Data.Aeson.Types.ToJSON.ToJSON Verification
54+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("expectationId" Data.Aeson.Types.ToJSON..=)) (verificationExpectationId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequest" Data.Aeson.Types.ToJSON..=)) (verificationHttpRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("maximumNumberOfRequestToReturnInVerificationFailure" Data.Aeson.Types.ToJSON..=)) (verificationMaximumNumberOfRequestToReturnInVerificationFailure obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("times" Data.Aeson.Types.ToJSON..=)) (verificationTimes obj) : GHC.Base.mempty))
55+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("expectationId" Data.Aeson.Types.ToJSON..=)) (verificationExpectationId obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequest" Data.Aeson.Types.ToJSON..=)) (verificationHttpRequest obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("maximumNumberOfRequestToReturnInVerificationFailure" Data.Aeson.Types.ToJSON..=)) (verificationMaximumNumberOfRequestToReturnInVerificationFailure obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("times" Data.Aeson.Types.ToJSON..=)) (verificationTimes obj) : GHC.Base.mempty)))
56+instance Data.Aeson.Types.FromJSON.FromJSON Verification
57+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "Verification" (\obj -> (((GHC.Base.pure Verification GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "expectationId")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpRequest")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "maximumNumberOfRequestToReturnInVerificationFailure")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "times"))
58+-- | Create a new 'Verification' with all required fields.
59+mkVerification :: Verification
60+mkVerification = Verification{verificationExpectationId = GHC.Maybe.Nothing,
61+ verificationHttpRequest = GHC.Maybe.Nothing,
62+ verificationMaximumNumberOfRequestToReturnInVerificationFailure = GHC.Maybe.Nothing,
63+ verificationTimes = GHC.Maybe.Nothing}
src/MockServer/Types/Verification.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.Verification where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data Verification
6+instance Show Verification
7+instance Eq Verification
8+instance FromJSON Verification
9+instance ToJSON Verification
src/MockServer/Types/VerificationSequence.hsnew file+59
@@ -0,0 +1,59 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema VerificationSequence
7+module MockServer.Types.VerificationSequence where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+import {-# SOURCE #-} MockServer.Types.ExpectationId
36+import {-# SOURCE #-} MockServer.Types.RequestDefinition
37+
38+-- | Defines the object schema located at @components.schemas.VerificationSequence@ in the specification.
39+--
40+-- verification sequence
41+data VerificationSequence = VerificationSequence {
42+ -- | expectationIds
43+ verificationSequenceExpectationIds :: (GHC.Maybe.Maybe ([ExpectationId]))
44+ -- | httpRequests
45+ , verificationSequenceHttpRequests :: (GHC.Maybe.Maybe ([RequestDefinition]))
46+ -- | maximumNumberOfRequestToReturnInVerificationFailure
47+ , verificationSequenceMaximumNumberOfRequestToReturnInVerificationFailure :: (GHC.Maybe.Maybe GHC.Types.Int)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON VerificationSequence
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("expectationIds" Data.Aeson.Types.ToJSON..=)) (verificationSequenceExpectationIds obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequests" Data.Aeson.Types.ToJSON..=)) (verificationSequenceHttpRequests obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("maximumNumberOfRequestToReturnInVerificationFailure" Data.Aeson.Types.ToJSON..=)) (verificationSequenceMaximumNumberOfRequestToReturnInVerificationFailure obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("expectationIds" Data.Aeson.Types.ToJSON..=)) (verificationSequenceExpectationIds obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("httpRequests" Data.Aeson.Types.ToJSON..=)) (verificationSequenceHttpRequests obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("maximumNumberOfRequestToReturnInVerificationFailure" Data.Aeson.Types.ToJSON..=)) (verificationSequenceMaximumNumberOfRequestToReturnInVerificationFailure obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON VerificationSequence
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "VerificationSequence" (\obj -> ((GHC.Base.pure VerificationSequence GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "expectationIds")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "httpRequests")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "maximumNumberOfRequestToReturnInVerificationFailure"))
55+-- | Create a new 'VerificationSequence' with all required fields.
56+mkVerificationSequence :: VerificationSequence
57+mkVerificationSequence = VerificationSequence{verificationSequenceExpectationIds = GHC.Maybe.Nothing,
58+ verificationSequenceHttpRequests = GHC.Maybe.Nothing,
59+ verificationSequenceMaximumNumberOfRequestToReturnInVerificationFailure = GHC.Maybe.Nothing}
src/MockServer/Types/VerificationSequence.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.VerificationSequence where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data VerificationSequence
6+instance Show VerificationSequence
7+instance Eq VerificationSequence
8+instance FromJSON VerificationSequence
9+instance ToJSON VerificationSequence
src/MockServer/Types/VerificationTimes.hsnew file+54
@@ -0,0 +1,54 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema VerificationTimes
7+module MockServer.Types.VerificationTimes where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.VerificationTimes@ in the specification.
37+--
38+-- number of request to verify
39+data VerificationTimes = VerificationTimes {
40+ -- | atLeast
41+ verificationTimesAtLeast :: (GHC.Maybe.Maybe GHC.Types.Int)
42+ -- | atMost
43+ , verificationTimesAtMost :: (GHC.Maybe.Maybe GHC.Types.Int)
44+ } deriving (GHC.Show.Show
45+ , GHC.Classes.Eq)
46+instance Data.Aeson.Types.ToJSON.ToJSON VerificationTimes
47+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("atLeast" Data.Aeson.Types.ToJSON..=)) (verificationTimesAtLeast obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("atMost" Data.Aeson.Types.ToJSON..=)) (verificationTimesAtMost obj) : GHC.Base.mempty))
48+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("atLeast" Data.Aeson.Types.ToJSON..=)) (verificationTimesAtLeast obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("atMost" Data.Aeson.Types.ToJSON..=)) (verificationTimesAtMost obj) : GHC.Base.mempty)))
49+instance Data.Aeson.Types.FromJSON.FromJSON VerificationTimes
50+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "VerificationTimes" (\obj -> (GHC.Base.pure VerificationTimes GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "atLeast")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "atMost"))
51+-- | Create a new 'VerificationTimes' with all required fields.
52+mkVerificationTimes :: VerificationTimes
53+mkVerificationTimes = VerificationTimes{verificationTimesAtLeast = GHC.Maybe.Nothing,
54+ verificationTimesAtMost = GHC.Maybe.Nothing}
src/MockServer/Types/VerificationTimes.hs-bootnew file+9
@@ -0,0 +1,9 @@
1+module MockServer.Types.VerificationTimes where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data VerificationTimes
6+instance Show VerificationTimes
7+instance Eq VerificationTimes
8+instance FromJSON VerificationTimes
9+instance ToJSON VerificationTimes
src/MockServer/Types/XmlBodyMatcher.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema XmlBodyMatcher
7+module MockServer.Types.XmlBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.XmlBodyMatcher@ in the specification.
37+--
38+-- xml body matcher
39+data XmlBodyMatcher = XmlBodyMatcher {
40+ -- | contentType
41+ xmlBodyMatcherContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | not
43+ , xmlBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
44+ -- | type
45+ , xmlBodyMatcherType :: (GHC.Maybe.Maybe XmlBodyMatcherType)
46+ -- | xml
47+ , xmlBodyMatcherXml :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON XmlBodyMatcher
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xml" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherXml obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xml" Data.Aeson.Types.ToJSON..=)) (xmlBodyMatcherXml obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON XmlBodyMatcher
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "XmlBodyMatcher" (\obj -> (((GHC.Base.pure XmlBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "xml"))
55+-- | Create a new 'XmlBodyMatcher' with all required fields.
56+mkXmlBodyMatcher :: XmlBodyMatcher
57+mkXmlBodyMatcher = XmlBodyMatcher{xmlBodyMatcherContentType = GHC.Maybe.Nothing,
58+ xmlBodyMatcherNot = GHC.Maybe.Nothing,
59+ xmlBodyMatcherType = GHC.Maybe.Nothing,
60+ xmlBodyMatcherXml = GHC.Maybe.Nothing}
61+-- | Defines the enum schema located at @components.schemas.XmlBodyMatcher.properties.type@ in the specification.
62+--
63+--
64+data XmlBodyMatcherType =
65+ XmlBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
66+ | XmlBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
67+ | XmlBodyMatcherTypeEnumXML -- ^ Represents the JSON value @"XML"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON XmlBodyMatcherType
70+ where toJSON (XmlBodyMatcherTypeOther val) = val
71+ toJSON (XmlBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (XmlBodyMatcherTypeEnumXML) = "XML"
73+instance Data.Aeson.Types.FromJSON.FromJSON XmlBodyMatcherType
74+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "XML" -> XmlBodyMatcherTypeEnumXML
75+ | GHC.Base.otherwise -> XmlBodyMatcherTypeOther val)
src/MockServer/Types/XmlBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.XmlBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data XmlBodyMatcher
6+instance Show XmlBodyMatcher
7+instance Eq XmlBodyMatcher
8+instance FromJSON XmlBodyMatcher
9+instance ToJSON XmlBodyMatcher
10+data XmlBodyMatcherType
11+instance Show XmlBodyMatcherType
12+instance Eq XmlBodyMatcherType
13+instance FromJSON XmlBodyMatcherType
14+instance ToJSON XmlBodyMatcherType
src/MockServer/Types/XmlResponseBody.hsnew file+75
@@ -0,0 +1,75 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema XmlResponseBody
7+module MockServer.Types.XmlResponseBody where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.XmlResponseBody@ in the specification.
37+--
38+-- xml response body
39+data XmlResponseBody = XmlResponseBody {
40+ -- | contentType
41+ xmlResponseBodyContentType :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
42+ -- | not
43+ , xmlResponseBodyNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
44+ -- | type
45+ , xmlResponseBodyType :: (GHC.Maybe.Maybe XmlResponseBodyType)
46+ -- | xml
47+ , xmlResponseBodyXml :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
48+ } deriving (GHC.Show.Show
49+ , GHC.Classes.Eq)
50+instance Data.Aeson.Types.ToJSON.ToJSON XmlResponseBody
51+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xml" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyXml obj) : GHC.Base.mempty))
52+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("contentType" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyContentType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xml" Data.Aeson.Types.ToJSON..=)) (xmlResponseBodyXml obj) : GHC.Base.mempty)))
53+instance Data.Aeson.Types.FromJSON.FromJSON XmlResponseBody
54+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "XmlResponseBody" (\obj -> (((GHC.Base.pure XmlResponseBody GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "contentType")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "xml"))
55+-- | Create a new 'XmlResponseBody' with all required fields.
56+mkXmlResponseBody :: XmlResponseBody
57+mkXmlResponseBody = XmlResponseBody{xmlResponseBodyContentType = GHC.Maybe.Nothing,
58+ xmlResponseBodyNot = GHC.Maybe.Nothing,
59+ xmlResponseBodyType = GHC.Maybe.Nothing,
60+ xmlResponseBodyXml = GHC.Maybe.Nothing}
61+-- | Defines the enum schema located at @components.schemas.XmlResponseBody.properties.type@ in the specification.
62+--
63+--
64+data XmlResponseBodyType =
65+ XmlResponseBodyTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
66+ | XmlResponseBodyTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
67+ | XmlResponseBodyTypeEnumXML -- ^ Represents the JSON value @"XML"@
68+ deriving (GHC.Show.Show, GHC.Classes.Eq)
69+instance Data.Aeson.Types.ToJSON.ToJSON XmlResponseBodyType
70+ where toJSON (XmlResponseBodyTypeOther val) = val
71+ toJSON (XmlResponseBodyTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
72+ toJSON (XmlResponseBodyTypeEnumXML) = "XML"
73+instance Data.Aeson.Types.FromJSON.FromJSON XmlResponseBodyType
74+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "XML" -> XmlResponseBodyTypeEnumXML
75+ | GHC.Base.otherwise -> XmlResponseBodyTypeOther val)
src/MockServer/Types/XmlResponseBody.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.XmlResponseBody where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data XmlResponseBody
6+instance Show XmlResponseBody
7+instance Eq XmlResponseBody
8+instance FromJSON XmlResponseBody
9+instance ToJSON XmlResponseBody
10+data XmlResponseBodyType
11+instance Show XmlResponseBodyType
12+instance Eq XmlResponseBodyType
13+instance FromJSON XmlResponseBodyType
14+instance ToJSON XmlResponseBodyType
src/MockServer/Types/XmlSchemaBodyMatcher.hsnew file+72
@@ -0,0 +1,72 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema XmlSchemaBodyMatcher
7+module MockServer.Types.XmlSchemaBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.XmlSchemaBodyMatcher@ in the specification.
37+--
38+-- xml schema body matcher
39+data XmlSchemaBodyMatcher = XmlSchemaBodyMatcher {
40+ -- | not
41+ xmlSchemaBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
42+ -- | type
43+ , xmlSchemaBodyMatcherType :: (GHC.Maybe.Maybe XmlSchemaBodyMatcherType)
44+ -- | xmlSchema
45+ , xmlSchemaBodyMatcherXmlSchema :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
46+ } deriving (GHC.Show.Show
47+ , GHC.Classes.Eq)
48+instance Data.Aeson.Types.ToJSON.ToJSON XmlSchemaBodyMatcher
49+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xmlSchemaBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xmlSchemaBodyMatcherType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xmlSchema" Data.Aeson.Types.ToJSON..=)) (xmlSchemaBodyMatcherXmlSchema obj) : GHC.Base.mempty))
50+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xmlSchemaBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xmlSchemaBodyMatcherType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xmlSchema" Data.Aeson.Types.ToJSON..=)) (xmlSchemaBodyMatcherXmlSchema obj) : GHC.Base.mempty)))
51+instance Data.Aeson.Types.FromJSON.FromJSON XmlSchemaBodyMatcher
52+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "XmlSchemaBodyMatcher" (\obj -> ((GHC.Base.pure XmlSchemaBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "xmlSchema"))
53+-- | Create a new 'XmlSchemaBodyMatcher' with all required fields.
54+mkXmlSchemaBodyMatcher :: XmlSchemaBodyMatcher
55+mkXmlSchemaBodyMatcher = XmlSchemaBodyMatcher{xmlSchemaBodyMatcherNot = GHC.Maybe.Nothing,
56+ xmlSchemaBodyMatcherType = GHC.Maybe.Nothing,
57+ xmlSchemaBodyMatcherXmlSchema = GHC.Maybe.Nothing}
58+-- | Defines the enum schema located at @components.schemas.XmlSchemaBodyMatcher.properties.type@ in the specification.
59+--
60+--
61+data XmlSchemaBodyMatcherType =
62+ XmlSchemaBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
63+ | XmlSchemaBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
64+ | XmlSchemaBodyMatcherTypeEnumXML_SCHEMA -- ^ Represents the JSON value @"XML_SCHEMA"@
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+instance Data.Aeson.Types.ToJSON.ToJSON XmlSchemaBodyMatcherType
67+ where toJSON (XmlSchemaBodyMatcherTypeOther val) = val
68+ toJSON (XmlSchemaBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
69+ toJSON (XmlSchemaBodyMatcherTypeEnumXML_SCHEMA) = "XML_SCHEMA"
70+instance Data.Aeson.Types.FromJSON.FromJSON XmlSchemaBodyMatcherType
71+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "XML_SCHEMA" -> XmlSchemaBodyMatcherTypeEnumXML_SCHEMA
72+ | GHC.Base.otherwise -> XmlSchemaBodyMatcherTypeOther val)
src/MockServer/Types/XmlSchemaBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.XmlSchemaBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data XmlSchemaBodyMatcher
6+instance Show XmlSchemaBodyMatcher
7+instance Eq XmlSchemaBodyMatcher
8+instance FromJSON XmlSchemaBodyMatcher
9+instance ToJSON XmlSchemaBodyMatcher
10+data XmlSchemaBodyMatcherType
11+instance Show XmlSchemaBodyMatcherType
12+instance Eq XmlSchemaBodyMatcherType
13+instance FromJSON XmlSchemaBodyMatcherType
14+instance ToJSON XmlSchemaBodyMatcherType
src/MockServer/Types/XpathBodyMatcher.hsnew file+72
@@ -0,0 +1,72 @@
1+-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
2+
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE MultiWayIf #-}
5+
6+-- | Contains the types generated from the schema XpathBodyMatcher
7+module MockServer.Types.XpathBodyMatcher where
8+
9+import qualified Prelude as GHC.Integer.Type
10+import qualified Prelude as GHC.Maybe
11+import qualified Control.Monad.Fail
12+import qualified Data.Aeson
13+import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14+import qualified Data.Aeson as Data.Aeson.Types
15+import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16+import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17+import qualified Data.Aeson as Data.Aeson.Types.Internal
18+import qualified Data.ByteString.Char8
19+import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20+import qualified Data.Foldable
21+import qualified Data.Functor
22+import qualified Data.Maybe
23+import qualified Data.Scientific
24+import qualified Data.Text
25+import qualified Data.Text.Internal
26+import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27+import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28+import qualified GHC.Base
29+import qualified GHC.Classes
30+import qualified GHC.Int
31+import qualified GHC.Show
32+import qualified GHC.Types
33+import qualified MockServer.Common
34+import MockServer.TypeAlias
35+
36+-- | Defines the object schema located at @components.schemas.XpathBodyMatcher@ in the specification.
37+--
38+-- xpath body matcher
39+data XpathBodyMatcher = XpathBodyMatcher {
40+ -- | not
41+ xpathBodyMatcherNot :: (GHC.Maybe.Maybe GHC.Types.Bool)
42+ -- | type
43+ , xpathBodyMatcherType :: (GHC.Maybe.Maybe XpathBodyMatcherType)
44+ -- | xpath
45+ , xpathBodyMatcherXpath :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
46+ } deriving (GHC.Show.Show
47+ , GHC.Classes.Eq)
48+instance Data.Aeson.Types.ToJSON.ToJSON XpathBodyMatcher
49+ where toJSON obj = Data.Aeson.Types.Internal.object (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xpathBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xpathBodyMatcherType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xpath" Data.Aeson.Types.ToJSON..=)) (xpathBodyMatcherXpath obj) : GHC.Base.mempty))
50+ toEncoding obj = Data.Aeson.Encoding.Internal.pairs (GHC.Base.mconcat (Data.Foldable.concat (Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("not" Data.Aeson.Types.ToJSON..=)) (xpathBodyMatcherNot obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("type" Data.Aeson.Types.ToJSON..=)) (xpathBodyMatcherType obj) : Data.Maybe.maybe GHC.Base.mempty (GHC.Base.pure GHC.Base.. ("xpath" Data.Aeson.Types.ToJSON..=)) (xpathBodyMatcherXpath obj) : GHC.Base.mempty)))
51+instance Data.Aeson.Types.FromJSON.FromJSON XpathBodyMatcher
52+ where parseJSON = Data.Aeson.Types.FromJSON.withObject "XpathBodyMatcher" (\obj -> ((GHC.Base.pure XpathBodyMatcher GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "not")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "type")) GHC.Base.<*> (obj Data.Aeson.Types.FromJSON..:! "xpath"))
53+-- | Create a new 'XpathBodyMatcher' with all required fields.
54+mkXpathBodyMatcher :: XpathBodyMatcher
55+mkXpathBodyMatcher = XpathBodyMatcher{xpathBodyMatcherNot = GHC.Maybe.Nothing,
56+ xpathBodyMatcherType = GHC.Maybe.Nothing,
57+ xpathBodyMatcherXpath = GHC.Maybe.Nothing}
58+-- | Defines the enum schema located at @components.schemas.XpathBodyMatcher.properties.type@ in the specification.
59+--
60+--
61+data XpathBodyMatcherType =
62+ XpathBodyMatcherTypeOther Data.Aeson.Types.Internal.Value -- ^ This case is used if the value encountered during decoding does not match any of the provided cases in the specification.
63+ | XpathBodyMatcherTypeTyped Data.Aeson.Types.Internal.Object -- ^ This constructor can be used to send values to the server which are not present in the specification yet.
64+ | XpathBodyMatcherTypeEnumXPATH -- ^ Represents the JSON value @"XPATH"@
65+ deriving (GHC.Show.Show, GHC.Classes.Eq)
66+instance Data.Aeson.Types.ToJSON.ToJSON XpathBodyMatcherType
67+ where toJSON (XpathBodyMatcherTypeOther val) = val
68+ toJSON (XpathBodyMatcherTypeTyped val) = Data.Aeson.Types.ToJSON.toJSON val
69+ toJSON (XpathBodyMatcherTypeEnumXPATH) = "XPATH"
70+instance Data.Aeson.Types.FromJSON.FromJSON XpathBodyMatcherType
71+ where parseJSON val = GHC.Base.pure (if | val GHC.Classes.== "XPATH" -> XpathBodyMatcherTypeEnumXPATH
72+ | GHC.Base.otherwise -> XpathBodyMatcherTypeOther val)
src/MockServer/Types/XpathBodyMatcher.hs-bootnew file+14
@@ -0,0 +1,14 @@
1+module MockServer.Types.XpathBodyMatcher where
2+import Data.Aeson
3+import qualified Data.Aeson as Data.Aeson.Types.Internal
4+import qualified MockServer.Common
5+data XpathBodyMatcher
6+instance Show XpathBodyMatcher
7+instance Eq XpathBodyMatcher
8+instance FromJSON XpathBodyMatcher
9+instance ToJSON XpathBodyMatcher
10+data XpathBodyMatcherType
11+instance Show XpathBodyMatcherType
12+instance Eq XpathBodyMatcherType
13+instance FromJSON XpathBodyMatcherType
14+instance ToJSON XpathBodyMatcherType