module Network.AWS.StorageGateway.DeleteSnapshotSchedule
(
DeleteSnapshotSchedule
, deleteSnapshotSchedule
, dss1VolumeARN
, DeleteSnapshotScheduleResponse
, deleteSnapshotScheduleResponse
, dssr1VolumeARN
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.StorageGateway.Types
import qualified GHC.Exts
newtype DeleteSnapshotSchedule = DeleteSnapshotSchedule
{ _dss1VolumeARN :: Text
} deriving (Eq, Ord, Show, Monoid, IsString)
deleteSnapshotSchedule :: Text
-> DeleteSnapshotSchedule
deleteSnapshotSchedule p1 = DeleteSnapshotSchedule
{ _dss1VolumeARN = p1
}
dss1VolumeARN :: Lens' DeleteSnapshotSchedule Text
dss1VolumeARN = lens _dss1VolumeARN (\s a -> s { _dss1VolumeARN = a })
newtype DeleteSnapshotScheduleResponse = DeleteSnapshotScheduleResponse
{ _dssr1VolumeARN :: Maybe Text
} deriving (Eq, Ord, Show, Monoid)
deleteSnapshotScheduleResponse :: DeleteSnapshotScheduleResponse
deleteSnapshotScheduleResponse = DeleteSnapshotScheduleResponse
{ _dssr1VolumeARN = Nothing
}
dssr1VolumeARN :: Lens' DeleteSnapshotScheduleResponse (Maybe Text)
dssr1VolumeARN = lens _dssr1VolumeARN (\s a -> s { _dssr1VolumeARN = a })
instance ToPath DeleteSnapshotSchedule where
toPath = const "/"
instance ToQuery DeleteSnapshotSchedule where
toQuery = const mempty
instance ToHeaders DeleteSnapshotSchedule
instance ToJSON DeleteSnapshotSchedule where
toJSON DeleteSnapshotSchedule{..} = object
[ "VolumeARN" .= _dss1VolumeARN
]
instance AWSRequest DeleteSnapshotSchedule where
type Sv DeleteSnapshotSchedule = StorageGateway
type Rs DeleteSnapshotSchedule = DeleteSnapshotScheduleResponse
request = post "DeleteSnapshotSchedule"
response = jsonResponse
instance FromJSON DeleteSnapshotScheduleResponse where
parseJSON = withObject "DeleteSnapshotScheduleResponse" $ \o -> DeleteSnapshotScheduleResponse
<$> o .:? "VolumeARN"