{-# 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.OpsWorks.DescribeRaidArrays
(
DescribeRaidArrays (..),
newDescribeRaidArrays,
describeRaidArrays_instanceId,
describeRaidArrays_raidArrayIds,
describeRaidArrays_stackId,
DescribeRaidArraysResponse (..),
newDescribeRaidArraysResponse,
describeRaidArraysResponse_raidArrays,
describeRaidArraysResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.OpsWorks.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeRaidArrays = DescribeRaidArrays'
{
DescribeRaidArrays -> Maybe Text
instanceId :: Prelude.Maybe Prelude.Text,
DescribeRaidArrays -> Maybe [Text]
raidArrayIds :: Prelude.Maybe [Prelude.Text],
DescribeRaidArrays -> Maybe Text
stackId :: Prelude.Maybe Prelude.Text
}
deriving (DescribeRaidArrays -> DescribeRaidArrays -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeRaidArrays -> DescribeRaidArrays -> Bool
$c/= :: DescribeRaidArrays -> DescribeRaidArrays -> Bool
== :: DescribeRaidArrays -> DescribeRaidArrays -> Bool
$c== :: DescribeRaidArrays -> DescribeRaidArrays -> Bool
Prelude.Eq, ReadPrec [DescribeRaidArrays]
ReadPrec DescribeRaidArrays
Int -> ReadS DescribeRaidArrays
ReadS [DescribeRaidArrays]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeRaidArrays]
$creadListPrec :: ReadPrec [DescribeRaidArrays]
readPrec :: ReadPrec DescribeRaidArrays
$creadPrec :: ReadPrec DescribeRaidArrays
readList :: ReadS [DescribeRaidArrays]
$creadList :: ReadS [DescribeRaidArrays]
readsPrec :: Int -> ReadS DescribeRaidArrays
$creadsPrec :: Int -> ReadS DescribeRaidArrays
Prelude.Read, Int -> DescribeRaidArrays -> ShowS
[DescribeRaidArrays] -> ShowS
DescribeRaidArrays -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeRaidArrays] -> ShowS
$cshowList :: [DescribeRaidArrays] -> ShowS
show :: DescribeRaidArrays -> String
$cshow :: DescribeRaidArrays -> String
showsPrec :: Int -> DescribeRaidArrays -> ShowS
$cshowsPrec :: Int -> DescribeRaidArrays -> ShowS
Prelude.Show, forall x. Rep DescribeRaidArrays x -> DescribeRaidArrays
forall x. DescribeRaidArrays -> Rep DescribeRaidArrays x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeRaidArrays x -> DescribeRaidArrays
$cfrom :: forall x. DescribeRaidArrays -> Rep DescribeRaidArrays x
Prelude.Generic)
newDescribeRaidArrays ::
DescribeRaidArrays
newDescribeRaidArrays :: DescribeRaidArrays
newDescribeRaidArrays =
DescribeRaidArrays'
{ $sel:instanceId:DescribeRaidArrays' :: Maybe Text
instanceId = forall a. Maybe a
Prelude.Nothing,
$sel:raidArrayIds:DescribeRaidArrays' :: Maybe [Text]
raidArrayIds = forall a. Maybe a
Prelude.Nothing,
$sel:stackId:DescribeRaidArrays' :: Maybe Text
stackId = forall a. Maybe a
Prelude.Nothing
}
describeRaidArrays_instanceId :: Lens.Lens' DescribeRaidArrays (Prelude.Maybe Prelude.Text)
describeRaidArrays_instanceId :: Lens' DescribeRaidArrays (Maybe Text)
describeRaidArrays_instanceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeRaidArrays' {Maybe Text
instanceId :: Maybe Text
$sel:instanceId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
instanceId} -> Maybe Text
instanceId) (\s :: DescribeRaidArrays
s@DescribeRaidArrays' {} Maybe Text
a -> DescribeRaidArrays
s {$sel:instanceId:DescribeRaidArrays' :: Maybe Text
instanceId = Maybe Text
a} :: DescribeRaidArrays)
describeRaidArrays_raidArrayIds :: Lens.Lens' DescribeRaidArrays (Prelude.Maybe [Prelude.Text])
describeRaidArrays_raidArrayIds :: Lens' DescribeRaidArrays (Maybe [Text])
describeRaidArrays_raidArrayIds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeRaidArrays' {Maybe [Text]
raidArrayIds :: Maybe [Text]
$sel:raidArrayIds:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe [Text]
raidArrayIds} -> Maybe [Text]
raidArrayIds) (\s :: DescribeRaidArrays
s@DescribeRaidArrays' {} Maybe [Text]
a -> DescribeRaidArrays
s {$sel:raidArrayIds:DescribeRaidArrays' :: Maybe [Text]
raidArrayIds = Maybe [Text]
a} :: DescribeRaidArrays) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
describeRaidArrays_stackId :: Lens.Lens' DescribeRaidArrays (Prelude.Maybe Prelude.Text)
describeRaidArrays_stackId :: Lens' DescribeRaidArrays (Maybe Text)
describeRaidArrays_stackId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeRaidArrays' {Maybe Text
stackId :: Maybe Text
$sel:stackId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
stackId} -> Maybe Text
stackId) (\s :: DescribeRaidArrays
s@DescribeRaidArrays' {} Maybe Text
a -> DescribeRaidArrays
s {$sel:stackId:DescribeRaidArrays' :: Maybe Text
stackId = Maybe Text
a} :: DescribeRaidArrays)
instance Core.AWSRequest DescribeRaidArrays where
type
AWSResponse DescribeRaidArrays =
DescribeRaidArraysResponse
request :: (Service -> Service)
-> DescribeRaidArrays -> Request DescribeRaidArrays
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 DescribeRaidArrays
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeRaidArrays)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe [RaidArray] -> Int -> DescribeRaidArraysResponse
DescribeRaidArraysResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"RaidArrays" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
forall (f :: * -> *) a b. Applicative f => 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 DescribeRaidArrays where
hashWithSalt :: Int -> DescribeRaidArrays -> Int
hashWithSalt Int
_salt DescribeRaidArrays' {Maybe [Text]
Maybe Text
stackId :: Maybe Text
raidArrayIds :: Maybe [Text]
instanceId :: Maybe Text
$sel:stackId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
$sel:raidArrayIds:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe [Text]
$sel:instanceId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
instanceId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
raidArrayIds
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
stackId
instance Prelude.NFData DescribeRaidArrays where
rnf :: DescribeRaidArrays -> ()
rnf DescribeRaidArrays' {Maybe [Text]
Maybe Text
stackId :: Maybe Text
raidArrayIds :: Maybe [Text]
instanceId :: Maybe Text
$sel:stackId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
$sel:raidArrayIds:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe [Text]
$sel:instanceId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
instanceId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
raidArrayIds
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
stackId
instance Data.ToHeaders DescribeRaidArrays where
toHeaders :: DescribeRaidArrays -> 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
"OpsWorks_20130218.DescribeRaidArrays" ::
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 DescribeRaidArrays where
toJSON :: DescribeRaidArrays -> Value
toJSON DescribeRaidArrays' {Maybe [Text]
Maybe Text
stackId :: Maybe Text
raidArrayIds :: Maybe [Text]
instanceId :: Maybe Text
$sel:stackId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
$sel:raidArrayIds:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe [Text]
$sel:instanceId:DescribeRaidArrays' :: DescribeRaidArrays -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"InstanceId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
instanceId,
(Key
"RaidArrayIds" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Text]
raidArrayIds,
(Key
"StackId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
stackId
]
)
instance Data.ToPath DescribeRaidArrays where
toPath :: DescribeRaidArrays -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeRaidArrays where
toQuery :: DescribeRaidArrays -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeRaidArraysResponse = DescribeRaidArraysResponse'
{
DescribeRaidArraysResponse -> Maybe [RaidArray]
raidArrays :: Prelude.Maybe [RaidArray],
DescribeRaidArraysResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeRaidArraysResponse -> DescribeRaidArraysResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeRaidArraysResponse -> DescribeRaidArraysResponse -> Bool
$c/= :: DescribeRaidArraysResponse -> DescribeRaidArraysResponse -> Bool
== :: DescribeRaidArraysResponse -> DescribeRaidArraysResponse -> Bool
$c== :: DescribeRaidArraysResponse -> DescribeRaidArraysResponse -> Bool
Prelude.Eq, ReadPrec [DescribeRaidArraysResponse]
ReadPrec DescribeRaidArraysResponse
Int -> ReadS DescribeRaidArraysResponse
ReadS [DescribeRaidArraysResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeRaidArraysResponse]
$creadListPrec :: ReadPrec [DescribeRaidArraysResponse]
readPrec :: ReadPrec DescribeRaidArraysResponse
$creadPrec :: ReadPrec DescribeRaidArraysResponse
readList :: ReadS [DescribeRaidArraysResponse]
$creadList :: ReadS [DescribeRaidArraysResponse]
readsPrec :: Int -> ReadS DescribeRaidArraysResponse
$creadsPrec :: Int -> ReadS DescribeRaidArraysResponse
Prelude.Read, Int -> DescribeRaidArraysResponse -> ShowS
[DescribeRaidArraysResponse] -> ShowS
DescribeRaidArraysResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeRaidArraysResponse] -> ShowS
$cshowList :: [DescribeRaidArraysResponse] -> ShowS
show :: DescribeRaidArraysResponse -> String
$cshow :: DescribeRaidArraysResponse -> String
showsPrec :: Int -> DescribeRaidArraysResponse -> ShowS
$cshowsPrec :: Int -> DescribeRaidArraysResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeRaidArraysResponse x -> DescribeRaidArraysResponse
forall x.
DescribeRaidArraysResponse -> Rep DescribeRaidArraysResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeRaidArraysResponse x -> DescribeRaidArraysResponse
$cfrom :: forall x.
DescribeRaidArraysResponse -> Rep DescribeRaidArraysResponse x
Prelude.Generic)
newDescribeRaidArraysResponse ::
Prelude.Int ->
DescribeRaidArraysResponse
newDescribeRaidArraysResponse :: Int -> DescribeRaidArraysResponse
newDescribeRaidArraysResponse Int
pHttpStatus_ =
DescribeRaidArraysResponse'
{ $sel:raidArrays:DescribeRaidArraysResponse' :: Maybe [RaidArray]
raidArrays =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeRaidArraysResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeRaidArraysResponse_raidArrays :: Lens.Lens' DescribeRaidArraysResponse (Prelude.Maybe [RaidArray])
describeRaidArraysResponse_raidArrays :: Lens' DescribeRaidArraysResponse (Maybe [RaidArray])
describeRaidArraysResponse_raidArrays = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeRaidArraysResponse' {Maybe [RaidArray]
raidArrays :: Maybe [RaidArray]
$sel:raidArrays:DescribeRaidArraysResponse' :: DescribeRaidArraysResponse -> Maybe [RaidArray]
raidArrays} -> Maybe [RaidArray]
raidArrays) (\s :: DescribeRaidArraysResponse
s@DescribeRaidArraysResponse' {} Maybe [RaidArray]
a -> DescribeRaidArraysResponse
s {$sel:raidArrays:DescribeRaidArraysResponse' :: Maybe [RaidArray]
raidArrays = Maybe [RaidArray]
a} :: DescribeRaidArraysResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
describeRaidArraysResponse_httpStatus :: Lens.Lens' DescribeRaidArraysResponse Prelude.Int
describeRaidArraysResponse_httpStatus :: Lens' DescribeRaidArraysResponse Int
describeRaidArraysResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeRaidArraysResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeRaidArraysResponse' :: DescribeRaidArraysResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeRaidArraysResponse
s@DescribeRaidArraysResponse' {} Int
a -> DescribeRaidArraysResponse
s {$sel:httpStatus:DescribeRaidArraysResponse' :: Int
httpStatus = Int
a} :: DescribeRaidArraysResponse)
instance Prelude.NFData DescribeRaidArraysResponse where
rnf :: DescribeRaidArraysResponse -> ()
rnf DescribeRaidArraysResponse' {Int
Maybe [RaidArray]
httpStatus :: Int
raidArrays :: Maybe [RaidArray]
$sel:httpStatus:DescribeRaidArraysResponse' :: DescribeRaidArraysResponse -> Int
$sel:raidArrays:DescribeRaidArraysResponse' :: DescribeRaidArraysResponse -> Maybe [RaidArray]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [RaidArray]
raidArrays
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus