{-# 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.DisassociateApplicationFromEntitlement
(
DisassociateApplicationFromEntitlement (..),
newDisassociateApplicationFromEntitlement,
disassociateApplicationFromEntitlement_stackName,
disassociateApplicationFromEntitlement_entitlementName,
disassociateApplicationFromEntitlement_applicationIdentifier,
DisassociateApplicationFromEntitlementResponse (..),
newDisassociateApplicationFromEntitlementResponse,
disassociateApplicationFromEntitlementResponse_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 DisassociateApplicationFromEntitlement = DisassociateApplicationFromEntitlement'
{
DisassociateApplicationFromEntitlement -> Text
stackName :: Prelude.Text,
DisassociateApplicationFromEntitlement -> Text
entitlementName :: Prelude.Text,
DisassociateApplicationFromEntitlement -> Text
applicationIdentifier :: Prelude.Text
}
deriving (DisassociateApplicationFromEntitlement
-> DisassociateApplicationFromEntitlement -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DisassociateApplicationFromEntitlement
-> DisassociateApplicationFromEntitlement -> Bool
$c/= :: DisassociateApplicationFromEntitlement
-> DisassociateApplicationFromEntitlement -> Bool
== :: DisassociateApplicationFromEntitlement
-> DisassociateApplicationFromEntitlement -> Bool
$c== :: DisassociateApplicationFromEntitlement
-> DisassociateApplicationFromEntitlement -> Bool
Prelude.Eq, ReadPrec [DisassociateApplicationFromEntitlement]
ReadPrec DisassociateApplicationFromEntitlement
Int -> ReadS DisassociateApplicationFromEntitlement
ReadS [DisassociateApplicationFromEntitlement]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DisassociateApplicationFromEntitlement]
$creadListPrec :: ReadPrec [DisassociateApplicationFromEntitlement]
readPrec :: ReadPrec DisassociateApplicationFromEntitlement
$creadPrec :: ReadPrec DisassociateApplicationFromEntitlement
readList :: ReadS [DisassociateApplicationFromEntitlement]
$creadList :: ReadS [DisassociateApplicationFromEntitlement]
readsPrec :: Int -> ReadS DisassociateApplicationFromEntitlement
$creadsPrec :: Int -> ReadS DisassociateApplicationFromEntitlement
Prelude.Read, Int -> DisassociateApplicationFromEntitlement -> ShowS
[DisassociateApplicationFromEntitlement] -> ShowS
DisassociateApplicationFromEntitlement -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DisassociateApplicationFromEntitlement] -> ShowS
$cshowList :: [DisassociateApplicationFromEntitlement] -> ShowS
show :: DisassociateApplicationFromEntitlement -> String
$cshow :: DisassociateApplicationFromEntitlement -> String
showsPrec :: Int -> DisassociateApplicationFromEntitlement -> ShowS
$cshowsPrec :: Int -> DisassociateApplicationFromEntitlement -> ShowS
Prelude.Show, forall x.
Rep DisassociateApplicationFromEntitlement x
-> DisassociateApplicationFromEntitlement
forall x.
DisassociateApplicationFromEntitlement
-> Rep DisassociateApplicationFromEntitlement x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DisassociateApplicationFromEntitlement x
-> DisassociateApplicationFromEntitlement
$cfrom :: forall x.
DisassociateApplicationFromEntitlement
-> Rep DisassociateApplicationFromEntitlement x
Prelude.Generic)
newDisassociateApplicationFromEntitlement ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
DisassociateApplicationFromEntitlement
newDisassociateApplicationFromEntitlement :: Text -> Text -> Text -> DisassociateApplicationFromEntitlement
newDisassociateApplicationFromEntitlement
Text
pStackName_
Text
pEntitlementName_
Text
pApplicationIdentifier_ =
DisassociateApplicationFromEntitlement'
{ $sel:stackName:DisassociateApplicationFromEntitlement' :: Text
stackName =
Text
pStackName_,
$sel:entitlementName:DisassociateApplicationFromEntitlement' :: Text
entitlementName = Text
pEntitlementName_,
$sel:applicationIdentifier:DisassociateApplicationFromEntitlement' :: Text
applicationIdentifier =
Text
pApplicationIdentifier_
}
disassociateApplicationFromEntitlement_stackName :: Lens.Lens' DisassociateApplicationFromEntitlement Prelude.Text
disassociateApplicationFromEntitlement_stackName :: Lens' DisassociateApplicationFromEntitlement Text
disassociateApplicationFromEntitlement_stackName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateApplicationFromEntitlement' {Text
stackName :: Text
$sel:stackName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
stackName} -> Text
stackName) (\s :: DisassociateApplicationFromEntitlement
s@DisassociateApplicationFromEntitlement' {} Text
a -> DisassociateApplicationFromEntitlement
s {$sel:stackName:DisassociateApplicationFromEntitlement' :: Text
stackName = Text
a} :: DisassociateApplicationFromEntitlement)
disassociateApplicationFromEntitlement_entitlementName :: Lens.Lens' DisassociateApplicationFromEntitlement Prelude.Text
disassociateApplicationFromEntitlement_entitlementName :: Lens' DisassociateApplicationFromEntitlement Text
disassociateApplicationFromEntitlement_entitlementName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateApplicationFromEntitlement' {Text
entitlementName :: Text
$sel:entitlementName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
entitlementName} -> Text
entitlementName) (\s :: DisassociateApplicationFromEntitlement
s@DisassociateApplicationFromEntitlement' {} Text
a -> DisassociateApplicationFromEntitlement
s {$sel:entitlementName:DisassociateApplicationFromEntitlement' :: Text
entitlementName = Text
a} :: DisassociateApplicationFromEntitlement)
disassociateApplicationFromEntitlement_applicationIdentifier :: Lens.Lens' DisassociateApplicationFromEntitlement Prelude.Text
disassociateApplicationFromEntitlement_applicationIdentifier :: Lens' DisassociateApplicationFromEntitlement Text
disassociateApplicationFromEntitlement_applicationIdentifier = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateApplicationFromEntitlement' {Text
applicationIdentifier :: Text
$sel:applicationIdentifier:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
applicationIdentifier} -> Text
applicationIdentifier) (\s :: DisassociateApplicationFromEntitlement
s@DisassociateApplicationFromEntitlement' {} Text
a -> DisassociateApplicationFromEntitlement
s {$sel:applicationIdentifier:DisassociateApplicationFromEntitlement' :: Text
applicationIdentifier = Text
a} :: DisassociateApplicationFromEntitlement)
instance
Core.AWSRequest
DisassociateApplicationFromEntitlement
where
type
AWSResponse
DisassociateApplicationFromEntitlement =
DisassociateApplicationFromEntitlementResponse
request :: (Service -> Service)
-> DisassociateApplicationFromEntitlement
-> Request DisassociateApplicationFromEntitlement
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 DisassociateApplicationFromEntitlement
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse
(AWSResponse DisassociateApplicationFromEntitlement)))
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 -> DisassociateApplicationFromEntitlementResponse
DisassociateApplicationFromEntitlementResponse'
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
DisassociateApplicationFromEntitlement
where
hashWithSalt :: Int -> DisassociateApplicationFromEntitlement -> Int
hashWithSalt
Int
_salt
DisassociateApplicationFromEntitlement' {Text
applicationIdentifier :: Text
entitlementName :: Text
stackName :: Text
$sel:applicationIdentifier:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
$sel:entitlementName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
$sel:stackName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
stackName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
entitlementName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
applicationIdentifier
instance
Prelude.NFData
DisassociateApplicationFromEntitlement
where
rnf :: DisassociateApplicationFromEntitlement -> ()
rnf DisassociateApplicationFromEntitlement' {Text
applicationIdentifier :: Text
entitlementName :: Text
stackName :: Text
$sel:applicationIdentifier:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
$sel:entitlementName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
$sel:stackName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
stackName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
entitlementName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
applicationIdentifier
instance
Data.ToHeaders
DisassociateApplicationFromEntitlement
where
toHeaders :: DisassociateApplicationFromEntitlement -> 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.DisassociateApplicationFromEntitlement" ::
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
DisassociateApplicationFromEntitlement
where
toJSON :: DisassociateApplicationFromEntitlement -> Value
toJSON DisassociateApplicationFromEntitlement' {Text
applicationIdentifier :: Text
entitlementName :: Text
stackName :: Text
$sel:applicationIdentifier:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
$sel:entitlementName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
$sel:stackName:DisassociateApplicationFromEntitlement' :: DisassociateApplicationFromEntitlement -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just (Key
"StackName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
stackName),
forall a. a -> Maybe a
Prelude.Just
(Key
"EntitlementName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
entitlementName),
forall a. a -> Maybe a
Prelude.Just
( Key
"ApplicationIdentifier"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
applicationIdentifier
)
]
)
instance
Data.ToPath
DisassociateApplicationFromEntitlement
where
toPath :: DisassociateApplicationFromEntitlement -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
DisassociateApplicationFromEntitlement
where
toQuery :: DisassociateApplicationFromEntitlement -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DisassociateApplicationFromEntitlementResponse = DisassociateApplicationFromEntitlementResponse'
{
DisassociateApplicationFromEntitlementResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DisassociateApplicationFromEntitlementResponse
-> DisassociateApplicationFromEntitlementResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DisassociateApplicationFromEntitlementResponse
-> DisassociateApplicationFromEntitlementResponse -> Bool
$c/= :: DisassociateApplicationFromEntitlementResponse
-> DisassociateApplicationFromEntitlementResponse -> Bool
== :: DisassociateApplicationFromEntitlementResponse
-> DisassociateApplicationFromEntitlementResponse -> Bool
$c== :: DisassociateApplicationFromEntitlementResponse
-> DisassociateApplicationFromEntitlementResponse -> Bool
Prelude.Eq, ReadPrec [DisassociateApplicationFromEntitlementResponse]
ReadPrec DisassociateApplicationFromEntitlementResponse
Int -> ReadS DisassociateApplicationFromEntitlementResponse
ReadS [DisassociateApplicationFromEntitlementResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DisassociateApplicationFromEntitlementResponse]
$creadListPrec :: ReadPrec [DisassociateApplicationFromEntitlementResponse]
readPrec :: ReadPrec DisassociateApplicationFromEntitlementResponse
$creadPrec :: ReadPrec DisassociateApplicationFromEntitlementResponse
readList :: ReadS [DisassociateApplicationFromEntitlementResponse]
$creadList :: ReadS [DisassociateApplicationFromEntitlementResponse]
readsPrec :: Int -> ReadS DisassociateApplicationFromEntitlementResponse
$creadsPrec :: Int -> ReadS DisassociateApplicationFromEntitlementResponse
Prelude.Read, Int -> DisassociateApplicationFromEntitlementResponse -> ShowS
[DisassociateApplicationFromEntitlementResponse] -> ShowS
DisassociateApplicationFromEntitlementResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DisassociateApplicationFromEntitlementResponse] -> ShowS
$cshowList :: [DisassociateApplicationFromEntitlementResponse] -> ShowS
show :: DisassociateApplicationFromEntitlementResponse -> String
$cshow :: DisassociateApplicationFromEntitlementResponse -> String
showsPrec :: Int -> DisassociateApplicationFromEntitlementResponse -> ShowS
$cshowsPrec :: Int -> DisassociateApplicationFromEntitlementResponse -> ShowS
Prelude.Show, forall x.
Rep DisassociateApplicationFromEntitlementResponse x
-> DisassociateApplicationFromEntitlementResponse
forall x.
DisassociateApplicationFromEntitlementResponse
-> Rep DisassociateApplicationFromEntitlementResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DisassociateApplicationFromEntitlementResponse x
-> DisassociateApplicationFromEntitlementResponse
$cfrom :: forall x.
DisassociateApplicationFromEntitlementResponse
-> Rep DisassociateApplicationFromEntitlementResponse x
Prelude.Generic)
newDisassociateApplicationFromEntitlementResponse ::
Prelude.Int ->
DisassociateApplicationFromEntitlementResponse
newDisassociateApplicationFromEntitlementResponse :: Int -> DisassociateApplicationFromEntitlementResponse
newDisassociateApplicationFromEntitlementResponse
Int
pHttpStatus_ =
DisassociateApplicationFromEntitlementResponse'
{ $sel:httpStatus:DisassociateApplicationFromEntitlementResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
disassociateApplicationFromEntitlementResponse_httpStatus :: Lens.Lens' DisassociateApplicationFromEntitlementResponse Prelude.Int
disassociateApplicationFromEntitlementResponse_httpStatus :: Lens' DisassociateApplicationFromEntitlementResponse Int
disassociateApplicationFromEntitlementResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateApplicationFromEntitlementResponse' {Int
httpStatus :: Int
$sel:httpStatus:DisassociateApplicationFromEntitlementResponse' :: DisassociateApplicationFromEntitlementResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DisassociateApplicationFromEntitlementResponse
s@DisassociateApplicationFromEntitlementResponse' {} Int
a -> DisassociateApplicationFromEntitlementResponse
s {$sel:httpStatus:DisassociateApplicationFromEntitlementResponse' :: Int
httpStatus = Int
a} :: DisassociateApplicationFromEntitlementResponse)
instance
Prelude.NFData
DisassociateApplicationFromEntitlementResponse
where
rnf :: DisassociateApplicationFromEntitlementResponse -> ()
rnf
DisassociateApplicationFromEntitlementResponse' {Int
httpStatus :: Int
$sel:httpStatus:DisassociateApplicationFromEntitlementResponse' :: DisassociateApplicationFromEntitlementResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus