{-# LANGUAGE FlexibleContexts #-} module AWS.EC2.Tag ( describeTags ) where import Data.Conduit import Control.Monad.Trans.Control (MonadBaseControl) import Control.Applicative import AWS.EC2.Types import AWS.EC2.Class import AWS.EC2.Query import AWS.EC2.Parser describeTags :: (MonadResource m, MonadBaseControl IO m) => [Filter] -- ^ Filters -> EC2 m (Source m Tag) describeTags filters = ec2QuerySource "DescribeTags" params $ itemConduit "tagSet" $ tag <$> getT "resourceId" <*> getT "resourceType" <*> getT "key" <*> getMT "value" where params = [FilterParams filters]