module Network.AWS.CognitoSync.DescribeIdentityUsage
(
DescribeIdentityUsage
, describeIdentityUsage
, diuIdentityId
, diuIdentityPoolId
, DescribeIdentityUsageResponse
, describeIdentityUsageResponse
, diurIdentityUsage
) where
import Network.AWS.Prelude
import Network.AWS.Request.RestJSON
import Network.AWS.CognitoSync.Types
import qualified GHC.Exts
data DescribeIdentityUsage = DescribeIdentityUsage
{ _diuIdentityId :: Text
, _diuIdentityPoolId :: Text
} deriving (Eq, Ord, Show)
describeIdentityUsage :: Text
-> Text
-> DescribeIdentityUsage
describeIdentityUsage p1 p2 = DescribeIdentityUsage
{ _diuIdentityPoolId = p1
, _diuIdentityId = p2
}
diuIdentityId :: Lens' DescribeIdentityUsage Text
diuIdentityId = lens _diuIdentityId (\s a -> s { _diuIdentityId = a })
diuIdentityPoolId :: Lens' DescribeIdentityUsage Text
diuIdentityPoolId =
lens _diuIdentityPoolId (\s a -> s { _diuIdentityPoolId = a })
newtype DescribeIdentityUsageResponse = DescribeIdentityUsageResponse
{ _diurIdentityUsage :: Maybe IdentityUsage
} deriving (Eq, Show)
describeIdentityUsageResponse :: DescribeIdentityUsageResponse
describeIdentityUsageResponse = DescribeIdentityUsageResponse
{ _diurIdentityUsage = Nothing
}
diurIdentityUsage :: Lens' DescribeIdentityUsageResponse (Maybe IdentityUsage)
diurIdentityUsage =
lens _diurIdentityUsage (\s a -> s { _diurIdentityUsage = a })
instance ToPath DescribeIdentityUsage where
toPath DescribeIdentityUsage{..} = mconcat
[ "/identitypools/"
, toText _diuIdentityPoolId
, "/identities/"
, toText _diuIdentityId
]
instance ToQuery DescribeIdentityUsage where
toQuery = const mempty
instance ToHeaders DescribeIdentityUsage
instance ToJSON DescribeIdentityUsage where
toJSON = const (toJSON Empty)
instance AWSRequest DescribeIdentityUsage where
type Sv DescribeIdentityUsage = CognitoSync
type Rs DescribeIdentityUsage = DescribeIdentityUsageResponse
request = get
response = jsonResponse
instance FromJSON DescribeIdentityUsageResponse where
parseJSON = withObject "DescribeIdentityUsageResponse" $ \o -> DescribeIdentityUsageResponse
<$> o .:? "IdentityUsage"