module Network.AWS.DirectConnect.DeleteInterconnect
(
DeleteInterconnect
, deleteInterconnect
, di1InterconnectId
, DeleteInterconnectResponse
, deleteInterconnectResponse
, dirInterconnectState
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.DirectConnect.Types
import qualified GHC.Exts
newtype DeleteInterconnect = DeleteInterconnect
{ _di1InterconnectId :: Text
} deriving (Eq, Ord, Read, Show, Monoid, IsString)
deleteInterconnect :: Text
-> DeleteInterconnect
deleteInterconnect p1 = DeleteInterconnect
{ _di1InterconnectId = p1
}
di1InterconnectId :: Lens' DeleteInterconnect Text
di1InterconnectId =
lens _di1InterconnectId (\s a -> s { _di1InterconnectId = a })
newtype DeleteInterconnectResponse = DeleteInterconnectResponse
{ _dirInterconnectState :: Maybe InterconnectState
} deriving (Eq, Read, Show)
deleteInterconnectResponse :: DeleteInterconnectResponse
deleteInterconnectResponse = DeleteInterconnectResponse
{ _dirInterconnectState = Nothing
}
dirInterconnectState :: Lens' DeleteInterconnectResponse (Maybe InterconnectState)
dirInterconnectState =
lens _dirInterconnectState (\s a -> s { _dirInterconnectState = a })
instance ToPath DeleteInterconnect where
toPath = const "/"
instance ToQuery DeleteInterconnect where
toQuery = const mempty
instance ToHeaders DeleteInterconnect
instance ToJSON DeleteInterconnect where
toJSON DeleteInterconnect{..} = object
[ "interconnectId" .= _di1InterconnectId
]
instance AWSRequest DeleteInterconnect where
type Sv DeleteInterconnect = DirectConnect
type Rs DeleteInterconnect = DeleteInterconnectResponse
request = post "DeleteInterconnect"
response = jsonResponse
instance FromJSON DeleteInterconnectResponse where
parseJSON = withObject "DeleteInterconnectResponse" $ \o -> DeleteInterconnectResponse
<$> o .:? "interconnectState"