module Network.AWS.SDB.DomainMetadata
(
DomainMetadata
, domainMetadata
, dmDomainName
, DomainMetadataResponse
, domainMetadataResponse
, dmrAttributeNameCount
, dmrAttributeNamesSizeBytes
, dmrAttributeValueCount
, dmrAttributeValuesSizeBytes
, dmrItemCount
, dmrItemNamesSizeBytes
, dmrTimestamp
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.SDB.Types
import qualified GHC.Exts
newtype DomainMetadata = DomainMetadata
{ _dmDomainName :: Text
} deriving (Eq, Ord, Show, Monoid, IsString)
domainMetadata :: Text
-> DomainMetadata
domainMetadata p1 = DomainMetadata
{ _dmDomainName = p1
}
dmDomainName :: Lens' DomainMetadata Text
dmDomainName = lens _dmDomainName (\s a -> s { _dmDomainName = a })
data DomainMetadataResponse = DomainMetadataResponse
{ _dmrAttributeNameCount :: Maybe Int
, _dmrAttributeNamesSizeBytes :: Maybe Integer
, _dmrAttributeValueCount :: Maybe Int
, _dmrAttributeValuesSizeBytes :: Maybe Integer
, _dmrItemCount :: Maybe Int
, _dmrItemNamesSizeBytes :: Maybe Integer
, _dmrTimestamp :: Maybe Int
} deriving (Eq, Ord, Show)
domainMetadataResponse :: DomainMetadataResponse
domainMetadataResponse = DomainMetadataResponse
{ _dmrItemCount = Nothing
, _dmrItemNamesSizeBytes = Nothing
, _dmrAttributeNameCount = Nothing
, _dmrAttributeNamesSizeBytes = Nothing
, _dmrAttributeValueCount = Nothing
, _dmrAttributeValuesSizeBytes = Nothing
, _dmrTimestamp = Nothing
}
dmrAttributeNameCount :: Lens' DomainMetadataResponse (Maybe Int)
dmrAttributeNameCount =
lens _dmrAttributeNameCount (\s a -> s { _dmrAttributeNameCount = a })
dmrAttributeNamesSizeBytes :: Lens' DomainMetadataResponse (Maybe Integer)
dmrAttributeNamesSizeBytes =
lens _dmrAttributeNamesSizeBytes
(\s a -> s { _dmrAttributeNamesSizeBytes = a })
dmrAttributeValueCount :: Lens' DomainMetadataResponse (Maybe Int)
dmrAttributeValueCount =
lens _dmrAttributeValueCount (\s a -> s { _dmrAttributeValueCount = a })
dmrAttributeValuesSizeBytes :: Lens' DomainMetadataResponse (Maybe Integer)
dmrAttributeValuesSizeBytes =
lens _dmrAttributeValuesSizeBytes
(\s a -> s { _dmrAttributeValuesSizeBytes = a })
dmrItemCount :: Lens' DomainMetadataResponse (Maybe Int)
dmrItemCount = lens _dmrItemCount (\s a -> s { _dmrItemCount = a })
dmrItemNamesSizeBytes :: Lens' DomainMetadataResponse (Maybe Integer)
dmrItemNamesSizeBytes =
lens _dmrItemNamesSizeBytes (\s a -> s { _dmrItemNamesSizeBytes = a })
dmrTimestamp :: Lens' DomainMetadataResponse (Maybe Int)
dmrTimestamp = lens _dmrTimestamp (\s a -> s { _dmrTimestamp = a })
instance ToPath DomainMetadata where
toPath = const "/"
instance ToQuery DomainMetadata where
toQuery DomainMetadata{..} = mconcat
[ "DomainName" =? _dmDomainName
]
instance ToHeaders DomainMetadata
instance AWSRequest DomainMetadata where
type Sv DomainMetadata = SDB
type Rs DomainMetadata = DomainMetadataResponse
request = post "DomainMetadata"
response = xmlResponse
instance FromXML DomainMetadataResponse where
parseXML = withElement "DomainMetadataResult" $ \x -> DomainMetadataResponse
<$> x .@? "AttributeNameCount"
<*> x .@? "AttributeNamesSizeBytes"
<*> x .@? "AttributeValueCount"
<*> x .@? "AttributeValuesSizeBytes"
<*> x .@? "ItemCount"
<*> x .@? "ItemNamesSizeBytes"
<*> x .@? "Timestamp"