module Network.AWS.StorageGateway.DeleteTapeArchive
(
DeleteTapeArchive
, deleteTapeArchive
, dtaTapeARN
, DeleteTapeArchiveResponse
, deleteTapeArchiveResponse
, dtarTapeARN
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.StorageGateway.Types
import qualified GHC.Exts
newtype DeleteTapeArchive = DeleteTapeArchive
{ _dtaTapeARN :: Text
} deriving (Eq, Ord, Show, Monoid, IsString)
deleteTapeArchive :: Text
-> DeleteTapeArchive
deleteTapeArchive p1 = DeleteTapeArchive
{ _dtaTapeARN = p1
}
dtaTapeARN :: Lens' DeleteTapeArchive Text
dtaTapeARN = lens _dtaTapeARN (\s a -> s { _dtaTapeARN = a })
newtype DeleteTapeArchiveResponse = DeleteTapeArchiveResponse
{ _dtarTapeARN :: Maybe Text
} deriving (Eq, Ord, Show, Monoid)
deleteTapeArchiveResponse :: DeleteTapeArchiveResponse
deleteTapeArchiveResponse = DeleteTapeArchiveResponse
{ _dtarTapeARN = Nothing
}
dtarTapeARN :: Lens' DeleteTapeArchiveResponse (Maybe Text)
dtarTapeARN = lens _dtarTapeARN (\s a -> s { _dtarTapeARN = a })
instance ToPath DeleteTapeArchive where
toPath = const "/"
instance ToQuery DeleteTapeArchive where
toQuery = const mempty
instance ToHeaders DeleteTapeArchive
instance ToJSON DeleteTapeArchive where
toJSON DeleteTapeArchive{..} = object
[ "TapeARN" .= _dtaTapeARN
]
instance AWSRequest DeleteTapeArchive where
type Sv DeleteTapeArchive = StorageGateway
type Rs DeleteTapeArchive = DeleteTapeArchiveResponse
request = post "DeleteTapeArchive"
response = jsonResponse
instance FromJSON DeleteTapeArchiveResponse where
parseJSON = withObject "DeleteTapeArchiveResponse" $ \o -> DeleteTapeArchiveResponse
<$> o .:? "TapeARN"