{-# 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.AppStream.AssociateApplicationFleet
(
AssociateApplicationFleet (..),
newAssociateApplicationFleet,
associateApplicationFleet_fleetName,
associateApplicationFleet_applicationArn,
AssociateApplicationFleetResponse (..),
newAssociateApplicationFleetResponse,
associateApplicationFleetResponse_applicationFleetAssociation,
associateApplicationFleetResponse_httpStatus,
)
where
import Amazonka.AppStream.Types
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data AssociateApplicationFleet = AssociateApplicationFleet'
{
AssociateApplicationFleet -> Text
fleetName :: Prelude.Text,
AssociateApplicationFleet -> Text
applicationArn :: Prelude.Text
}
deriving (AssociateApplicationFleet -> AssociateApplicationFleet -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AssociateApplicationFleet -> AssociateApplicationFleet -> Bool
$c/= :: AssociateApplicationFleet -> AssociateApplicationFleet -> Bool
== :: AssociateApplicationFleet -> AssociateApplicationFleet -> Bool
$c== :: AssociateApplicationFleet -> AssociateApplicationFleet -> Bool
Prelude.Eq, ReadPrec [AssociateApplicationFleet]
ReadPrec AssociateApplicationFleet
Int -> ReadS AssociateApplicationFleet
ReadS [AssociateApplicationFleet]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AssociateApplicationFleet]
$creadListPrec :: ReadPrec [AssociateApplicationFleet]
readPrec :: ReadPrec AssociateApplicationFleet
$creadPrec :: ReadPrec AssociateApplicationFleet
readList :: ReadS [AssociateApplicationFleet]
$creadList :: ReadS [AssociateApplicationFleet]
readsPrec :: Int -> ReadS AssociateApplicationFleet
$creadsPrec :: Int -> ReadS AssociateApplicationFleet
Prelude.Read, Int -> AssociateApplicationFleet -> ShowS
[AssociateApplicationFleet] -> ShowS
AssociateApplicationFleet -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AssociateApplicationFleet] -> ShowS
$cshowList :: [AssociateApplicationFleet] -> ShowS
show :: AssociateApplicationFleet -> String
$cshow :: AssociateApplicationFleet -> String
showsPrec :: Int -> AssociateApplicationFleet -> ShowS
$cshowsPrec :: Int -> AssociateApplicationFleet -> ShowS
Prelude.Show, forall x.
Rep AssociateApplicationFleet x -> AssociateApplicationFleet
forall x.
AssociateApplicationFleet -> Rep AssociateApplicationFleet x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep AssociateApplicationFleet x -> AssociateApplicationFleet
$cfrom :: forall x.
AssociateApplicationFleet -> Rep AssociateApplicationFleet x
Prelude.Generic)
newAssociateApplicationFleet ::
Prelude.Text ->
Prelude.Text ->
AssociateApplicationFleet
newAssociateApplicationFleet :: Text -> Text -> AssociateApplicationFleet
newAssociateApplicationFleet
Text
pFleetName_
Text
pApplicationArn_ =
AssociateApplicationFleet'
{ $sel:fleetName:AssociateApplicationFleet' :: Text
fleetName = Text
pFleetName_,
$sel:applicationArn:AssociateApplicationFleet' :: Text
applicationArn = Text
pApplicationArn_
}
associateApplicationFleet_fleetName :: Lens.Lens' AssociateApplicationFleet Prelude.Text
associateApplicationFleet_fleetName :: Lens' AssociateApplicationFleet Text
associateApplicationFleet_fleetName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssociateApplicationFleet' {Text
fleetName :: Text
$sel:fleetName:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
fleetName} -> Text
fleetName) (\s :: AssociateApplicationFleet
s@AssociateApplicationFleet' {} Text
a -> AssociateApplicationFleet
s {$sel:fleetName:AssociateApplicationFleet' :: Text
fleetName = Text
a} :: AssociateApplicationFleet)
associateApplicationFleet_applicationArn :: Lens.Lens' AssociateApplicationFleet Prelude.Text
associateApplicationFleet_applicationArn :: Lens' AssociateApplicationFleet Text
associateApplicationFleet_applicationArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssociateApplicationFleet' {Text
applicationArn :: Text
$sel:applicationArn:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
applicationArn} -> Text
applicationArn) (\s :: AssociateApplicationFleet
s@AssociateApplicationFleet' {} Text
a -> AssociateApplicationFleet
s {$sel:applicationArn:AssociateApplicationFleet' :: Text
applicationArn = Text
a} :: AssociateApplicationFleet)
instance Core.AWSRequest AssociateApplicationFleet where
type
AWSResponse AssociateApplicationFleet =
AssociateApplicationFleetResponse
request :: (Service -> Service)
-> AssociateApplicationFleet -> Request AssociateApplicationFleet
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 AssociateApplicationFleet
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse AssociateApplicationFleet)))
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 ApplicationFleetAssociation
-> Int -> AssociateApplicationFleetResponse
AssociateApplicationFleetResponse'
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
"ApplicationFleetAssociation")
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 AssociateApplicationFleet where
hashWithSalt :: Int -> AssociateApplicationFleet -> Int
hashWithSalt Int
_salt AssociateApplicationFleet' {Text
applicationArn :: Text
fleetName :: Text
$sel:applicationArn:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
$sel:fleetName:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
fleetName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
applicationArn
instance Prelude.NFData AssociateApplicationFleet where
rnf :: AssociateApplicationFleet -> ()
rnf AssociateApplicationFleet' {Text
applicationArn :: Text
fleetName :: Text
$sel:applicationArn:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
$sel:fleetName:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
fleetName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
applicationArn
instance Data.ToHeaders AssociateApplicationFleet where
toHeaders :: AssociateApplicationFleet -> 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
"PhotonAdminProxyService.AssociateApplicationFleet" ::
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 AssociateApplicationFleet where
toJSON :: AssociateApplicationFleet -> Value
toJSON AssociateApplicationFleet' {Text
applicationArn :: Text
fleetName :: Text
$sel:applicationArn:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
$sel:fleetName:AssociateApplicationFleet' :: AssociateApplicationFleet -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just (Key
"FleetName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
fleetName),
forall a. a -> Maybe a
Prelude.Just
(Key
"ApplicationArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
applicationArn)
]
)
instance Data.ToPath AssociateApplicationFleet where
toPath :: AssociateApplicationFleet -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery AssociateApplicationFleet where
toQuery :: AssociateApplicationFleet -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data AssociateApplicationFleetResponse = AssociateApplicationFleetResponse'
{
AssociateApplicationFleetResponse
-> Maybe ApplicationFleetAssociation
applicationFleetAssociation :: Prelude.Maybe ApplicationFleetAssociation,
AssociateApplicationFleetResponse -> Int
httpStatus :: Prelude.Int
}
deriving (AssociateApplicationFleetResponse
-> AssociateApplicationFleetResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AssociateApplicationFleetResponse
-> AssociateApplicationFleetResponse -> Bool
$c/= :: AssociateApplicationFleetResponse
-> AssociateApplicationFleetResponse -> Bool
== :: AssociateApplicationFleetResponse
-> AssociateApplicationFleetResponse -> Bool
$c== :: AssociateApplicationFleetResponse
-> AssociateApplicationFleetResponse -> Bool
Prelude.Eq, ReadPrec [AssociateApplicationFleetResponse]
ReadPrec AssociateApplicationFleetResponse
Int -> ReadS AssociateApplicationFleetResponse
ReadS [AssociateApplicationFleetResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AssociateApplicationFleetResponse]
$creadListPrec :: ReadPrec [AssociateApplicationFleetResponse]
readPrec :: ReadPrec AssociateApplicationFleetResponse
$creadPrec :: ReadPrec AssociateApplicationFleetResponse
readList :: ReadS [AssociateApplicationFleetResponse]
$creadList :: ReadS [AssociateApplicationFleetResponse]
readsPrec :: Int -> ReadS AssociateApplicationFleetResponse
$creadsPrec :: Int -> ReadS AssociateApplicationFleetResponse
Prelude.Read, Int -> AssociateApplicationFleetResponse -> ShowS
[AssociateApplicationFleetResponse] -> ShowS
AssociateApplicationFleetResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AssociateApplicationFleetResponse] -> ShowS
$cshowList :: [AssociateApplicationFleetResponse] -> ShowS
show :: AssociateApplicationFleetResponse -> String
$cshow :: AssociateApplicationFleetResponse -> String
showsPrec :: Int -> AssociateApplicationFleetResponse -> ShowS
$cshowsPrec :: Int -> AssociateApplicationFleetResponse -> ShowS
Prelude.Show, forall x.
Rep AssociateApplicationFleetResponse x
-> AssociateApplicationFleetResponse
forall x.
AssociateApplicationFleetResponse
-> Rep AssociateApplicationFleetResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep AssociateApplicationFleetResponse x
-> AssociateApplicationFleetResponse
$cfrom :: forall x.
AssociateApplicationFleetResponse
-> Rep AssociateApplicationFleetResponse x
Prelude.Generic)
newAssociateApplicationFleetResponse ::
Prelude.Int ->
AssociateApplicationFleetResponse
newAssociateApplicationFleetResponse :: Int -> AssociateApplicationFleetResponse
newAssociateApplicationFleetResponse Int
pHttpStatus_ =
AssociateApplicationFleetResponse'
{ $sel:applicationFleetAssociation:AssociateApplicationFleetResponse' :: Maybe ApplicationFleetAssociation
applicationFleetAssociation =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:AssociateApplicationFleetResponse' :: Int
httpStatus = Int
pHttpStatus_
}
associateApplicationFleetResponse_applicationFleetAssociation :: Lens.Lens' AssociateApplicationFleetResponse (Prelude.Maybe ApplicationFleetAssociation)
associateApplicationFleetResponse_applicationFleetAssociation :: Lens'
AssociateApplicationFleetResponse
(Maybe ApplicationFleetAssociation)
associateApplicationFleetResponse_applicationFleetAssociation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssociateApplicationFleetResponse' {Maybe ApplicationFleetAssociation
applicationFleetAssociation :: Maybe ApplicationFleetAssociation
$sel:applicationFleetAssociation:AssociateApplicationFleetResponse' :: AssociateApplicationFleetResponse
-> Maybe ApplicationFleetAssociation
applicationFleetAssociation} -> Maybe ApplicationFleetAssociation
applicationFleetAssociation) (\s :: AssociateApplicationFleetResponse
s@AssociateApplicationFleetResponse' {} Maybe ApplicationFleetAssociation
a -> AssociateApplicationFleetResponse
s {$sel:applicationFleetAssociation:AssociateApplicationFleetResponse' :: Maybe ApplicationFleetAssociation
applicationFleetAssociation = Maybe ApplicationFleetAssociation
a} :: AssociateApplicationFleetResponse)
associateApplicationFleetResponse_httpStatus :: Lens.Lens' AssociateApplicationFleetResponse Prelude.Int
associateApplicationFleetResponse_httpStatus :: Lens' AssociateApplicationFleetResponse Int
associateApplicationFleetResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AssociateApplicationFleetResponse' {Int
httpStatus :: Int
$sel:httpStatus:AssociateApplicationFleetResponse' :: AssociateApplicationFleetResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: AssociateApplicationFleetResponse
s@AssociateApplicationFleetResponse' {} Int
a -> AssociateApplicationFleetResponse
s {$sel:httpStatus:AssociateApplicationFleetResponse' :: Int
httpStatus = Int
a} :: AssociateApplicationFleetResponse)
instance
Prelude.NFData
AssociateApplicationFleetResponse
where
rnf :: AssociateApplicationFleetResponse -> ()
rnf AssociateApplicationFleetResponse' {Int
Maybe ApplicationFleetAssociation
httpStatus :: Int
applicationFleetAssociation :: Maybe ApplicationFleetAssociation
$sel:httpStatus:AssociateApplicationFleetResponse' :: AssociateApplicationFleetResponse -> Int
$sel:applicationFleetAssociation:AssociateApplicationFleetResponse' :: AssociateApplicationFleetResponse
-> Maybe ApplicationFleetAssociation
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ApplicationFleetAssociation
applicationFleetAssociation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus