module Aws.ElasticTranscoder.Commands.DeletePipeline
( DeletePipeline(..)
, DeletePipelineResponse(..)
) where
import Aws.Core
import Aws.ElasticTranscoder.Core
import Control.Applicative
import Data.Aeson
import Data.Text as T
data DeletePipeline
= DeletePipeline
{ dpId :: PipelineId
}
deriving (Show,Eq)
data DeletePipelineResponse
= DeletePipelineResponse
deriving (Show,Eq)
instance SignQuery DeletePipeline where
type ServiceConfiguration DeletePipeline = EtsConfiguration
signQuery DeletePipeline{..} = etsSignQuery
EtsQuery
{ etsqMethod = Delete
, etsqRequest = "pipelines/" `T.append` _PipelineId dpId
, etsqQuery = []
, etsqBody = Nothing
}
instance ResponseConsumer DeletePipeline DeletePipelineResponse where
type ResponseMetadata DeletePipelineResponse = EtsMetadata
responseConsumer _ mref = etsResponseConsumer mref $ \rsp ->
cnv <$> jsonConsumer rsp
where
cnv :: Value -> DeletePipelineResponse
cnv _ = DeletePipelineResponse
instance Transaction DeletePipeline DeletePipelineResponse
instance AsMemoryResponse DeletePipelineResponse where
type MemoryResponse DeletePipelineResponse = DeletePipelineResponse
loadToMemory = return