git.iko.soy/typeable/mock-server-client
on update-generated-code help sign in
83 lines 5.3 kB history raw
1-- CHANGE WITH CAUTION: This is a generated code file generated by https://github.com/Haskell-OpenAPI-Code-Generator/Haskell-OpenAPI-Client-Code-Generator.
3{-# LANGUAGE OverloadedStrings #-}
4{-# LANGUAGE MultiWayIf #-}
6-- | Contains the types generated from the schema Body
7module MockServer.Types.Body where
9import qualified Prelude as GHC.Integer.Type
10import qualified Prelude as GHC.Maybe
11import qualified Control.Monad.Fail
12import qualified Data.Aeson
13import qualified Data.Aeson as Data.Aeson.Encoding.Internal
14import qualified Data.Aeson as Data.Aeson.Types
15import qualified Data.Aeson as Data.Aeson.Types.FromJSON
16import qualified Data.Aeson as Data.Aeson.Types.ToJSON
17import qualified Data.Aeson as Data.Aeson.Types.Internal
18import qualified Data.ByteString.Char8
19import qualified Data.ByteString.Char8 as Data.ByteString.Internal
20import qualified Data.Foldable
21import qualified Data.Functor
22import qualified Data.Maybe
23import qualified Data.Scientific
24import qualified Data.Text
25import qualified Data.Text.Internal
26import qualified Data.Time.Calendar as Data.Time.Calendar.Days
27import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
28import qualified GHC.Base
29import qualified GHC.Classes
30import qualified GHC.Int
31import qualified GHC.Show
32import qualified GHC.Types
33import qualified MockServer.Common
34import MockServer.TypeAlias
35import {-# SOURCE #-} MockServer.Types.BinaryBodyMatcher
36import {-# SOURCE #-} MockServer.Types.JsonBodyMatcher
37import {-# SOURCE #-} MockServer.Types.JsonPathBodyMatcher
38import {-# SOURCE #-} MockServer.Types.JsonSchemaBodyMatcher
39import {-# SOURCE #-} MockServer.Types.ParameterBodyMatcher
40import {-# SOURCE #-} MockServer.Types.RegexBodyMatcher
41import {-# SOURCE #-} MockServer.Types.StringBodyMatcher
42import {-# SOURCE #-} MockServer.Types.XmlBodyMatcher
43import {-# SOURCE #-} MockServer.Types.XmlSchemaBodyMatcher
44import {-# SOURCE #-} MockServer.Types.XpathBodyMatcher
46-- | Defines the oneOf schema located at @components.schemas.Body.anyOf@ in the specification.
47--
48-- request body matcher
49data 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)
63instance 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
76instance 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
83type Body = BodyVariants