{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.Forecast.UpdateDatasetGroup
(
UpdateDatasetGroup (..),
newUpdateDatasetGroup,
updateDatasetGroup_datasetGroupArn,
updateDatasetGroup_datasetArns,
UpdateDatasetGroupResponse (..),
newUpdateDatasetGroupResponse,
updateDatasetGroupResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Forecast.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data UpdateDatasetGroup = UpdateDatasetGroup'
{
UpdateDatasetGroup -> Text
datasetGroupArn :: Prelude.Text,
UpdateDatasetGroup -> [Text]
datasetArns :: [Prelude.Text]
}
deriving (UpdateDatasetGroup -> UpdateDatasetGroup -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateDatasetGroup -> UpdateDatasetGroup -> Bool
$c/= :: UpdateDatasetGroup -> UpdateDatasetGroup -> Bool
== :: UpdateDatasetGroup -> UpdateDatasetGroup -> Bool
$c== :: UpdateDatasetGroup -> UpdateDatasetGroup -> Bool
Prelude.Eq, ReadPrec [UpdateDatasetGroup]
ReadPrec UpdateDatasetGroup
Int -> ReadS UpdateDatasetGroup
ReadS [UpdateDatasetGroup]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateDatasetGroup]
$creadListPrec :: ReadPrec [UpdateDatasetGroup]
readPrec :: ReadPrec UpdateDatasetGroup
$creadPrec :: ReadPrec UpdateDatasetGroup
readList :: ReadS [UpdateDatasetGroup]
$creadList :: ReadS [UpdateDatasetGroup]
readsPrec :: Int -> ReadS UpdateDatasetGroup
$creadsPrec :: Int -> ReadS UpdateDatasetGroup
Prelude.Read, Int -> UpdateDatasetGroup -> ShowS
[UpdateDatasetGroup] -> ShowS
UpdateDatasetGroup -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateDatasetGroup] -> ShowS
$cshowList :: [UpdateDatasetGroup] -> ShowS
show :: UpdateDatasetGroup -> String
$cshow :: UpdateDatasetGroup -> String
showsPrec :: Int -> UpdateDatasetGroup -> ShowS
$cshowsPrec :: Int -> UpdateDatasetGroup -> ShowS
Prelude.Show, forall x. Rep UpdateDatasetGroup x -> UpdateDatasetGroup
forall x. UpdateDatasetGroup -> Rep UpdateDatasetGroup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UpdateDatasetGroup x -> UpdateDatasetGroup
$cfrom :: forall x. UpdateDatasetGroup -> Rep UpdateDatasetGroup x
Prelude.Generic)
newUpdateDatasetGroup ::
Prelude.Text ->
UpdateDatasetGroup
newUpdateDatasetGroup :: Text -> UpdateDatasetGroup
newUpdateDatasetGroup Text
pDatasetGroupArn_ =
UpdateDatasetGroup'
{ $sel:datasetGroupArn:UpdateDatasetGroup' :: Text
datasetGroupArn =
Text
pDatasetGroupArn_,
$sel:datasetArns:UpdateDatasetGroup' :: [Text]
datasetArns = forall a. Monoid a => a
Prelude.mempty
}
updateDatasetGroup_datasetGroupArn :: Lens.Lens' UpdateDatasetGroup Prelude.Text
updateDatasetGroup_datasetGroupArn :: Lens' UpdateDatasetGroup Text
updateDatasetGroup_datasetGroupArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDatasetGroup' {Text
datasetGroupArn :: Text
$sel:datasetGroupArn:UpdateDatasetGroup' :: UpdateDatasetGroup -> Text
datasetGroupArn} -> Text
datasetGroupArn) (\s :: UpdateDatasetGroup
s@UpdateDatasetGroup' {} Text
a -> UpdateDatasetGroup
s {$sel:datasetGroupArn:UpdateDatasetGroup' :: Text
datasetGroupArn = Text
a} :: UpdateDatasetGroup)
updateDatasetGroup_datasetArns :: Lens.Lens' UpdateDatasetGroup [Prelude.Text]
updateDatasetGroup_datasetArns :: Lens' UpdateDatasetGroup [Text]
updateDatasetGroup_datasetArns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDatasetGroup' {[Text]
datasetArns :: [Text]
$sel:datasetArns:UpdateDatasetGroup' :: UpdateDatasetGroup -> [Text]
datasetArns} -> [Text]
datasetArns) (\s :: UpdateDatasetGroup
s@UpdateDatasetGroup' {} [Text]
a -> UpdateDatasetGroup
s {$sel:datasetArns:UpdateDatasetGroup' :: [Text]
datasetArns = [Text]
a} :: UpdateDatasetGroup) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Core.AWSRequest UpdateDatasetGroup where
type
AWSResponse UpdateDatasetGroup =
UpdateDatasetGroupResponse
request :: (Service -> Service)
-> UpdateDatasetGroup -> Request UpdateDatasetGroup
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy UpdateDatasetGroup
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse UpdateDatasetGroup)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> UpdateDatasetGroupResponse
UpdateDatasetGroupResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable UpdateDatasetGroup where
hashWithSalt :: Int -> UpdateDatasetGroup -> Int
hashWithSalt Int
_salt UpdateDatasetGroup' {[Text]
Text
datasetArns :: [Text]
datasetGroupArn :: Text
$sel:datasetArns:UpdateDatasetGroup' :: UpdateDatasetGroup -> [Text]
$sel:datasetGroupArn:UpdateDatasetGroup' :: UpdateDatasetGroup -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
datasetGroupArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [Text]
datasetArns
instance Prelude.NFData UpdateDatasetGroup where
rnf :: UpdateDatasetGroup -> ()
rnf UpdateDatasetGroup' {[Text]
Text
datasetArns :: [Text]
datasetGroupArn :: Text
$sel:datasetArns:UpdateDatasetGroup' :: UpdateDatasetGroup -> [Text]
$sel:datasetGroupArn:UpdateDatasetGroup' :: UpdateDatasetGroup -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
datasetGroupArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [Text]
datasetArns
instance Data.ToHeaders UpdateDatasetGroup where
toHeaders :: UpdateDatasetGroup -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"AmazonForecast.UpdateDatasetGroup" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON UpdateDatasetGroup where
toJSON :: UpdateDatasetGroup -> Value
toJSON UpdateDatasetGroup' {[Text]
Text
datasetArns :: [Text]
datasetGroupArn :: Text
$sel:datasetArns:UpdateDatasetGroup' :: UpdateDatasetGroup -> [Text]
$sel:datasetGroupArn:UpdateDatasetGroup' :: UpdateDatasetGroup -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
(Key
"DatasetGroupArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
datasetGroupArn),
forall a. a -> Maybe a
Prelude.Just (Key
"DatasetArns" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= [Text]
datasetArns)
]
)
instance Data.ToPath UpdateDatasetGroup where
toPath :: UpdateDatasetGroup -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery UpdateDatasetGroup where
toQuery :: UpdateDatasetGroup -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data UpdateDatasetGroupResponse = UpdateDatasetGroupResponse'
{
UpdateDatasetGroupResponse -> Int
httpStatus :: Prelude.Int
}
deriving (UpdateDatasetGroupResponse -> UpdateDatasetGroupResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateDatasetGroupResponse -> UpdateDatasetGroupResponse -> Bool
$c/= :: UpdateDatasetGroupResponse -> UpdateDatasetGroupResponse -> Bool
== :: UpdateDatasetGroupResponse -> UpdateDatasetGroupResponse -> Bool
$c== :: UpdateDatasetGroupResponse -> UpdateDatasetGroupResponse -> Bool
Prelude.Eq, ReadPrec [UpdateDatasetGroupResponse]
ReadPrec UpdateDatasetGroupResponse
Int -> ReadS UpdateDatasetGroupResponse
ReadS [UpdateDatasetGroupResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateDatasetGroupResponse]
$creadListPrec :: ReadPrec [UpdateDatasetGroupResponse]
readPrec :: ReadPrec UpdateDatasetGroupResponse
$creadPrec :: ReadPrec UpdateDatasetGroupResponse
readList :: ReadS [UpdateDatasetGroupResponse]
$creadList :: ReadS [UpdateDatasetGroupResponse]
readsPrec :: Int -> ReadS UpdateDatasetGroupResponse
$creadsPrec :: Int -> ReadS UpdateDatasetGroupResponse
Prelude.Read, Int -> UpdateDatasetGroupResponse -> ShowS
[UpdateDatasetGroupResponse] -> ShowS
UpdateDatasetGroupResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateDatasetGroupResponse] -> ShowS
$cshowList :: [UpdateDatasetGroupResponse] -> ShowS
show :: UpdateDatasetGroupResponse -> String
$cshow :: UpdateDatasetGroupResponse -> String
showsPrec :: Int -> UpdateDatasetGroupResponse -> ShowS
$cshowsPrec :: Int -> UpdateDatasetGroupResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateDatasetGroupResponse x -> UpdateDatasetGroupResponse
forall x.
UpdateDatasetGroupResponse -> Rep UpdateDatasetGroupResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateDatasetGroupResponse x -> UpdateDatasetGroupResponse
$cfrom :: forall x.
UpdateDatasetGroupResponse -> Rep UpdateDatasetGroupResponse x
Prelude.Generic)
newUpdateDatasetGroupResponse ::
Prelude.Int ->
UpdateDatasetGroupResponse
newUpdateDatasetGroupResponse :: Int -> UpdateDatasetGroupResponse
newUpdateDatasetGroupResponse Int
pHttpStatus_ =
UpdateDatasetGroupResponse'
{ $sel:httpStatus:UpdateDatasetGroupResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
updateDatasetGroupResponse_httpStatus :: Lens.Lens' UpdateDatasetGroupResponse Prelude.Int
updateDatasetGroupResponse_httpStatus :: Lens' UpdateDatasetGroupResponse Int
updateDatasetGroupResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDatasetGroupResponse' {Int
httpStatus :: Int
$sel:httpStatus:UpdateDatasetGroupResponse' :: UpdateDatasetGroupResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: UpdateDatasetGroupResponse
s@UpdateDatasetGroupResponse' {} Int
a -> UpdateDatasetGroupResponse
s {$sel:httpStatus:UpdateDatasetGroupResponse' :: Int
httpStatus = Int
a} :: UpdateDatasetGroupResponse)
instance Prelude.NFData UpdateDatasetGroupResponse where
rnf :: UpdateDatasetGroupResponse -> ()
rnf UpdateDatasetGroupResponse' {Int
httpStatus :: Int
$sel:httpStatus:UpdateDatasetGroupResponse' :: UpdateDatasetGroupResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus