-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Amazon Web Services (AWS) for Haskell -- -- Bindings for Amazon Web Services (AWS), with the aim of supporting all -- AWS services. To see a high level overview of the library, see the -- README at -- https://github.com/aristidb/aws/blob/master/README.org. @package aws @version 0.9 module Aws.Ec2.InstanceMetadata data InstanceMetadataException MetadataNotFound :: String -> InstanceMetadataException getInstanceMetadata :: Manager -> String -> String -> IO ByteString getInstanceMetadataListing :: Manager -> String -> IO [String] getInstanceMetadataFirst :: Manager -> String -> IO ByteString getInstanceMetadataOrFirst :: Manager -> String -> Maybe String -> IO ByteString instance Typeable InstanceMetadataException instance Show InstanceMetadataException instance Exception InstanceMetadataException module Aws.Core -- | Types that can be logged (textually). class Loggable a toLogText :: Loggable a => a -> Text -- | A response with metadata. Can also contain an error response, or an -- internal error, via Attempt. -- -- Response forms a Writer-like monad. data Response m a Response :: m -> Either SomeException a -> Response m a responseMetadata :: Response m a -> m responseResult :: Response m a -> Either SomeException a -- | Read a response result (if it's a success response, fail otherwise). readResponse :: MonadThrow n => Response m a -> n a -- | Read a response result (if it's a success response, fail otherwise). -- In MonadIO. readResponseIO :: MonadIO io => Response m a -> io a -- | An empty response with some metadata. tellMetadata :: m -> Response m () -- | Add metadata to an IORef (using mappend). tellMetadataRef :: Monoid m => IORef m -> m -> IO () -- | Apply a function to the metadata. mapMetadata :: (m -> n) -> Response m a -> Response n a -- | A full HTTP response parser. Takes HTTP status, response headers, and -- response body. type HTTPResponseConsumer a = Response (ResumableSource (ResourceT IO) ByteString) -> ResourceT IO a -- | Class for types that AWS HTTP responses can be parsed into. -- -- The request is also passed for possibly required additional metadata. -- -- Note that for debugging, there is an instance for ByteString. class Monoid (ResponseMetadata resp) => ResponseConsumer req resp where type family ResponseMetadata resp responseConsumer :: ResponseConsumer req resp => req -> IORef (ResponseMetadata resp) -> HTTPResponseConsumer resp -- | Class for responses that are fully loaded into memory class AsMemoryResponse resp where type family MemoryResponse resp :: * loadToMemory :: AsMemoryResponse resp => resp -> ResourceT IO (MemoryResponse resp) -- | Responses that have one main list in them, and perhaps some -- decoration. class ListResponse resp item | resp -> item listResponse :: ListResponse resp item => resp -> [item] -- | An error that occurred during XML parsing / validation. newtype XmlException XmlException :: String -> XmlException xmlErrorMessage :: XmlException -> String -- | An error that occurred during header parsing / validation. newtype HeaderException HeaderException :: String -> HeaderException headerErrorMessage :: HeaderException -> String -- | An error that occurred during form parsing / validation. newtype FormException FormException :: String -> FormException formErrorMesage :: FormException -> String -- | Parse a two-digit hex number. readHex2 :: [Char] -> Maybe Word8 -- | A specific element (case-insensitive, ignoring namespace - sadly -- necessary), extracting only the textual contents. elContent :: Text -> Cursor -> [Text] -- | Like elContent, but extracts Strings instead of -- Text. elCont :: Text -> Cursor -> [String] -- | Extract the first element from a parser result list, and throw an -- XmlException if the list is empty. force :: MonadThrow m => String -> [a] -> m a -- | Extract the first element from a monadic parser result list, and throw -- an XmlException if the list is empty. forceM :: MonadThrow m => String -> [m a] -> m a -- | Read an integer from a Text, throwing an XmlException on -- failure. textReadInt :: (MonadThrow m, Num a) => Text -> m a -- | Read an integer from a String, throwing an XmlException -- on failure. readInt :: (MonadThrow m, Num a) => String -> m a -- | Create a complete HTTPResponseConsumer from a simple function -- that takes a Cursor to XML in the response body. -- -- This function is highly recommended for any services that parse -- relatively short XML responses. (If status and response headers are -- required, simply take them as function parameters, and pass them -- through to this function.) xmlCursorConsumer :: Monoid m => (Cursor -> Response m a) -> IORef m -> HTTPResponseConsumer a -- | A pre-signed medium-level request object. data SignedQuery SignedQuery :: Method -> Protocol -> ByteString -> Int -> ByteString -> Query -> Maybe UTCTime -> Maybe (IO ByteString) -> Maybe ByteString -> Maybe (Digest MD5) -> RequestHeaders -> RequestHeaders -> Maybe RequestBody -> ByteString -> SignedQuery -- | Request method. sqMethod :: SignedQuery -> Method -- | Protocol to be used. sqProtocol :: SignedQuery -> Protocol -- | HTTP host. sqHost :: SignedQuery -> ByteString -- | IP port. sqPort :: SignedQuery -> Int -- | HTTP path. sqPath :: SignedQuery -> ByteString -- | Query string list (used with Get and PostQuery). sqQuery :: SignedQuery -> Query -- | Request date/time. sqDate :: SignedQuery -> Maybe UTCTime -- | Authorization string (if applicable), for Authorization -- header. See authorizationV4 sqAuthorization :: SignedQuery -> Maybe (IO ByteString) -- | Request body content type. sqContentType :: SignedQuery -> Maybe ByteString -- | Request body content MD5. sqContentMd5 :: SignedQuery -> Maybe (Digest MD5) -- | Additional Amazon amz headers. sqAmzHeaders :: SignedQuery -> RequestHeaders -- | Additional non-amz headers. sqOtherHeaders :: SignedQuery -> RequestHeaders -- | Request body (used with Post and Put). sqBody :: SignedQuery -> Maybe RequestBody -- | String to sign. Note that the string is already signed, this is passed -- mostly for debugging purposes. sqStringToSign :: SignedQuery -> ByteString -- | Tag type for normal queries. data NormalQuery -- | Tag type for URI-only queries. data UriOnlyQuery -- | Create a HTTP request from a SignedQuery object. queryToHttpRequest :: SignedQuery -> IO Request -- | Create a URI fro a SignedQuery object. -- -- Unused / incompatible fields will be silently ignored. queryToUri :: SignedQuery -> ByteString -- | Whether to restrict the signature validity with a plain timestamp, or -- with explicit expiration (absolute or relative). data TimeInfo -- | Use a simple timestamp to let AWS check the request validity. Timestamp :: TimeInfo -- | Let requests expire at a specific fixed time. ExpiresAt :: UTCTime -> TimeInfo fromExpiresAt :: TimeInfo -> UTCTime -- | Let requests expire a specific number of seconds after they were -- generated. ExpiresIn :: NominalDiffTime -> TimeInfo fromExpiresIn :: TimeInfo -> NominalDiffTime -- | Like TimeInfo, but with all relative times replaced by absolute -- UTC. data AbsoluteTimeInfo AbsoluteTimestamp :: UTCTime -> AbsoluteTimeInfo fromAbsoluteTimestamp :: AbsoluteTimeInfo -> UTCTime AbsoluteExpires :: UTCTime -> AbsoluteTimeInfo fromAbsoluteExpires :: AbsoluteTimeInfo -> UTCTime -- | Just the UTC time value. fromAbsoluteTimeInfo :: AbsoluteTimeInfo -> UTCTime -- | Convert TimeInfo to AbsoluteTimeInfo given the current -- UTC time. makeAbsoluteTimeInfo :: TimeInfo -> UTCTime -> AbsoluteTimeInfo -- | Data that is always required for signing requests. data SignatureData SignatureData :: AbsoluteTimeInfo -> UTCTime -> Credentials -> SignatureData -- | Expiration or timestamp. signatureTimeInfo :: SignatureData -> AbsoluteTimeInfo -- | Current time. signatureTime :: SignatureData -> UTCTime -- | Access credentials. signatureCredentials :: SignatureData -> Credentials -- | Create signature data using the current system time. signatureData :: TimeInfo -> Credentials -> IO SignatureData -- | A signable request object. Assembles together the Query, and -- signs it in one go. class SignQuery request where type family ServiceConfiguration request :: * -> * signQuery :: SignQuery request => request -> ServiceConfiguration request queryType -> SignatureData -> SignedQuery -- | Supported crypto hashes for the signature. data AuthorizationHash HmacSHA1 :: AuthorizationHash HmacSHA256 :: AuthorizationHash -- | Authorization hash identifier as expected by Amazon. amzHash :: AuthorizationHash -> ByteString -- | Create a signature. Usually, AWS wants a specifically constructed -- string to be signed. -- -- The signature is a HMAC-based hash of the string and the secret access -- key. signature :: Credentials -> AuthorizationHash -> ByteString -> ByteString -- | Use this to create the Authorization header to set into -- sqAuthorization. See -- http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html: -- you must create the canonical request as explained by Step 1 and this -- function takes care of Steps 2 and 3. authorizationV4 :: SignatureData -> AuthorizationHash -> ByteString -> ByteString -> ByteString -> ByteString -> IO ByteString -- | queryList f prefix xs constructs a query list from a list of -- elements xs, using a common prefix prefix, and a -- transformer function f. -- -- A dot (.) is interspersed between prefix and generated key. -- -- Example: -- -- queryList swap "pfx" [("a", "b"), ("c", "d")] evaluates to -- [("pfx.b", "a"), ("pfx.d", "c")] (except with ByteString -- instead of String, of course). queryList :: (a -> [(ByteString, ByteString)]) -> ByteString -> [a] -> [(ByteString, ByteString)] -- | A "true"/"false" boolean as requested by some services. awsBool :: Bool -> ByteString -- | "true" awsTrue :: ByteString -- | "false" awsFalse :: ByteString -- | Format time according to a format string, as a ByteString. fmtTime :: String -> UTCTime -> ByteString -- | Format time in RFC 822 format. fmtRfc822Time :: UTCTime -> ByteString rfc822Time :: String -- | Format time in yyyy-mm-ddThh-mm-ss format. fmtAmzTime :: UTCTime -> ByteString -- | Format time as seconds since the Unix epoch. fmtTimeEpochSeconds :: UTCTime -> ByteString -- | Parse HTTP-date (section 3.3.1 of RFC 2616) parseHttpDate :: String -> Maybe UTCTime -- | HTTP-date (section 3.3.1 of RFC 2616, first type - RFC1123-style) httpDate1 :: String -- | Format (as Text) HTTP-date (section 3.3.1 of RFC 2616, first type - -- RFC1123-style) textHttpDate :: UTCTime -> Text iso8601UtcDate :: String -- | Associates a request type and a response type in a bi-directional way. -- -- This allows the type-checker to infer the response type when given the -- request type and vice versa. -- -- Note that the actual request generation and response parsing resides -- in SignQuery and ResponseConsumer respectively. class (SignQuery r, ResponseConsumer r a, Loggable (ResponseMetadata a)) => Transaction r a | r -> a, a -> r -- | A transaction that may need to be split over multiple requests, for -- example because of upstream response size limits. class Transaction r a => IteratedTransaction r a | r -> a, a -> r nextIteratedRequest :: IteratedTransaction r a => r -> a -> Maybe r -- | AWS access credentials. data Credentials Credentials :: ByteString -> ByteString -> IORef [V4Key] -> Credentials -- | AWS Access Key ID. accessKeyID :: Credentials -> ByteString -- | AWS Secret Access Key. secretAccessKey :: Credentials -> ByteString -- | Signing keys for signature version 4 v4SigningKeys :: Credentials -> IORef [V4Key] -- | The file where access credentials are loaded, when using -- loadCredentialsDefault. -- -- Value: <user directory>/.aws-keys credentialsDefaultFile :: MonadIO io => io FilePath -- | The key to be used in the access credential file that is loaded, when -- using loadCredentialsDefault. -- -- Value: default credentialsDefaultKey :: Text -- | Load credentials from a (text) file given a key name. -- -- The file consists of a sequence of lines, each in the following -- format: -- --
-- keyName awsKeyID awsKeySecret --loadCredentialsFromFile :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) -- | Load credentials from the environment variables -- AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET (or -- AWS_SECRET_ACCESS_KEY), if possible. loadCredentialsFromEnv :: MonadIO io => io (Maybe Credentials) -- | Load credentials from environment variables if possible, or -- alternatively from a file with a given key name. -- -- See loadCredentialsFromEnv and loadCredentialsFromFile -- for details. loadCredentialsFromEnvOrFile :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) -- | Load credentials from environment variables if possible, or -- alternative from the default file with the default key name. -- -- Default file: <user directory>/.aws-keys Default -- key name: default -- -- See loadCredentialsFromEnv and loadCredentialsFromFile -- for details. loadCredentialsDefault :: MonadIO io => io (Maybe Credentials) -- | Default configuration for a specific service. class DefaultServiceConfiguration config where debugServiceConfig = defServiceConfig defServiceConfig :: DefaultServiceConfiguration config => config debugServiceConfig :: DefaultServiceConfiguration config => config -- | Protocols supported by AWS. Currently, all AWS services use the HTTP -- or HTTPS protocols. data Protocol HTTP :: Protocol HTTPS :: Protocol -- | The default port to be used for a protocol if no specific port is -- specified. defaultPort :: Protocol -> Int -- | Request method. Not all request methods are supported by all services. data Method -- | HEAD method. Put all request parameters in a query string and HTTP -- headers. Head :: Method -- | GET method. Put all request parameters in a query string and HTTP -- headers. Get :: Method -- | POST method. Put all request parameters in a query string and HTTP -- headers, but send the query string as a POST payload PostQuery :: Method -- | POST method. Sends a service- and request-specific request body. Post :: Method -- | PUT method. Put :: Method -- | DELETE method. Delete :: Method -- | HTTP method associated with a request method. httpMethod :: Method -> Method instance Typeable XmlException instance Typeable HeaderException instance Typeable FormException instance (Show m, Show a) => Show (Response m a) instance Functor (Response m) instance Show Protocol instance Show Method instance Eq Method instance Show TimeInfo instance Show AbsoluteTimeInfo instance Show AuthorizationHash instance Show XmlException instance Show HeaderException instance Show FormException instance Exception FormException instance Exception HeaderException instance Exception XmlException instance Show Credentials instance ResponseConsumer r (Response ByteString) instance Monoid m => MonadThrow (Response m) instance Monoid m => Monad (Response m) module Aws.Iam.Core -- | Constructs a SignedQuery with the specified request parameters. iamSignQuery :: [(ByteString, ByteString)] -> IamConfiguration qt -> SignatureData -> SignedQuery -- | Reads the metadata from an IAM response and delegates parsing the rest -- of the data from the response to the given function. iamResponseConsumer :: (Cursor -> Response IamMetadata a) -> IORef IamMetadata -> HTTPResponseConsumer a data IamMetadata IamMetadata :: Maybe Text -> IamMetadata requestId :: IamMetadata -> Maybe Text data IamConfiguration qt IamConfiguration :: ByteString -> Int -> Protocol -> Method -> IamConfiguration qt iamEndpoint :: IamConfiguration qt -> ByteString iamPort :: IamConfiguration qt -> Int iamProtocol :: IamConfiguration qt -> Protocol iamHttpMethod :: IamConfiguration qt -> Method data IamError IamError :: Status -> Text -> Text -> IamError iamStatusCode :: IamError -> Status iamErrorCode :: IamError -> Text iamErrorMessage :: IamError -> Text -- | Parses IAM DateTime data type. parseDateTime :: MonadThrow m => String -> m UTCTime data AccessKeyStatus AccessKeyActive :: AccessKeyStatus AccessKeyInactive :: AccessKeyStatus -- | The IAM User data type. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_User.html data User User :: Text -> UTCTime -> Text -> Text -> Text -> User -- | ARN used to refer to this user. userArn :: User -> Text -- | Date and time at which the user was created. userCreateDate :: User -> UTCTime -- | Path under which the user was created. userPath :: User -> Text -- | Unique identifier used to refer to this user. userUserId :: User -> Text -- | Name of the user. userUserName :: User -> Text -- | Parses the IAM User data type. parseUser :: MonadThrow m => Cursor -> m User instance Typeable IamError instance Typeable IamMetadata instance Typeable User instance Typeable AccessKeyStatus instance Show IamError instance Show IamMetadata instance Show (IamConfiguration qt) instance Eq User instance Ord User instance Show User instance Eq AccessKeyStatus instance Ord AccessKeyStatus instance Show AccessKeyStatus instance DefaultServiceConfiguration (IamConfiguration UriOnlyQuery) instance DefaultServiceConfiguration (IamConfiguration NormalQuery) instance Monoid IamMetadata instance Loggable IamMetadata instance Exception IamError module Aws.Iam.Internal -- | Similar to iamSignQuery. Accepts parameters in Text -- form and UTF-8 encodes them. Accepts the Action parameter -- separately since it's always required. iamAction :: ByteString -> [(ByteString, Text)] -> IamConfiguration qt -> SignatureData -> SignedQuery -- | Similar to iamAction. Accepts parameter list with -- Maybe parameters. Ignores Nothings. iamAction' :: ByteString -> [Maybe (ByteString, Text)] -> IamConfiguration qt -> SignatureData -> SignedQuery -- | Returns the parameters Marker and MaxItems that are -- present in all IAM data pagination requests. markedIter :: Maybe Text -> Maybe Integer -> [Maybe (ByteString, Text)] -- | Reads and returns the IsTruncated and Marker -- attributes present in all IAM data pagination responses. markedIterResponse :: MonadThrow m => Cursor -> m (Bool, Maybe Text) -- | An infix synonym for mappend. (<>) :: Monoid m => m -> m -> m module Aws.Iam.Commands.CreateAccessKey -- | Creates a new AWS secret access key and corresponding AWS access key -- ID for the given user name. -- -- If a user name is not provided, IAM will determine the user name based -- on the access key signing the request. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html data CreateAccessKey CreateAccessKey :: (Maybe Text) -> CreateAccessKey data CreateAccessKeyResponse CreateAccessKeyResponse :: AccessKey -> CreateAccessKeyResponse -- | Represents the IAM AccessKey data type. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_AccessKey.html data AccessKey AccessKey :: Text -> Maybe UTCTime -> Text -> AccessKeyStatus -> Text -> AccessKey -- | The Access Key ID. akAccessKeyId :: AccessKey -> Text -- | Date and time at which the access key was created. akCreateDate :: AccessKey -> Maybe UTCTime -- | Secret key used to sign requests. The secret key is accessible only -- during key creation. akSecretAccessKey :: AccessKey -> Text -- | Whether the access key is active or not. akStatus :: AccessKey -> AccessKeyStatus -- | The user name for which this key is defined. akUserName :: AccessKey -> Text instance Typeable CreateAccessKey instance Typeable AccessKey instance Typeable CreateAccessKeyResponse instance Eq CreateAccessKey instance Ord CreateAccessKey instance Show CreateAccessKey instance Eq AccessKey instance Ord AccessKey instance Show AccessKey instance Eq CreateAccessKeyResponse instance Ord CreateAccessKeyResponse instance Show CreateAccessKeyResponse instance AsMemoryResponse CreateAccessKeyResponse instance Transaction CreateAccessKey CreateAccessKeyResponse instance ResponseConsumer CreateAccessKey CreateAccessKeyResponse instance SignQuery CreateAccessKey module Aws.Iam.Commands.CreateUser -- | Creates a new user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateUser.html data CreateUser CreateUser :: Text -> Maybe Text -> CreateUser -- | Name of the new user cuUserName :: CreateUser -> Text -- | Path under which the user will be created. Defaults to / if -- omitted. cuPath :: CreateUser -> Maybe Text data CreateUserResponse CreateUserResponse :: User -> CreateUserResponse -- | The IAM User data type. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_User.html data User User :: Text -> UTCTime -> Text -> Text -> Text -> User -- | ARN used to refer to this user. userArn :: User -> Text -- | Date and time at which the user was created. userCreateDate :: User -> UTCTime -- | Path under which the user was created. userPath :: User -> Text -- | Unique identifier used to refer to this user. userUserId :: User -> Text -- | Name of the user. userUserName :: User -> Text instance Typeable CreateUser instance Typeable CreateUserResponse instance Eq CreateUser instance Ord CreateUser instance Show CreateUser instance Eq CreateUserResponse instance Ord CreateUserResponse instance Show CreateUserResponse instance AsMemoryResponse CreateUserResponse instance Transaction CreateUser CreateUserResponse instance ResponseConsumer CreateUser CreateUserResponse instance SignQuery CreateUser module Aws.Iam.Commands.DeleteAccessKey -- | Deletes the access key associated with the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteAccessKey.html data DeleteAccessKey DeleteAccessKey :: Text -> Maybe Text -> DeleteAccessKey -- | ID of the access key to be deleted. dakAccessKeyId :: DeleteAccessKey -> Text -- | User name with which the access key is associated. dakUserName :: DeleteAccessKey -> Maybe Text data DeleteAccessKeyResponse DeleteAccessKeyResponse :: DeleteAccessKeyResponse instance Typeable DeleteAccessKey instance Typeable DeleteAccessKeyResponse instance Eq DeleteAccessKey instance Ord DeleteAccessKey instance Show DeleteAccessKey instance Eq DeleteAccessKeyResponse instance Ord DeleteAccessKeyResponse instance Show DeleteAccessKeyResponse instance AsMemoryResponse DeleteAccessKeyResponse instance Transaction DeleteAccessKey DeleteAccessKeyResponse instance ResponseConsumer DeleteAccessKey DeleteAccessKeyResponse instance SignQuery DeleteAccessKey module Aws.Iam.Commands.DeleteUser -- | Deletes the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUser.html data DeleteUser DeleteUser :: Text -> DeleteUser data DeleteUserResponse DeleteUserResponse :: DeleteUserResponse instance Typeable DeleteUser instance Typeable DeleteUserResponse instance Eq DeleteUser instance Ord DeleteUser instance Show DeleteUser instance Eq DeleteUserResponse instance Ord DeleteUserResponse instance Show DeleteUserResponse instance AsMemoryResponse DeleteUserResponse instance Transaction DeleteUser DeleteUserResponse instance ResponseConsumer DeleteUser DeleteUserResponse instance SignQuery DeleteUser module Aws.Iam.Commands.DeleteUserPolicy -- | Deletes the specified policy associated with the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUserPolicy.html data DeleteUserPolicy DeleteUserPolicy :: Text -> Text -> DeleteUserPolicy -- | Name of the policy to be deleted. dupPolicyName :: DeleteUserPolicy -> Text -- | Name of the user with whom the policy is associated. dupUserName :: DeleteUserPolicy -> Text data DeleteUserPolicyResponse DeleteUserPolicyResponse :: DeleteUserPolicyResponse instance Typeable DeleteUserPolicy instance Typeable DeleteUserPolicyResponse instance Eq DeleteUserPolicy instance Ord DeleteUserPolicy instance Show DeleteUserPolicy instance Eq DeleteUserPolicyResponse instance Ord DeleteUserPolicyResponse instance Show DeleteUserPolicyResponse instance AsMemoryResponse DeleteUserPolicyResponse instance Transaction DeleteUserPolicy DeleteUserPolicyResponse instance ResponseConsumer DeleteUserPolicy DeleteUserPolicyResponse instance SignQuery DeleteUserPolicy module Aws.Iam.Commands.GetUser -- | Retreives information about the given user. -- -- If a user name is not given, IAM determines the user name based on the -- access key signing the request. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html data GetUser GetUser :: (Maybe Text) -> GetUser data GetUserResponse GetUserResponse :: User -> GetUserResponse -- | The IAM User data type. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_User.html data User User :: Text -> UTCTime -> Text -> Text -> Text -> User -- | ARN used to refer to this user. userArn :: User -> Text -- | Date and time at which the user was created. userCreateDate :: User -> UTCTime -- | Path under which the user was created. userPath :: User -> Text -- | Unique identifier used to refer to this user. userUserId :: User -> Text -- | Name of the user. userUserName :: User -> Text instance Typeable GetUser instance Typeable GetUserResponse instance Eq GetUser instance Ord GetUser instance Show GetUser instance Eq GetUserResponse instance Ord GetUserResponse instance Show GetUserResponse instance AsMemoryResponse GetUserResponse instance Transaction GetUser GetUserResponse instance ResponseConsumer GetUser GetUserResponse instance SignQuery GetUser module Aws.Iam.Commands.GetUserPolicy -- | Retreives the specified policy document for the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUserPolicy.html data GetUserPolicy GetUserPolicy :: Text -> Text -> GetUserPolicy -- | Name of the policy. gupPolicyName :: GetUserPolicy -> Text -- | Name of the user with whom the policy is associated. gupUserName :: GetUserPolicy -> Text data GetUserPolicyResponse GetUserPolicyResponse :: Text -> Text -> Text -> GetUserPolicyResponse -- | The policy document. guprPolicyDocument :: GetUserPolicyResponse -> Text -- | Name of the policy. guprPolicyName :: GetUserPolicyResponse -> Text -- | Name of the user with whom the policy is associated. guprUserName :: GetUserPolicyResponse -> Text instance Typeable GetUserPolicy instance Typeable GetUserPolicyResponse instance Eq GetUserPolicy instance Ord GetUserPolicy instance Show GetUserPolicy instance Eq GetUserPolicyResponse instance Ord GetUserPolicyResponse instance Show GetUserPolicyResponse instance AsMemoryResponse GetUserPolicyResponse instance Transaction GetUserPolicy GetUserPolicyResponse instance ResponseConsumer GetUserPolicy GetUserPolicyResponse instance SignQuery GetUserPolicy module Aws.Iam.Commands.ListAccessKeys -- | Returns the access keys associated with the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAccessKeys.html data ListAccessKeys ListAccessKeys :: Maybe Text -> Maybe Text -> Maybe Integer -> ListAccessKeys -- | Name of the user. If the user name is not specified, IAM will -- determine the user based on the key sigining the request. lakUserName :: ListAccessKeys -> Maybe Text -- | Used for paginating requests. Marks the position of the last request. lakMarker :: ListAccessKeys -> Maybe Text -- | Used for paginating requests. Specifies the maximum number of items to -- return in the response. Defaults to 100. lakMaxItems :: ListAccessKeys -> Maybe Integer data ListAccessKeysResponse ListAccessKeysResponse :: [AccessKeyMetadata] -> Bool -> Maybe Text -> ListAccessKeysResponse -- | List of AccessKeyMetadata objects lakrAccessKeyMetadata :: ListAccessKeysResponse -> [AccessKeyMetadata] -- | True if the request was truncated because of too many items. lakrIsTruncated :: ListAccessKeysResponse -> Bool -- | Marks the position at which the request was truncated. This value must -- be passed with the next request to continue listing from the last -- position. lakrMarker :: ListAccessKeysResponse -> Maybe Text instance Typeable ListAccessKeys instance Typeable AccessKeyMetadata instance Typeable ListAccessKeysResponse instance Eq ListAccessKeys instance Ord ListAccessKeys instance Show ListAccessKeys instance Eq AccessKeyMetadata instance Ord AccessKeyMetadata instance Show AccessKeyMetadata instance Eq ListAccessKeysResponse instance Ord ListAccessKeysResponse instance Show ListAccessKeysResponse instance AsMemoryResponse ListAccessKeysResponse instance IteratedTransaction ListAccessKeys ListAccessKeysResponse instance Transaction ListAccessKeys ListAccessKeysResponse instance ResponseConsumer ListAccessKeys ListAccessKeysResponse instance SignQuery ListAccessKeys module Aws.Iam.Commands.ListUserPolicies -- | Lists the user policies associated with the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUserPolicies.html data ListUserPolicies ListUserPolicies :: Text -> Maybe Text -> Maybe Integer -> ListUserPolicies -- | Policies associated with this user will be listed. lupUserName :: ListUserPolicies -> Text -- | Used for paginating requests. Marks the position of the last request. lupMarker :: ListUserPolicies -> Maybe Text -- | Used for paginating requests. Specifies the maximum number of items to -- return in the response. Defaults to 100. lupMaxItems :: ListUserPolicies -> Maybe Integer data ListUserPoliciesResponse ListUserPoliciesResponse :: [Text] -> Bool -> Maybe Text -> ListUserPoliciesResponse -- | List of policy names. luprPolicyNames :: ListUserPoliciesResponse -> [Text] -- | True if the request was truncated because of too many items. luprIsTruncated :: ListUserPoliciesResponse -> Bool -- | Marks the position at which the request was truncated. This value must -- be passed with the next request to continue listing from the last -- position. luprMarker :: ListUserPoliciesResponse -> Maybe Text instance Typeable ListUserPolicies instance Typeable ListUserPoliciesResponse instance Eq ListUserPolicies instance Ord ListUserPolicies instance Show ListUserPolicies instance Eq ListUserPoliciesResponse instance Ord ListUserPoliciesResponse instance Show ListUserPoliciesResponse instance AsMemoryResponse ListUserPoliciesResponse instance IteratedTransaction ListUserPolicies ListUserPoliciesResponse instance Transaction ListUserPolicies ListUserPoliciesResponse instance ResponseConsumer ListUserPolicies ListUserPoliciesResponse instance SignQuery ListUserPolicies module Aws.Iam.Commands.ListUsers -- | Lists users that have the specified path prefix. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html data ListUsers ListUsers :: Maybe Text -> Maybe Text -> Maybe Integer -> ListUsers -- | Users defined under this path will be listed. If omitted, defaults to -- /, which lists all users. luPathPrefix :: ListUsers -> Maybe Text -- | Used for paginating requests. Marks the position of the last request. luMarker :: ListUsers -> Maybe Text -- | Used for paginating requests. Specifies the maximum number of items to -- return in the response. Defaults to 100. luMaxItems :: ListUsers -> Maybe Integer data ListUsersResponse ListUsersResponse :: [User] -> Bool -> Maybe Text -> ListUsersResponse -- | List of Users. lurUsers :: ListUsersResponse -> [User] -- | True if the request was truncated because of too many items. lurIsTruncated :: ListUsersResponse -> Bool -- | Marks the position at which the request was truncated. This value must -- be passed with the next request to continue listing from the last -- position. lurMarker :: ListUsersResponse -> Maybe Text -- | The IAM User data type. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_User.html data User User :: Text -> UTCTime -> Text -> Text -> Text -> User -- | ARN used to refer to this user. userArn :: User -> Text -- | Date and time at which the user was created. userCreateDate :: User -> UTCTime -- | Path under which the user was created. userPath :: User -> Text -- | Unique identifier used to refer to this user. userUserId :: User -> Text -- | Name of the user. userUserName :: User -> Text instance Typeable ListUsers instance Typeable ListUsersResponse instance Eq ListUsers instance Ord ListUsers instance Show ListUsers instance Eq ListUsersResponse instance Ord ListUsersResponse instance Show ListUsersResponse instance AsMemoryResponse ListUsersResponse instance IteratedTransaction ListUsers ListUsersResponse instance Transaction ListUsers ListUsersResponse instance ResponseConsumer ListUsers ListUsersResponse instance SignQuery ListUsers module Aws.Iam.Commands.PutUserPolicy -- | Adds a policy document with the specified name, associated with the -- specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_PutUserPolicy.html data PutUserPolicy PutUserPolicy :: Text -> Text -> Text -> PutUserPolicy -- | The policy document. pupPolicyDocument :: PutUserPolicy -> Text -- | Name of the policy. pupPolicyName :: PutUserPolicy -> Text -- | Name of the user with whom this policy is associated. pupUserName :: PutUserPolicy -> Text data PutUserPolicyResponse PutUserPolicyResponse :: PutUserPolicyResponse instance Typeable PutUserPolicy instance Typeable PutUserPolicyResponse instance Eq PutUserPolicy instance Ord PutUserPolicy instance Show PutUserPolicy instance Eq PutUserPolicyResponse instance Ord PutUserPolicyResponse instance Show PutUserPolicyResponse instance AsMemoryResponse PutUserPolicyResponse instance Transaction PutUserPolicy PutUserPolicyResponse instance ResponseConsumer PutUserPolicy PutUserPolicyResponse instance SignQuery PutUserPolicy module Aws.Iam.Commands.UpdateAccessKey -- | Changes the status of the specified access key. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html data UpdateAccessKey UpdateAccessKey :: Text -> AccessKeyStatus -> Maybe Text -> UpdateAccessKey -- | ID of the access key to update. uakAccessKeyId :: UpdateAccessKey -> Text -- | New status of the access key. uakStatus :: UpdateAccessKey -> AccessKeyStatus -- | Name of the user to whom the access key belongs. If omitted, the user -- will be determined based on the access key used to sign the request. uakUserName :: UpdateAccessKey -> Maybe Text data UpdateAccessKeyResponse UpdateAccessKeyResponse :: UpdateAccessKeyResponse instance Typeable UpdateAccessKey instance Typeable UpdateAccessKeyResponse instance Eq UpdateAccessKey instance Ord UpdateAccessKey instance Show UpdateAccessKey instance Eq UpdateAccessKeyResponse instance Ord UpdateAccessKeyResponse instance Show UpdateAccessKeyResponse instance AsMemoryResponse UpdateAccessKeyResponse instance Transaction UpdateAccessKey UpdateAccessKeyResponse instance ResponseConsumer UpdateAccessKey UpdateAccessKeyResponse instance SignQuery UpdateAccessKey module Aws.Iam.Commands.UpdateUser -- | Updates the name and/or path of the specified user. -- -- -- http://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateUser.html data UpdateUser UpdateUser :: Text -> Maybe Text -> Maybe Text -> UpdateUser -- | Name of the user to be updated. uuUserName :: UpdateUser -> Text -- | New name for the user. uuNewUserName :: UpdateUser -> Maybe Text -- | New path to which the user will be moved. uuNewPath :: UpdateUser -> Maybe Text data UpdateUserResponse UpdateUserResponse :: UpdateUserResponse instance Typeable UpdateUser instance Typeable UpdateUserResponse instance Eq UpdateUser instance Ord UpdateUser instance Show UpdateUser instance Eq UpdateUserResponse instance Ord UpdateUserResponse instance Show UpdateUserResponse instance AsMemoryResponse UpdateUserResponse instance Transaction UpdateUser UpdateUserResponse instance ResponseConsumer UpdateUser UpdateUserResponse instance SignQuery UpdateUser module Aws.Iam.Commands module Aws.Iam module Aws.S3.Core data S3Authorization S3AuthorizationHeader :: S3Authorization S3AuthorizationQuery :: S3Authorization data RequestStyle -- | Requires correctly setting region endpoint, but allows non-DNS -- compliant bucket names in the US standard region. PathStyle :: RequestStyle -- | Bucket name must be DNS compliant. BucketStyle :: RequestStyle VHostStyle :: RequestStyle data S3Configuration qt S3Configuration :: Protocol -> ByteString -> RequestStyle -> Int -> Maybe ServerSideEncryption -> Bool -> NominalDiffTime -> S3Configuration qt s3Protocol :: S3Configuration qt -> Protocol s3Endpoint :: S3Configuration qt -> ByteString s3RequestStyle :: S3Configuration qt -> RequestStyle s3Port :: S3Configuration qt -> Int s3ServerSideEncryption :: S3Configuration qt -> Maybe ServerSideEncryption s3UseUri :: S3Configuration qt -> Bool s3DefaultExpiry :: S3Configuration qt -> NominalDiffTime s3EndpointUsClassic :: ByteString s3EndpointUsWest :: ByteString s3EndpointUsWest2 :: ByteString s3EndpointEu :: ByteString s3EndpointApSouthEast :: ByteString s3EndpointApSouthEast2 :: ByteString s3EndpointApNorthEast :: ByteString s3 :: Protocol -> ByteString -> Bool -> S3Configuration qt type ErrorCode = Text data S3Error S3Error :: Status -> ErrorCode -> Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe ByteString -> S3Error s3StatusCode :: S3Error -> Status s3ErrorCode :: S3Error -> ErrorCode s3ErrorMessage :: S3Error -> Text s3ErrorResource :: S3Error -> Maybe Text s3ErrorHostId :: S3Error -> Maybe Text s3ErrorAccessKeyId :: S3Error -> Maybe Text s3ErrorStringToSign :: S3Error -> Maybe ByteString data S3Metadata S3Metadata :: Maybe Text -> Maybe Text -> S3Metadata s3MAmzId2 :: S3Metadata -> Maybe Text s3MRequestId :: S3Metadata -> Maybe Text data S3Query S3Query :: Method -> Maybe ByteString -> Maybe ByteString -> Query -> Query -> Maybe ByteString -> Maybe (Digest MD5) -> RequestHeaders -> RequestHeaders -> Maybe RequestBody -> S3Query s3QMethod :: S3Query -> Method s3QBucket :: S3Query -> Maybe ByteString s3QObject :: S3Query -> Maybe ByteString s3QSubresources :: S3Query -> Query s3QQuery :: S3Query -> Query s3QContentType :: S3Query -> Maybe ByteString s3QContentMd5 :: S3Query -> Maybe (Digest MD5) s3QAmzHeaders :: S3Query -> RequestHeaders s3QOtherHeaders :: S3Query -> RequestHeaders s3QRequestBody :: S3Query -> Maybe RequestBody s3SignQuery :: S3Query -> S3Configuration qt -> SignatureData -> SignedQuery s3ResponseConsumer :: HTTPResponseConsumer a -> IORef S3Metadata -> HTTPResponseConsumer a s3XmlResponseConsumer :: (Cursor -> Response S3Metadata a) -> IORef S3Metadata -> HTTPResponseConsumer a s3BinaryResponseConsumer :: HTTPResponseConsumer a -> IORef S3Metadata -> HTTPResponseConsumer a s3ErrorResponseConsumer :: HTTPResponseConsumer a type CanonicalUserId = Text data UserInfo UserInfo :: CanonicalUserId -> Text -> UserInfo userId :: UserInfo -> CanonicalUserId userDisplayName :: UserInfo -> Text parseUserInfo :: MonadThrow m => Cursor -> m UserInfo data CannedAcl AclPrivate :: CannedAcl AclPublicRead :: CannedAcl AclPublicReadWrite :: CannedAcl AclAuthenticatedRead :: CannedAcl AclBucketOwnerRead :: CannedAcl AclBucketOwnerFullControl :: CannedAcl AclLogDeliveryWrite :: CannedAcl writeCannedAcl :: CannedAcl -> Text data StorageClass Standard :: StorageClass ReducedRedundancy :: StorageClass parseStorageClass :: MonadThrow m => Text -> m StorageClass writeStorageClass :: StorageClass -> Text data ServerSideEncryption AES256 :: ServerSideEncryption parseServerSideEncryption :: MonadThrow m => Text -> m ServerSideEncryption writeServerSideEncryption :: ServerSideEncryption -> Text type Bucket = Text data BucketInfo BucketInfo :: Bucket -> UTCTime -> BucketInfo bucketName :: BucketInfo -> Bucket bucketCreationDate :: BucketInfo -> UTCTime type Object = Text data ObjectId ObjectId :: Bucket -> Object -> Maybe Text -> ObjectId oidBucket :: ObjectId -> Bucket oidObject :: ObjectId -> Object oidVersion :: ObjectId -> Maybe Text data ObjectInfo ObjectInfo :: Text -> UTCTime -> Text -> Integer -> StorageClass -> UserInfo -> ObjectInfo objectKey :: ObjectInfo -> Text objectLastModified :: ObjectInfo -> UTCTime objectETag :: ObjectInfo -> Text objectSize :: ObjectInfo -> Integer objectStorageClass :: ObjectInfo -> StorageClass objectOwner :: ObjectInfo -> UserInfo parseObjectInfo :: MonadThrow m => Cursor -> m ObjectInfo data ObjectMetadata ObjectMetadata :: Bool -> Text -> UTCTime -> Maybe Text -> [(Text, Text)] -> Maybe Text -> Maybe ServerSideEncryption -> ObjectMetadata omDeleteMarker :: ObjectMetadata -> Bool omETag :: ObjectMetadata -> Text omLastModified :: ObjectMetadata -> UTCTime omVersionId :: ObjectMetadata -> Maybe Text omUserMetadata :: ObjectMetadata -> [(Text, Text)] omMissingUserMetadata :: ObjectMetadata -> Maybe Text omServerSideEncryption :: ObjectMetadata -> Maybe ServerSideEncryption parseObjectMetadata :: MonadThrow m => ResponseHeaders -> m ObjectMetadata type LocationConstraint = Text locationUsClassic :: LocationConstraint locationApNorthEast :: LocationConstraint locationApSouthEast2 :: LocationConstraint locationApSouthEast :: LocationConstraint locationEu :: LocationConstraint locationUsWest2 :: LocationConstraint locationUsWest :: LocationConstraint instance Typeable S3Error instance Typeable S3Metadata instance Show S3Authorization instance Show RequestStyle instance Show S3Error instance Show S3Metadata instance Show UserInfo instance Show CannedAcl instance Show StorageClass instance Show ServerSideEncryption instance Show (S3Configuration qt) instance Show BucketInfo instance Show ObjectId instance Show ObjectInfo instance Show ObjectMetadata instance Show S3Query instance Loggable S3Metadata instance Monoid S3Metadata instance Exception S3Error instance DefaultServiceConfiguration (S3Configuration UriOnlyQuery) instance DefaultServiceConfiguration (S3Configuration NormalQuery) module Aws.S3.Commands.CopyObject data CopyMetadataDirective CopyMetadata :: CopyMetadataDirective ReplaceMetadata :: [(Text, Text)] -> CopyMetadataDirective data CopyObject CopyObject :: Text -> Bucket -> ObjectId -> CopyMetadataDirective -> Maybe Text -> Maybe Text -> Maybe UTCTime -> Maybe UTCTime -> Maybe StorageClass -> Maybe CannedAcl -> CopyObject coObjectName :: CopyObject -> Text coBucket :: CopyObject -> Bucket coSource :: CopyObject -> ObjectId coMetadataDirective :: CopyObject -> CopyMetadataDirective coIfMatch :: CopyObject -> Maybe Text coIfNoneMatch :: CopyObject -> Maybe Text coIfUnmodifiedSince :: CopyObject -> Maybe UTCTime coIfModifiedSince :: CopyObject -> Maybe UTCTime coStorageClass :: CopyObject -> Maybe StorageClass coAcl :: CopyObject -> Maybe CannedAcl copyObject :: Bucket -> Text -> ObjectId -> CopyMetadataDirective -> CopyObject data CopyObjectResponse CopyObjectResponse :: Maybe Text -> UTCTime -> Text -> CopyObjectResponse corVersionId :: CopyObjectResponse -> Maybe Text corLastModified :: CopyObjectResponse -> UTCTime corETag :: CopyObjectResponse -> Text instance Show CopyMetadataDirective instance Show CopyObject instance Show CopyObjectResponse instance AsMemoryResponse CopyObjectResponse instance Transaction CopyObject CopyObjectResponse instance ResponseConsumer CopyObject CopyObjectResponse instance SignQuery CopyObject module Aws.S3.Commands.DeleteObject data DeleteObject DeleteObject :: Text -> Bucket -> DeleteObject doObjectName :: DeleteObject -> Text doBucket :: DeleteObject -> Bucket data DeleteObjectResponse DeleteObjectResponse :: DeleteObjectResponse instance AsMemoryResponse DeleteObjectResponse instance Transaction DeleteObject DeleteObjectResponse instance ResponseConsumer DeleteObject DeleteObjectResponse instance SignQuery DeleteObject module Aws.S3.Commands.DeleteObjects data DeleteObjects DeleteObjects :: Bucket -> [(Object, Maybe Text)] -> Bool -> Maybe Text -> DeleteObjects dosBucket :: DeleteObjects -> Bucket dosObjects :: DeleteObjects -> [(Object, Maybe Text)] dosQuiet :: DeleteObjects -> Bool dosMultiFactorAuthentication :: DeleteObjects -> Maybe Text deleteObjects :: Bucket -> [Text] -> DeleteObjects data DeleteObjectsResponse DeleteObjectsResponse :: [DORDeleted] -> [DORErrors] -> DeleteObjectsResponse dorDeleted :: DeleteObjectsResponse -> [DORDeleted] dorErrors :: DeleteObjectsResponse -> [DORErrors] data DORDeleted DORDeleted :: Text -> Maybe Text -> Maybe Text -> DORDeleted ddKey :: DORDeleted -> Text ddVersionId :: DORDeleted -> Maybe Text ddDeleteMarkerVersionId :: DORDeleted -> Maybe Text data DORErrors DORErrors :: Text -> Text -> Text -> DORErrors deKey :: DORErrors -> Text deCode :: DORErrors -> Text deMessage :: DORErrors -> Text instance Show DeleteObjects instance Show DORDeleted instance Show DORErrors instance Show DeleteObjectsResponse instance AsMemoryResponse DeleteObjectsResponse instance Transaction DeleteObjects DeleteObjectsResponse instance ResponseConsumer DeleteObjects DeleteObjectsResponse instance SignQuery DeleteObjects module Aws.S3.Commands.GetBucket data GetBucket GetBucket :: Bucket -> Maybe Text -> Maybe Text -> Maybe Int -> Maybe Text -> GetBucket gbBucket :: GetBucket -> Bucket gbDelimiter :: GetBucket -> Maybe Text gbMarker :: GetBucket -> Maybe Text gbMaxKeys :: GetBucket -> Maybe Int gbPrefix :: GetBucket -> Maybe Text getBucket :: Bucket -> GetBucket data GetBucketResponse GetBucketResponse :: Bucket -> Maybe Text -> Maybe Text -> Maybe Int -> Maybe Text -> [ObjectInfo] -> [Text] -> Bool -> GetBucketResponse gbrName :: GetBucketResponse -> Bucket gbrDelimiter :: GetBucketResponse -> Maybe Text gbrMarker :: GetBucketResponse -> Maybe Text gbrMaxKeys :: GetBucketResponse -> Maybe Int gbrPrefix :: GetBucketResponse -> Maybe Text gbrContents :: GetBucketResponse -> [ObjectInfo] gbrCommonPrefixes :: GetBucketResponse -> [Text] gbrIsTruncated :: GetBucketResponse -> Bool instance Show GetBucket instance Show GetBucketResponse instance AsMemoryResponse GetBucketResponse instance Transaction GetBucket GetBucketResponse instance ResponseConsumer r GetBucketResponse instance SignQuery GetBucket module Aws.S3.Commands.GetObject data GetObject GetObject :: Bucket -> Object -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe (Int, Int) -> GetObject goBucket :: GetObject -> Bucket goObjectName :: GetObject -> Object goVersionId :: GetObject -> Maybe Text goResponseContentType :: GetObject -> Maybe Text goResponseContentLanguage :: GetObject -> Maybe Text goResponseExpires :: GetObject -> Maybe Text goResponseCacheControl :: GetObject -> Maybe Text goResponseContentDisposition :: GetObject -> Maybe Text goResponseContentEncoding :: GetObject -> Maybe Text goResponseContentRange :: GetObject -> Maybe (Int, Int) getObject :: Bucket -> Text -> GetObject data GetObjectResponse GetObjectResponse :: ObjectMetadata -> Response (ResumableSource (ResourceT IO) ByteString) -> GetObjectResponse gorMetadata :: GetObjectResponse -> ObjectMetadata gorResponse :: GetObjectResponse -> Response (ResumableSource (ResourceT IO) ByteString) data GetObjectMemoryResponse GetObjectMemoryResponse :: ObjectMetadata -> (Response ByteString) -> GetObjectMemoryResponse instance Show GetObject instance Show GetObjectMemoryResponse instance AsMemoryResponse GetObjectResponse instance Transaction GetObject GetObjectResponse instance ResponseConsumer GetObject GetObjectResponse instance SignQuery GetObject module Aws.S3.Commands.GetService data GetService GetService :: GetService data GetServiceResponse GetServiceResponse :: UserInfo -> [BucketInfo] -> GetServiceResponse gsrOwner :: GetServiceResponse -> UserInfo gsrBuckets :: GetServiceResponse -> [BucketInfo] instance Show GetServiceResponse instance AsMemoryResponse GetServiceResponse instance Transaction GetService GetServiceResponse instance SignQuery GetService instance ResponseConsumer r GetServiceResponse module Aws.S3.Commands.HeadObject data HeadObject HeadObject :: Bucket -> Object -> Maybe Text -> HeadObject hoBucket :: HeadObject -> Bucket hoObjectName :: HeadObject -> Object hoVersionId :: HeadObject -> Maybe Text headObject :: Bucket -> Text -> HeadObject data HeadObjectResponse HeadObjectResponse :: ObjectMetadata -> HeadObjectResponse horMetadata :: HeadObjectResponse -> ObjectMetadata data HeadObjectMemoryResponse HeadObjectMemoryResponse :: ObjectMetadata -> HeadObjectMemoryResponse instance Show HeadObject instance Show HeadObjectMemoryResponse instance AsMemoryResponse HeadObjectResponse instance Transaction HeadObject HeadObjectResponse instance ResponseConsumer HeadObject HeadObjectResponse instance SignQuery HeadObject module Aws.S3.Commands.PutBucket data PutBucket PutBucket :: Bucket -> Maybe CannedAcl -> LocationConstraint -> PutBucket pbBucket :: PutBucket -> Bucket pbCannedAcl :: PutBucket -> Maybe CannedAcl pbLocationConstraint :: PutBucket -> LocationConstraint data PutBucketResponse PutBucketResponse :: PutBucketResponse instance Show PutBucket instance Show PutBucketResponse instance AsMemoryResponse PutBucketResponse instance Transaction PutBucket PutBucketResponse instance ResponseConsumer r PutBucketResponse instance SignQuery PutBucket module Aws.S3.Commands.PutObject data PutObject PutObject :: Text -> Bucket -> Maybe ByteString -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe (Digest MD5) -> Maybe Int -> Maybe CannedAcl -> Maybe StorageClass -> Maybe Text -> Maybe ServerSideEncryption -> RequestBody -> [(Text, Text)] -> PutObject poObjectName :: PutObject -> Text poBucket :: PutObject -> Bucket poContentType :: PutObject -> Maybe ByteString poCacheControl :: PutObject -> Maybe Text poContentDisposition :: PutObject -> Maybe Text poContentEncoding :: PutObject -> Maybe Text poContentMD5 :: PutObject -> Maybe (Digest MD5) poExpires :: PutObject -> Maybe Int poAcl :: PutObject -> Maybe CannedAcl poStorageClass :: PutObject -> Maybe StorageClass poWebsiteRedirectLocation :: PutObject -> Maybe Text poServerSideEncryption :: PutObject -> Maybe ServerSideEncryption poRequestBody :: PutObject -> RequestBody poMetadata :: PutObject -> [(Text, Text)] putObject :: Bucket -> Text -> RequestBody -> PutObject data PutObjectResponse PutObjectResponse :: Maybe Text -> PutObjectResponse porVersionId :: PutObjectResponse -> Maybe Text instance Show PutObjectResponse instance AsMemoryResponse PutObjectResponse instance Transaction PutObject PutObjectResponse instance ResponseConsumer PutObject PutObjectResponse instance SignQuery PutObject module Aws.S3.Commands module Aws.S3 module Aws.SimpleDb.Core type ErrorCode = String data SdbError SdbError :: Status -> ErrorCode -> String -> SdbError sdbStatusCode :: SdbError -> Status sdbErrorCode :: SdbError -> ErrorCode sdbErrorMessage :: SdbError -> String data SdbMetadata SdbMetadata :: Maybe Text -> Maybe Text -> SdbMetadata requestId :: SdbMetadata -> Maybe Text boxUsage :: SdbMetadata -> Maybe Text data SdbConfiguration qt SdbConfiguration :: Protocol -> Method -> ByteString -> Int -> SdbConfiguration qt sdbiProtocol :: SdbConfiguration qt -> Protocol sdbiHttpMethod :: SdbConfiguration qt -> Method sdbiHost :: SdbConfiguration qt -> ByteString sdbiPort :: SdbConfiguration qt -> Int sdbUsEast :: ByteString sdbUsWest :: ByteString sdbEuWest :: ByteString sdbApSoutheast :: ByteString sdbApNortheast :: ByteString sdbHttpGet :: ByteString -> SdbConfiguration qt sdbHttpPost :: ByteString -> SdbConfiguration NormalQuery sdbHttpsGet :: ByteString -> SdbConfiguration qt sdbHttpsPost :: ByteString -> SdbConfiguration NormalQuery sdbSignQuery :: [(ByteString, ByteString)] -> SdbConfiguration qt -> SignatureData -> SignedQuery sdbResponseConsumer :: (Cursor -> Response SdbMetadata a) -> IORef SdbMetadata -> HTTPResponseConsumer a class SdbFromResponse a sdbFromResponse :: SdbFromResponse a => Cursor -> Response SdbMetadata a sdbCheckResponseType :: MonadThrow m => a -> Text -> Cursor -> m a decodeBase64 :: MonadThrow m => Cursor -> m Text data Attribute a ForAttribute :: Text -> a -> Attribute a attributeName :: Attribute a -> Text attributeData :: Attribute a -> a readAttribute :: MonadThrow m => Cursor -> m (Attribute Text) data SetAttribute SetAttribute :: Text -> Bool -> SetAttribute setAttribute :: SetAttribute -> Text isReplaceAttribute :: SetAttribute -> Bool attributeQuery :: (a -> [(ByteString, ByteString)]) -> Attribute a -> [(ByteString, ByteString)] addAttribute :: Text -> Text -> Attribute SetAttribute replaceAttribute :: Text -> Text -> Attribute SetAttribute setAttributeQuery :: SetAttribute -> [(ByteString, ByteString)] data DeleteAttribute DeleteAttribute :: DeleteAttribute ValuedDeleteAttribute :: Text -> DeleteAttribute deleteAttributeValue :: DeleteAttribute -> Text deleteAttributeQuery :: DeleteAttribute -> [(ByteString, ByteString)] data ExpectedAttribute ExpectedValue :: Text -> ExpectedAttribute expectedAttributeValue :: ExpectedAttribute -> Text ExpectedExists :: Bool -> ExpectedAttribute expectedAttributeExists :: ExpectedAttribute -> Bool expectedValue :: Text -> Text -> Attribute ExpectedAttribute expectedExists :: Text -> Bool -> Attribute ExpectedAttribute expectedAttributeQuery :: ExpectedAttribute -> [(ByteString, ByteString)] data Item a Item :: Text -> a -> Item a itemName :: Item a -> Text itemData :: Item a -> a readItem :: MonadThrow m => Cursor -> m (Item [Attribute Text]) itemQuery :: (a -> [(ByteString, ByteString)]) -> Item a -> [(ByteString, ByteString)] instance Typeable SdbError instance Typeable SdbMetadata instance Show SdbError instance Show SdbMetadata instance Show (SdbConfiguration qt) instance Show a => Show (Attribute a) instance Show SetAttribute instance Show DeleteAttribute instance Show ExpectedAttribute instance Show a => Show (Item a) instance DefaultServiceConfiguration (SdbConfiguration UriOnlyQuery) instance DefaultServiceConfiguration (SdbConfiguration NormalQuery) instance Monoid SdbMetadata instance Loggable SdbMetadata instance Exception SdbError module Aws.SimpleDb.Commands.Attributes data GetAttributes GetAttributes :: Text -> Maybe Text -> Bool -> Text -> GetAttributes gaItemName :: GetAttributes -> Text gaAttributeName :: GetAttributes -> Maybe Text gaConsistentRead :: GetAttributes -> Bool gaDomainName :: GetAttributes -> Text data GetAttributesResponse GetAttributesResponse :: [Attribute Text] -> GetAttributesResponse garAttributes :: GetAttributesResponse -> [Attribute Text] getAttributes :: Text -> Text -> GetAttributes data PutAttributes PutAttributes :: Text -> [Attribute SetAttribute] -> [Attribute ExpectedAttribute] -> Text -> PutAttributes paItemName :: PutAttributes -> Text paAttributes :: PutAttributes -> [Attribute SetAttribute] paExpected :: PutAttributes -> [Attribute ExpectedAttribute] paDomainName :: PutAttributes -> Text data PutAttributesResponse PutAttributesResponse :: PutAttributesResponse putAttributes :: Text -> [Attribute SetAttribute] -> Text -> PutAttributes data DeleteAttributes DeleteAttributes :: Text -> [Attribute DeleteAttribute] -> [Attribute ExpectedAttribute] -> Text -> DeleteAttributes daItemName :: DeleteAttributes -> Text daAttributes :: DeleteAttributes -> [Attribute DeleteAttribute] daExpected :: DeleteAttributes -> [Attribute ExpectedAttribute] daDomainName :: DeleteAttributes -> Text data DeleteAttributesResponse DeleteAttributesResponse :: DeleteAttributesResponse deleteAttributes :: Text -> [Attribute DeleteAttribute] -> Text -> DeleteAttributes data BatchPutAttributes BatchPutAttributes :: [Item [Attribute SetAttribute]] -> Text -> BatchPutAttributes bpaItems :: BatchPutAttributes -> [Item [Attribute SetAttribute]] bpaDomainName :: BatchPutAttributes -> Text data BatchPutAttributesResponse BatchPutAttributesResponse :: BatchPutAttributesResponse batchPutAttributes :: [Item [Attribute SetAttribute]] -> Text -> BatchPutAttributes data BatchDeleteAttributes BatchDeleteAttributes :: [Item [Attribute DeleteAttribute]] -> Text -> BatchDeleteAttributes bdaItems :: BatchDeleteAttributes -> [Item [Attribute DeleteAttribute]] bdaDomainName :: BatchDeleteAttributes -> Text data BatchDeleteAttributesResponse BatchDeleteAttributesResponse :: BatchDeleteAttributesResponse batchDeleteAttributes :: [Item [Attribute DeleteAttribute]] -> Text -> BatchDeleteAttributes instance Show GetAttributes instance Show GetAttributesResponse instance Show PutAttributes instance Show PutAttributesResponse instance Show DeleteAttributes instance Show DeleteAttributesResponse instance Show BatchPutAttributes instance Show BatchPutAttributesResponse instance Show BatchDeleteAttributes instance Show BatchDeleteAttributesResponse instance AsMemoryResponse BatchDeleteAttributesResponse instance Transaction BatchDeleteAttributes BatchDeleteAttributesResponse instance ResponseConsumer r BatchDeleteAttributesResponse instance SignQuery BatchDeleteAttributes instance AsMemoryResponse BatchPutAttributesResponse instance Transaction BatchPutAttributes BatchPutAttributesResponse instance ResponseConsumer r BatchPutAttributesResponse instance SignQuery BatchPutAttributes instance AsMemoryResponse DeleteAttributesResponse instance Transaction DeleteAttributes DeleteAttributesResponse instance ResponseConsumer r DeleteAttributesResponse instance SignQuery DeleteAttributes instance AsMemoryResponse PutAttributesResponse instance Transaction PutAttributes PutAttributesResponse instance ResponseConsumer r PutAttributesResponse instance SignQuery PutAttributes instance AsMemoryResponse GetAttributesResponse instance Transaction GetAttributes GetAttributesResponse instance ResponseConsumer r GetAttributesResponse instance SignQuery GetAttributes module Aws.SimpleDb.Commands.Domain data CreateDomain CreateDomain :: Text -> CreateDomain cdDomainName :: CreateDomain -> Text data CreateDomainResponse CreateDomainResponse :: CreateDomainResponse createDomain :: Text -> CreateDomain data DeleteDomain DeleteDomain :: Text -> DeleteDomain ddDomainName :: DeleteDomain -> Text data DeleteDomainResponse DeleteDomainResponse :: DeleteDomainResponse deleteDomain :: Text -> DeleteDomain data DomainMetadata DomainMetadata :: Text -> DomainMetadata dmDomainName :: DomainMetadata -> Text data DomainMetadataResponse DomainMetadataResponse :: UTCTime -> Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> DomainMetadataResponse dmrTimestamp :: DomainMetadataResponse -> UTCTime dmrItemCount :: DomainMetadataResponse -> Integer dmrAttributeValueCount :: DomainMetadataResponse -> Integer dmrAttributeNameCount :: DomainMetadataResponse -> Integer dmrItemNamesSizeBytes :: DomainMetadataResponse -> Integer dmrAttributeValuesSizeBytes :: DomainMetadataResponse -> Integer dmrAttributeNamesSizeBytes :: DomainMetadataResponse -> Integer domainMetadata :: Text -> DomainMetadata data ListDomains ListDomains :: Maybe Int -> Maybe Text -> ListDomains ldMaxNumberOfDomains :: ListDomains -> Maybe Int ldNextToken :: ListDomains -> Maybe Text data ListDomainsResponse ListDomainsResponse :: [Text] -> Maybe Text -> ListDomainsResponse ldrDomainNames :: ListDomainsResponse -> [Text] ldrNextToken :: ListDomainsResponse -> Maybe Text listDomains :: ListDomains instance Show CreateDomain instance Show CreateDomainResponse instance Show DeleteDomain instance Show DeleteDomainResponse instance Show DomainMetadata instance Show DomainMetadataResponse instance Show ListDomains instance Show ListDomainsResponse instance IteratedTransaction ListDomains ListDomainsResponse instance ListResponse ListDomainsResponse Text instance AsMemoryResponse ListDomainsResponse instance Transaction ListDomains ListDomainsResponse instance ResponseConsumer r ListDomainsResponse instance SignQuery ListDomains instance AsMemoryResponse DomainMetadataResponse instance Transaction DomainMetadata DomainMetadataResponse instance ResponseConsumer r DomainMetadataResponse instance SignQuery DomainMetadata instance AsMemoryResponse DeleteDomainResponse instance Transaction DeleteDomain DeleteDomainResponse instance ResponseConsumer r DeleteDomainResponse instance SignQuery DeleteDomain instance AsMemoryResponse CreateDomainResponse instance Transaction CreateDomain CreateDomainResponse instance ResponseConsumer r CreateDomainResponse instance SignQuery CreateDomain module Aws.SimpleDb.Commands.Select data Select Select :: Text -> Bool -> Maybe Text -> Select sSelectExpression :: Select -> Text sConsistentRead :: Select -> Bool sNextToken :: Select -> Maybe Text data SelectResponse SelectResponse :: [Item [Attribute Text]] -> Maybe Text -> SelectResponse srItems :: SelectResponse -> [Item [Attribute Text]] srNextToken :: SelectResponse -> Maybe Text select :: Text -> Select instance Show Select instance Show SelectResponse instance IteratedTransaction Select SelectResponse instance ListResponse SelectResponse (Item [Attribute Text]) instance AsMemoryResponse SelectResponse instance Transaction Select SelectResponse instance ResponseConsumer r SelectResponse instance SignQuery Select module Aws.SimpleDb.Commands module Aws.SimpleDb module Aws.Sqs.Core type ErrorCode = Text data SqsError SqsError :: Status -> ErrorCode -> Text -> Text -> Maybe Text -> Maybe SqsMetadata -> SqsError sqsStatusCode :: SqsError -> Status sqsErrorCode :: SqsError -> ErrorCode sqsErrorType :: SqsError -> Text sqsErrorMessage :: SqsError -> Text sqsErrorDetail :: SqsError -> Maybe Text sqsErrorMetadata :: SqsError -> Maybe SqsMetadata SqsXmlError :: Text -> Maybe SqsMetadata -> SqsError sqsXmlErrorMessage :: SqsError -> Text sqsXmlErrorMetadata :: SqsError -> Maybe SqsMetadata data SqsMetadata SqsMetadata :: Maybe Text -> Maybe Text -> SqsMetadata sqsMAmzId2 :: SqsMetadata -> Maybe Text sqsMRequestId :: SqsMetadata -> Maybe Text data SqsAuthorization SqsAuthorizationHeader :: SqsAuthorization SqsAuthorizationQuery :: SqsAuthorization data Endpoint Endpoint :: ByteString -> LocationConstraint -> [LocationConstraint] -> Endpoint endpointHost :: Endpoint -> ByteString endpointDefaultLocationConstraint :: Endpoint -> LocationConstraint endpointAllowedLocationConstraints :: Endpoint -> [LocationConstraint] data SqsConfiguration qt SqsConfiguration :: Protocol -> Endpoint -> Int -> Bool -> NominalDiffTime -> SqsConfiguration qt sqsProtocol :: SqsConfiguration qt -> Protocol sqsEndpoint :: SqsConfiguration qt -> Endpoint sqsPort :: SqsConfiguration qt -> Int sqsUseUri :: SqsConfiguration qt -> Bool sqsDefaultExpiry :: SqsConfiguration qt -> NominalDiffTime sqsEndpointUsClassic :: Endpoint sqsEndpointUsWest :: Endpoint sqsEndpointUsWest2 :: Endpoint sqsEndpointEu :: Endpoint sqsEndpointApSouthEast :: Endpoint sqsEndpointApNorthEast :: Endpoint sqs :: Protocol -> Endpoint -> Bool -> SqsConfiguration qt data SqsQuery SqsQuery :: Maybe QueueName -> Query -> SqsQuery sqsQueueName :: SqsQuery -> Maybe QueueName sqsQuery :: SqsQuery -> Query sqsSignQuery :: SqsQuery -> SqsConfiguration qt -> SignatureData -> SignedQuery sqsResponseConsumer :: HTTPResponseConsumer a -> IORef SqsMetadata -> HTTPResponseConsumer a sqsXmlResponseConsumer :: (Cursor -> Response SqsMetadata a) -> IORef SqsMetadata -> HTTPResponseConsumer a sqsErrorResponseConsumer :: HTTPResponseConsumer a data QueueName QueueName :: Text -> Text -> QueueName qName :: QueueName -> Text qAccountNumber :: QueueName -> Text printQueueName :: QueueName -> Text data QueueAttribute QueueAll :: QueueAttribute ApproximateNumberOfMessages :: QueueAttribute ApproximateNumberOfMessagesNotVisible :: QueueAttribute VisibilityTimeout :: QueueAttribute CreatedTimestamp :: QueueAttribute LastModifiedTimestamp :: QueueAttribute Policy :: QueueAttribute MaximumMessageSize :: QueueAttribute MessageRetentionPeriod :: QueueAttribute QueueArn :: QueueAttribute data MessageAttribute MessageAll :: MessageAttribute SenderId :: MessageAttribute SentTimestamp :: MessageAttribute ApproximateReceiveCount :: MessageAttribute ApproximateFirstReceiveTimestamp :: MessageAttribute data SqsPermission PermissionAll :: SqsPermission PermissionSendMessage :: SqsPermission PermissionReceiveMessage :: SqsPermission PermissionDeleteMessage :: SqsPermission PermissionChangeMessageVisibility :: SqsPermission PermissionGetQueueAttributes :: SqsPermission parseQueueAttribute :: MonadThrow m => Text -> m QueueAttribute printQueueAttribute :: QueueAttribute -> Text parseMessageAttribute :: MonadThrow m => Text -> m MessageAttribute printMessageAttribute :: MessageAttribute -> Text printPermission :: SqsPermission -> Text newtype ReceiptHandle ReceiptHandle :: Text -> ReceiptHandle newtype MessageId MessageId :: Text -> MessageId printReceiptHandle :: ReceiptHandle -> Text instance Typeable SqsError instance Show SqsMetadata instance Show SqsError instance Show SqsAuthorization instance Show Endpoint instance Show (SqsConfiguration qt) instance Show QueueName instance Show QueueAttribute instance Enum QueueAttribute instance Eq QueueAttribute instance Show MessageAttribute instance Eq MessageAttribute instance Enum MessageAttribute instance Show SqsPermission instance Enum SqsPermission instance Eq SqsPermission instance Show ReceiptHandle instance Eq ReceiptHandle instance Show MessageId instance Eq MessageId instance DefaultServiceConfiguration (SqsConfiguration UriOnlyQuery) instance DefaultServiceConfiguration (SqsConfiguration NormalQuery) instance Monoid SqsMetadata instance Loggable SqsMetadata instance Exception SqsError module Aws.Sqs.Commands.Message data SendMessage SendMessage :: Text -> QueueName -> SendMessage smMessage :: SendMessage -> Text smQueueName :: SendMessage -> QueueName data SendMessageResponse SendMessageResponse :: Text -> MessageId -> SendMessageResponse smrMD5OfMessageBody :: SendMessageResponse -> Text smrMessageId :: SendMessageResponse -> MessageId data DeleteMessage DeleteMessage :: ReceiptHandle -> QueueName -> DeleteMessage dmReceiptHandle :: DeleteMessage -> ReceiptHandle dmQueueName :: DeleteMessage -> QueueName data DeleteMessageResponse DeleteMessageResponse :: DeleteMessageResponse data ReceiveMessage ReceiveMessage :: Maybe Int -> [MessageAttribute] -> Maybe Int -> QueueName -> ReceiveMessage rmVisibilityTimeout :: ReceiveMessage -> Maybe Int rmAttributes :: ReceiveMessage -> [MessageAttribute] rmMaxNumberOfMessages :: ReceiveMessage -> Maybe Int rmQueueName :: ReceiveMessage -> QueueName data Message Message :: Text -> ReceiptHandle -> Text -> Text -> [(MessageAttribute, Text)] -> Message mMessageId :: Message -> Text mReceiptHandle :: Message -> ReceiptHandle mMD5OfBody :: Message -> Text mBody :: Message -> Text mAttributes :: Message -> [(MessageAttribute, Text)] data ReceiveMessageResponse ReceiveMessageResponse :: [Message] -> ReceiveMessageResponse rmrMessages :: ReceiveMessageResponse -> [Message] readMessageAttribute :: MonadThrow m => Cursor -> m (MessageAttribute, Text) readMessage :: Cursor -> [Message] formatMAttributes :: [MessageAttribute] -> [(ByteString, Maybe ByteString)] data ChangeMessageVisibility ChangeMessageVisibility :: ReceiptHandle -> Int -> QueueName -> ChangeMessageVisibility cmvReceiptHandle :: ChangeMessageVisibility -> ReceiptHandle cmvVisibilityTimeout :: ChangeMessageVisibility -> Int cmvQueueName :: ChangeMessageVisibility -> QueueName data ChangeMessageVisibilityResponse ChangeMessageVisibilityResponse :: ChangeMessageVisibilityResponse instance Show SendMessage instance Show SendMessageResponse instance Show DeleteMessage instance Show DeleteMessageResponse instance Show ReceiveMessage instance Show Message instance Show ReceiveMessageResponse instance Show ChangeMessageVisibility instance Show ChangeMessageVisibilityResponse instance AsMemoryResponse ChangeMessageVisibilityResponse instance Transaction ChangeMessageVisibility ChangeMessageVisibilityResponse instance SignQuery ChangeMessageVisibility instance ResponseConsumer r ChangeMessageVisibilityResponse instance AsMemoryResponse ReceiveMessageResponse instance Transaction ReceiveMessage ReceiveMessageResponse instance SignQuery ReceiveMessage instance ResponseConsumer r ReceiveMessageResponse instance AsMemoryResponse DeleteMessageResponse instance Transaction DeleteMessage DeleteMessageResponse instance SignQuery DeleteMessage instance ResponseConsumer r DeleteMessageResponse instance AsMemoryResponse SendMessageResponse instance Transaction SendMessage SendMessageResponse instance SignQuery SendMessage instance ResponseConsumer r SendMessageResponse module Aws.Sqs.Commands.Permission data AddPermission AddPermission :: Text -> [(Text, SqsPermission)] -> QueueName -> AddPermission apLabel :: AddPermission -> Text apPermissions :: AddPermission -> [(Text, SqsPermission)] apQueueName :: AddPermission -> QueueName data AddPermissionResponse AddPermissionResponse :: AddPermissionResponse formatPermissions :: [(Text, SqsPermission)] -> [QueryItem] data RemovePermission RemovePermission :: Text -> QueueName -> RemovePermission rpLabel :: RemovePermission -> Text rpQueueName :: RemovePermission -> QueueName data RemovePermissionResponse RemovePermissionResponse :: RemovePermissionResponse instance Show AddPermission instance Show AddPermissionResponse instance Show RemovePermission instance Show RemovePermissionResponse instance AsMemoryResponse RemovePermissionResponse instance Transaction RemovePermission RemovePermissionResponse instance SignQuery RemovePermission instance ResponseConsumer r RemovePermissionResponse instance AsMemoryResponse AddPermissionResponse instance Transaction AddPermission AddPermissionResponse instance SignQuery AddPermission instance ResponseConsumer r AddPermissionResponse module Aws.Sqs.Commands.Queue data CreateQueue CreateQueue :: Maybe Int -> Text -> CreateQueue cqDefaultVisibilityTimeout :: CreateQueue -> Maybe Int cqQueueName :: CreateQueue -> Text data CreateQueueResponse CreateQueueResponse :: Text -> CreateQueueResponse cqrQueueUrl :: CreateQueueResponse -> Text data DeleteQueue DeleteQueue :: QueueName -> DeleteQueue dqQueueName :: DeleteQueue -> QueueName data DeleteQueueResponse DeleteQueueResponse :: DeleteQueueResponse data ListQueues ListQueues :: Maybe Text -> ListQueues lqQueueNamePrefix :: ListQueues -> Maybe Text data ListQueuesResponse ListQueuesResponse :: [Text] -> ListQueuesResponse lqrQueueUrls :: ListQueuesResponse -> [Text] instance Show CreateQueue instance Show CreateQueueResponse instance Show DeleteQueue instance Show DeleteQueueResponse instance Show ListQueues instance Show ListQueuesResponse instance AsMemoryResponse ListQueuesResponse instance Transaction ListQueues ListQueuesResponse instance SignQuery ListQueues instance ResponseConsumer r ListQueuesResponse instance AsMemoryResponse DeleteQueueResponse instance Transaction DeleteQueue DeleteQueueResponse instance SignQuery DeleteQueue instance ResponseConsumer r DeleteQueueResponse instance AsMemoryResponse CreateQueueResponse instance Transaction CreateQueue CreateQueueResponse instance SignQuery CreateQueue instance ResponseConsumer r CreateQueueResponse module Aws.Sqs.Commands.QueueAttributes data GetQueueAttributes GetQueueAttributes :: QueueName -> [QueueAttribute] -> GetQueueAttributes gqaQueueName :: GetQueueAttributes -> QueueName gqaAttributes :: GetQueueAttributes -> [QueueAttribute] data GetQueueAttributesResponse GetQueueAttributesResponse :: [(QueueAttribute, Text)] -> GetQueueAttributesResponse gqarAttributes :: GetQueueAttributesResponse -> [(QueueAttribute, Text)] parseAttributes :: Cursor -> [(QueueAttribute, Text)] formatAttributes :: [QueueAttribute] -> [(ByteString, Maybe ByteString)] data SetQueueAttributes SetQueueAttributes :: QueueAttribute -> Text -> QueueName -> SetQueueAttributes sqaAttribute :: SetQueueAttributes -> QueueAttribute sqaValue :: SetQueueAttributes -> Text sqaQueueName :: SetQueueAttributes -> QueueName data SetQueueAttributesResponse SetQueueAttributesResponse :: SetQueueAttributesResponse instance Show GetQueueAttributes instance Show GetQueueAttributesResponse instance Show SetQueueAttributes instance Show SetQueueAttributesResponse instance AsMemoryResponse SetQueueAttributesResponse instance Transaction SetQueueAttributes SetQueueAttributesResponse instance SignQuery SetQueueAttributes instance ResponseConsumer r SetQueueAttributesResponse instance AsMemoryResponse GetQueueAttributesResponse instance Transaction GetQueueAttributes GetQueueAttributesResponse instance SignQuery GetQueueAttributes instance ResponseConsumer r GetQueueAttributesResponse module Aws.Sqs.Commands module Aws.Sqs module Aws.Ses.Core data SesError SesError :: Status -> Text -> Text -> SesError sesStatusCode :: SesError -> Status sesErrorCode :: SesError -> Text sesErrorMessage :: SesError -> Text data SesMetadata SesMetadata :: Maybe Text -> SesMetadata requestId :: SesMetadata -> Maybe Text data SesConfiguration qt SesConfiguration :: Method -> ByteString -> SesConfiguration qt sesiHttpMethod :: SesConfiguration qt -> Method sesiHost :: SesConfiguration qt -> ByteString sesUsEast :: ByteString sesHttpsGet :: ByteString -> SesConfiguration qt sesHttpsPost :: ByteString -> SesConfiguration NormalQuery sesSignQuery :: [(ByteString, ByteString)] -> SesConfiguration qt -> SignatureData -> SignedQuery sesResponseConsumer :: (Cursor -> Response SesMetadata a) -> IORef SesMetadata -> HTTPResponseConsumer a -- | A raw e-mail. data RawMessage RawMessage :: ByteString -> RawMessage rawMessageData :: RawMessage -> ByteString -- | The destinations of an e-mail. data Destination Destination :: [EmailAddress] -> [EmailAddress] -> [EmailAddress] -> Destination destinationBccAddresses :: Destination -> [EmailAddress] destinationCcAddresses :: Destination -> [EmailAddress] destinationToAddresses :: Destination -> [EmailAddress] -- | An e-mail address. type EmailAddress = Text -- | The sender's e-mail address. data Sender Sender :: EmailAddress -> Sender senderAddress :: Sender -> EmailAddress -- | Write a data type as a list of query parameters. sesAsQuery :: SesAsQuery a => a -> [(ByteString, ByteString)] instance Typeable SesError instance Typeable SesMetadata instance Typeable RawMessage instance Typeable Destination instance Typeable Sender instance Show SesError instance Show SesMetadata instance Show (SesConfiguration qt) instance Eq RawMessage instance Ord RawMessage instance Show RawMessage instance Eq Destination instance Ord Destination instance Show Destination instance Eq Sender instance Ord Sender instance Show Sender instance SesAsQuery Sender instance Monoid Destination instance SesAsQuery Destination instance SesAsQuery RawMessage instance SesAsQuery a => SesAsQuery (Maybe a) instance DefaultServiceConfiguration (SesConfiguration UriOnlyQuery) instance DefaultServiceConfiguration (SesConfiguration NormalQuery) instance Monoid SesMetadata instance Loggable SesMetadata instance Exception SesError module Aws.Ses.Commands.SendRawEmail -- | Send a raw e-mail message. data SendRawEmail SendRawEmail :: [EmailAddress] -> RawMessage -> Maybe Sender -> SendRawEmail srmDestinations :: SendRawEmail -> [EmailAddress] srmRawMessage :: SendRawEmail -> RawMessage srmSource :: SendRawEmail -> Maybe Sender -- | The response sent back by Amazon SES after a SendRawEmail -- command. data SendRawEmailResponse SendRawEmailResponse :: Text -> SendRawEmailResponse srmrMessageId :: SendRawEmailResponse -> Text instance Typeable SendRawEmail instance Typeable SendRawEmailResponse instance Eq SendRawEmail instance Ord SendRawEmail instance Show SendRawEmail instance Eq SendRawEmailResponse instance Ord SendRawEmailResponse instance Show SendRawEmailResponse instance AsMemoryResponse SendRawEmailResponse instance Transaction SendRawEmail SendRawEmailResponse instance ResponseConsumer SendRawEmail SendRawEmailResponse instance SignQuery SendRawEmail module Aws.Ses.Commands.ListIdentities -- | List email addresses and/or domains data ListIdentities ListIdentities :: Maybe IdentityType -> Maybe Int -> Maybe Text -> ListIdentities liIdentityType :: ListIdentities -> Maybe IdentityType liMaxItems :: ListIdentities -> Maybe Int liNextToken :: ListIdentities -> Maybe Text -- | The response sent back by Amazon SES after a ListIdentities -- command. data ListIdentitiesResponse ListIdentitiesResponse :: [Text] -> ListIdentitiesResponse data IdentityType EmailAddress :: IdentityType Domain :: IdentityType instance Typeable IdentityType instance Typeable ListIdentities instance Typeable ListIdentitiesResponse instance Eq IdentityType instance Ord IdentityType instance Show IdentityType instance Eq ListIdentities instance Ord ListIdentities instance Show ListIdentities instance Eq ListIdentitiesResponse instance Ord ListIdentitiesResponse instance Show ListIdentitiesResponse instance AsMemoryResponse ListIdentitiesResponse instance Transaction ListIdentities ListIdentitiesResponse instance ResponseConsumer ListIdentities ListIdentitiesResponse instance SignQuery ListIdentities module Aws.Ses.Commands.VerifyEmailIdentity -- | List email addresses and/or domains data VerifyEmailIdentity VerifyEmailIdentity :: Text -> VerifyEmailIdentity -- | The response sent back by Amazon SES after a -- VerifyEmailIdentity command. data VerifyEmailIdentityResponse VerifyEmailIdentityResponse :: VerifyEmailIdentityResponse instance Typeable VerifyEmailIdentity instance Typeable VerifyEmailIdentityResponse instance Eq VerifyEmailIdentity instance Ord VerifyEmailIdentity instance Show VerifyEmailIdentity instance Eq VerifyEmailIdentityResponse instance Ord VerifyEmailIdentityResponse instance Show VerifyEmailIdentityResponse instance AsMemoryResponse VerifyEmailIdentityResponse instance Transaction VerifyEmailIdentity VerifyEmailIdentityResponse instance ResponseConsumer VerifyEmailIdentity VerifyEmailIdentityResponse instance SignQuery VerifyEmailIdentity module Aws.Ses.Commands.VerifyDomainIdentity -- | Verify ownership of a domain. data VerifyDomainIdentity VerifyDomainIdentity :: Text -> VerifyDomainIdentity -- | The response sent back by Amazon SES after a -- VerifyDomainIdentity command. data VerifyDomainIdentityResponse VerifyDomainIdentityResponse :: Text -> VerifyDomainIdentityResponse instance Typeable VerifyDomainIdentity instance Typeable VerifyDomainIdentityResponse instance Eq VerifyDomainIdentity instance Ord VerifyDomainIdentity instance Show VerifyDomainIdentity instance Eq VerifyDomainIdentityResponse instance Ord VerifyDomainIdentityResponse instance Show VerifyDomainIdentityResponse instance AsMemoryResponse VerifyDomainIdentityResponse instance Transaction VerifyDomainIdentity VerifyDomainIdentityResponse instance ResponseConsumer VerifyDomainIdentity VerifyDomainIdentityResponse instance SignQuery VerifyDomainIdentity module Aws.Ses.Commands.VerifyDomainDkim -- | Verify ownership of a domain. data VerifyDomainDkim VerifyDomainDkim :: Text -> VerifyDomainDkim -- | The response sent back by Amazon SES after a VerifyDomainDkim -- command. data VerifyDomainDkimResponse VerifyDomainDkimResponse :: [Text] -> VerifyDomainDkimResponse instance Typeable VerifyDomainDkim instance Typeable VerifyDomainDkimResponse instance Eq VerifyDomainDkim instance Ord VerifyDomainDkim instance Show VerifyDomainDkim instance Eq VerifyDomainDkimResponse instance Ord VerifyDomainDkimResponse instance Show VerifyDomainDkimResponse instance AsMemoryResponse VerifyDomainDkimResponse instance Transaction VerifyDomainDkim VerifyDomainDkimResponse instance ResponseConsumer VerifyDomainDkim VerifyDomainDkimResponse instance SignQuery VerifyDomainDkim module Aws.Ses.Commands.DeleteIdentity -- | Delete an email address or domain data DeleteIdentity DeleteIdentity :: Text -> DeleteIdentity -- | The response sent back by Amazon SES after a DeleteIdentity -- command. data DeleteIdentityResponse DeleteIdentityResponse :: DeleteIdentityResponse instance Typeable DeleteIdentity instance Typeable DeleteIdentityResponse instance Eq DeleteIdentity instance Ord DeleteIdentity instance Show DeleteIdentity instance Eq DeleteIdentityResponse instance Ord DeleteIdentityResponse instance Show DeleteIdentityResponse instance AsMemoryResponse DeleteIdentityResponse instance Transaction DeleteIdentity DeleteIdentityResponse instance ResponseConsumer DeleteIdentity DeleteIdentityResponse instance SignQuery DeleteIdentity module Aws.Ses.Commands.GetIdentityDkimAttributes -- | Get notification settings for the given identities. data GetIdentityDkimAttributes GetIdentityDkimAttributes :: [Text] -> GetIdentityDkimAttributes -- | The response sent back by Amazon SES after a -- GetIdentityDkimAttributes command. data GetIdentityDkimAttributesResponse GetIdentityDkimAttributesResponse :: [IdentityDkimAttributes] -> GetIdentityDkimAttributesResponse data IdentityDkimAttributes IdentityDkimAttributes :: Text -> Bool -> [Text] -> Text -> IdentityDkimAttributes idIdentity :: IdentityDkimAttributes -> Text idDkimEnabled :: IdentityDkimAttributes -> Bool idDkimTokens :: IdentityDkimAttributes -> [Text] idDkimVerirficationStatus :: IdentityDkimAttributes -> Text instance Typeable GetIdentityDkimAttributes instance Typeable IdentityDkimAttributes instance Typeable GetIdentityDkimAttributesResponse instance Eq GetIdentityDkimAttributes instance Ord GetIdentityDkimAttributes instance Show GetIdentityDkimAttributes instance Eq IdentityDkimAttributes instance Ord IdentityDkimAttributes instance Show IdentityDkimAttributes instance Eq GetIdentityDkimAttributesResponse instance Ord GetIdentityDkimAttributesResponse instance Show GetIdentityDkimAttributesResponse instance AsMemoryResponse GetIdentityDkimAttributesResponse instance Transaction GetIdentityDkimAttributes GetIdentityDkimAttributesResponse instance ResponseConsumer GetIdentityDkimAttributes GetIdentityDkimAttributesResponse instance SignQuery GetIdentityDkimAttributes module Aws.Ses.Commands.GetIdentityNotificationAttributes -- | Get notification settings for the given identities. data GetIdentityNotificationAttributes GetIdentityNotificationAttributes :: [Text] -> GetIdentityNotificationAttributes -- | The response sent back by Amazon SES after a -- GetIdentityNotificationAttributes command. data GetIdentityNotificationAttributesResponse GetIdentityNotificationAttributesResponse :: [IdentityNotificationAttributes] -> GetIdentityNotificationAttributesResponse data IdentityNotificationAttributes IdentityNotificationAttributes :: Text -> Maybe Text -> Maybe Text -> Bool -> IdentityNotificationAttributes inIdentity :: IdentityNotificationAttributes -> Text inBounceTopic :: IdentityNotificationAttributes -> Maybe Text inComplaintTopic :: IdentityNotificationAttributes -> Maybe Text inForwardingEnabled :: IdentityNotificationAttributes -> Bool instance Typeable GetIdentityNotificationAttributes instance Typeable IdentityNotificationAttributes instance Typeable GetIdentityNotificationAttributesResponse instance Eq GetIdentityNotificationAttributes instance Ord GetIdentityNotificationAttributes instance Show GetIdentityNotificationAttributes instance Eq IdentityNotificationAttributes instance Ord IdentityNotificationAttributes instance Show IdentityNotificationAttributes instance Eq GetIdentityNotificationAttributesResponse instance Ord GetIdentityNotificationAttributesResponse instance Show GetIdentityNotificationAttributesResponse instance AsMemoryResponse GetIdentityNotificationAttributesResponse instance Transaction GetIdentityNotificationAttributes GetIdentityNotificationAttributesResponse instance ResponseConsumer GetIdentityNotificationAttributes GetIdentityNotificationAttributesResponse instance SignQuery GetIdentityNotificationAttributes module Aws.Ses.Commands.GetIdentityVerificationAttributes -- | Get verification status for a list of email addresses and/or domains data GetIdentityVerificationAttributes GetIdentityVerificationAttributes :: [Text] -> GetIdentityVerificationAttributes -- | The response sent back by Amazon SES after a -- GetIdentityVerificationAttributes command. data GetIdentityVerificationAttributesResponse GetIdentityVerificationAttributesResponse :: [IdentityVerificationAttributes] -> GetIdentityVerificationAttributesResponse data IdentityVerificationAttributes IdentityVerificationAttributes :: Text -> Text -> Maybe Text -> IdentityVerificationAttributes ivIdentity :: IdentityVerificationAttributes -> Text ivVerificationStatus :: IdentityVerificationAttributes -> Text ivVerificationToken :: IdentityVerificationAttributes -> Maybe Text instance Typeable GetIdentityVerificationAttributes instance Typeable IdentityVerificationAttributes instance Typeable GetIdentityVerificationAttributesResponse instance Eq GetIdentityVerificationAttributes instance Ord GetIdentityVerificationAttributes instance Show GetIdentityVerificationAttributes instance Eq IdentityVerificationAttributes instance Ord IdentityVerificationAttributes instance Show IdentityVerificationAttributes instance Eq GetIdentityVerificationAttributesResponse instance Ord GetIdentityVerificationAttributesResponse instance Show GetIdentityVerificationAttributesResponse instance AsMemoryResponse GetIdentityVerificationAttributesResponse instance Transaction GetIdentityVerificationAttributes GetIdentityVerificationAttributesResponse instance ResponseConsumer GetIdentityVerificationAttributes GetIdentityVerificationAttributesResponse instance SignQuery GetIdentityVerificationAttributes module Aws.Ses.Commands.SetIdentityNotificationTopic -- | Change or remove the Amazon SNS notification topic to which -- notification of the given type are published. data SetIdentityNotificationTopic SetIdentityNotificationTopic :: Text -> NotificationType -> Maybe Text -> SetIdentityNotificationTopic -- | The identity for which the SNS topic will be changed. sntIdentity :: SetIdentityNotificationTopic -> Text -- | The type of notifications that will be published to the topic. sntNotificationType :: SetIdentityNotificationTopic -> NotificationType -- | Just the ARN of the SNS topic or Nothing to unset -- the topic. sntSnsTopic :: SetIdentityNotificationTopic -> Maybe Text -- | The response sent back by SES after the -- SetIdentityNotificationTopic command. data SetIdentityNotificationTopicResponse SetIdentityNotificationTopicResponse :: SetIdentityNotificationTopicResponse data NotificationType Bounce :: NotificationType Complaint :: NotificationType instance Typeable NotificationType instance Typeable SetIdentityNotificationTopic instance Typeable SetIdentityNotificationTopicResponse instance Eq NotificationType instance Ord NotificationType instance Show NotificationType instance Eq SetIdentityNotificationTopic instance Ord SetIdentityNotificationTopic instance Show SetIdentityNotificationTopic instance Eq SetIdentityNotificationTopicResponse instance Ord SetIdentityNotificationTopicResponse instance Show SetIdentityNotificationTopicResponse instance AsMemoryResponse SetIdentityNotificationTopicResponse instance Transaction SetIdentityNotificationTopic SetIdentityNotificationTopicResponse instance ResponseConsumer SetIdentityNotificationTopic SetIdentityNotificationTopicResponse instance SignQuery SetIdentityNotificationTopic module Aws.Ses.Commands.SetIdentityDkimEnabled -- | Change whether bounces and complaints for the given identity will be -- DKIM signed. data SetIdentityDkimEnabled SetIdentityDkimEnabled :: Bool -> Text -> SetIdentityDkimEnabled sdDkimEnabled :: SetIdentityDkimEnabled -> Bool sdIdentity :: SetIdentityDkimEnabled -> Text -- | The response sent back by SES after the SetIdentityDkimEnabled -- command. data SetIdentityDkimEnabledResponse SetIdentityDkimEnabledResponse :: SetIdentityDkimEnabledResponse instance Typeable SetIdentityDkimEnabled instance Typeable SetIdentityDkimEnabledResponse instance Eq SetIdentityDkimEnabled instance Ord SetIdentityDkimEnabled instance Show SetIdentityDkimEnabled instance Eq SetIdentityDkimEnabledResponse instance Ord SetIdentityDkimEnabledResponse instance Show SetIdentityDkimEnabledResponse instance AsMemoryResponse SetIdentityDkimEnabledResponse instance Transaction SetIdentityDkimEnabled SetIdentityDkimEnabledResponse instance ResponseConsumer SetIdentityDkimEnabled SetIdentityDkimEnabledResponse instance SignQuery SetIdentityDkimEnabled module Aws.Ses.Commands.SetIdentityFeedbackForwardingEnabled -- | Change whether bounces and complaints for the given identity will be -- forwarded as email. data SetIdentityFeedbackForwardingEnabled SetIdentityFeedbackForwardingEnabled :: Bool -> Text -> SetIdentityFeedbackForwardingEnabled sffForwardingEnabled :: SetIdentityFeedbackForwardingEnabled -> Bool sffIdentity :: SetIdentityFeedbackForwardingEnabled -> Text -- | The response sent back by SES after the -- SetIdentityFeedbackForwardingEnabled command. data SetIdentityFeedbackForwardingEnabledResponse SetIdentityFeedbackForwardingEnabledResponse :: SetIdentityFeedbackForwardingEnabledResponse instance Typeable SetIdentityFeedbackForwardingEnabled instance Typeable SetIdentityFeedbackForwardingEnabledResponse instance Eq SetIdentityFeedbackForwardingEnabled instance Ord SetIdentityFeedbackForwardingEnabled instance Show SetIdentityFeedbackForwardingEnabled instance Eq SetIdentityFeedbackForwardingEnabledResponse instance Ord SetIdentityFeedbackForwardingEnabledResponse instance Show SetIdentityFeedbackForwardingEnabledResponse instance AsMemoryResponse SetIdentityFeedbackForwardingEnabledResponse instance Transaction SetIdentityFeedbackForwardingEnabled SetIdentityFeedbackForwardingEnabledResponse instance ResponseConsumer SetIdentityFeedbackForwardingEnabled SetIdentityFeedbackForwardingEnabledResponse instance SignQuery SetIdentityFeedbackForwardingEnabled module Aws.Ses.Commands module Aws.Ses module Aws.DynamoDb.Core type ErrorCode = String data DyError DyError :: Status -> ErrorCode -> String -> DyError dyStatusCode :: DyError -> Status dyErrorCode :: DyError -> ErrorCode dyErrorMessage :: DyError -> String data DyMetadata DyMetadata :: DyMetadata data DyConfiguration qt DyConfiguration :: Protocol -> ByteString -> Int -> ByteString -> DyConfiguration qt dyProtocol :: DyConfiguration qt -> Protocol dyHost :: DyConfiguration qt -> ByteString dyPort :: DyConfiguration qt -> Int dyRegion :: DyConfiguration qt -> ByteString dyUsEast :: (ByteString, ByteString) dyHttp :: (ByteString, ByteString) -> DyConfiguration qt dyHttps :: (ByteString, ByteString) -> DyConfiguration qt dyLocal :: DyConfiguration qt dyApiVersion :: ByteString dySignQuery :: ToJSON a => ByteString -> a -> DyConfiguration qt -> SignatureData -> SignedQuery dyResponseConsumer :: FromJSON a => HTTPResponseConsumer a instance Typeable DyError instance Typeable DyMetadata instance Show DyError instance Show DyMetadata instance Show (DyConfiguration qt) instance DefaultServiceConfiguration (DyConfiguration NormalQuery) instance Monoid DyMetadata instance Loggable DyMetadata instance Exception DyError module Aws.DynamoDb.Commands.Table data CreateTable CreateTable :: Text -> [KeyAttributeDefinition] -> KeySchema -> ProvisionedThroughput -> [LocalSecondaryIndex] -> [GlobalSecondaryIndex] -> CreateTable createTableName :: CreateTable -> Text -- | only attributes appearing in a key must be listed here createAttributeDefinitions :: CreateTable -> [KeyAttributeDefinition] createKeySchema :: CreateTable -> KeySchema createProvisionedThroughput :: CreateTable -> ProvisionedThroughput -- | at most 5 local secondary indices are allowed createLocalSecondaryIndexes :: CreateTable -> [LocalSecondaryIndex] createGlobalSecondaryIndexes :: CreateTable -> [GlobalSecondaryIndex] newtype CreateTableResult CreateTableResult :: TableDescription -> CreateTableResult ctStatus :: CreateTableResult -> TableDescription data DescribeTable DescribeTable :: Text -> DescribeTable dTableName :: DescribeTable -> Text newtype DescribeTableResult DescribeTableResult :: TableDescription -> DescribeTableResult dtStatus :: DescribeTableResult -> TableDescription data UpdateTable UpdateTable :: Text -> ProvisionedThroughput -> [GlobalSecondaryIndexUpdate] -> UpdateTable updateTableName :: UpdateTable -> Text updateProvisionedThroughput :: UpdateTable -> ProvisionedThroughput updateGlobalSecondaryIndexUpdates :: UpdateTable -> [GlobalSecondaryIndexUpdate] newtype UpdateTableResult UpdateTableResult :: TableDescription -> UpdateTableResult uStatus :: UpdateTableResult -> TableDescription data DeleteTable DeleteTable :: Text -> DeleteTable deleteTableName :: DeleteTable -> Text newtype DeleteTableResult DeleteTableResult :: TableDescription -> DeleteTableResult dStatus :: DeleteTableResult -> TableDescription -- | TODO: currently this does not support restarting a cutoff query -- because of size. data ListTables ListTables :: ListTables newtype ListTablesResult ListTablesResult :: [Text] -> ListTablesResult tableNames :: ListTablesResult -> [Text] -- | The type of a key attribute that appears in the table key or as a key -- in one of the indices. data KeyAttributeType AttrStringT :: KeyAttributeType AttrNumberT :: KeyAttributeType AttrBinaryT :: KeyAttributeType -- | A key attribute that appears in the table key or as a key in one of -- the indices. data KeyAttributeDefinition KeyAttributeDefinition :: Text -> KeyAttributeType -> KeyAttributeDefinition attributeName :: KeyAttributeDefinition -> Text attributeType :: KeyAttributeDefinition -> KeyAttributeType -- | The key schema can either be a hash of a single attribute name or a -- hash attribute name and a range attribute name. data KeySchema KeyHashOnly :: Text -> KeySchema KeyHashAndRange :: Text -> Text -> KeySchema -- | This determines which attributes are projected into a secondary index. data Projection ProjectKeysOnly :: Projection ProjectAll :: Projection ProjectInclude :: [Text] -> Projection -- | Describes a single local secondary index. The KeySchema MUST share the -- same hash key attribute as the parent table, only the range key can -- differ. data LocalSecondaryIndex LocalSecondaryIndex :: Text -> KeySchema -> Projection -> LocalSecondaryIndex localIndexName :: LocalSecondaryIndex -> Text localKeySchema :: LocalSecondaryIndex -> KeySchema localProjection :: LocalSecondaryIndex -> Projection -- | This is returned by AWS to describe the local secondary index. data LocalSecondaryIndexStatus LocalSecondaryIndexStatus :: Text -> Integer -> Integer -> KeySchema -> Projection -> LocalSecondaryIndexStatus locStatusIndexName :: LocalSecondaryIndexStatus -> Text locStatusIndexSizeBytes :: LocalSecondaryIndexStatus -> Integer locStatusItemCount :: LocalSecondaryIndexStatus -> Integer locStatusKeySchema :: LocalSecondaryIndexStatus -> KeySchema locStatusProjection :: LocalSecondaryIndexStatus -> Projection -- | The target provisioned throughput you are requesting for the table or -- global secondary index. data ProvisionedThroughput ProvisionedThroughput :: Int -> Int -> ProvisionedThroughput readCapacityUnits :: ProvisionedThroughput -> Int writeCapacityUnits :: ProvisionedThroughput -> Int -- | This is returned by AWS as the status of the throughput for a table or -- global secondary index. data ProvisionedThroughputStatus ProvisionedThroughputStatus :: UTCTime -> UTCTime -> Int -> Int -> Int -> ProvisionedThroughputStatus statusLastDecreaseDateTime :: ProvisionedThroughputStatus -> UTCTime statusLastIncreaseDateTime :: ProvisionedThroughputStatus -> UTCTime statusNumberOfDecreasesToday :: ProvisionedThroughputStatus -> Int statusReadCapacityUnits :: ProvisionedThroughputStatus -> Int statusWriteCapacityUnits :: ProvisionedThroughputStatus -> Int -- | Describes a global secondary index. data GlobalSecondaryIndex GlobalSecondaryIndex :: Text -> KeySchema -> Projection -> ProvisionedThroughput -> GlobalSecondaryIndex globalIndexName :: GlobalSecondaryIndex -> Text globalKeySchema :: GlobalSecondaryIndex -> KeySchema globalProjection :: GlobalSecondaryIndex -> Projection globalProvisionedThroughput :: GlobalSecondaryIndex -> ProvisionedThroughput -- | This is returned by AWS to describe the status of a global secondary -- index. data GlobalSecondaryIndexStatus GlobalSecondaryIndexStatus :: Text -> Integer -> Text -> Integer -> KeySchema -> Projection -> ProvisionedThroughputStatus -> GlobalSecondaryIndexStatus gStatusIndexName :: GlobalSecondaryIndexStatus -> Text gStatusIndexSizeBytes :: GlobalSecondaryIndexStatus -> Integer gStatusIndexStatus :: GlobalSecondaryIndexStatus -> Text gStatusItemCount :: GlobalSecondaryIndexStatus -> Integer gStatusKeySchema :: GlobalSecondaryIndexStatus -> KeySchema gStatusProjection :: GlobalSecondaryIndexStatus -> Projection gStatusProvisionedThroughput :: GlobalSecondaryIndexStatus -> ProvisionedThroughputStatus -- | This is used to request a change in the provisioned throughput of a -- global secondary index as part of an UpdateTable operation. data GlobalSecondaryIndexUpdate GlobalSecondaryIndexUpdate :: Text -> ProvisionedThroughput -> GlobalSecondaryIndexUpdate gUpdateIndexName :: GlobalSecondaryIndexUpdate -> Text gUpdateProvisionedThroughput :: GlobalSecondaryIndexUpdate -> ProvisionedThroughput -- | This describes the table and is the return value from AWS for all the -- table-related commands. data TableDescription TableDescription :: Text -> Integer -> Text -> UTCTime -> Integer -> [KeyAttributeDefinition] -> KeySchema -> ProvisionedThroughputStatus -> [LocalSecondaryIndexStatus] -> [GlobalSecondaryIndexStatus] -> TableDescription rTableName :: TableDescription -> Text rTableSizeBytes :: TableDescription -> Integer -- | one of CREATING, UPDATING, DELETING, ACTIVE rTableStatus :: TableDescription -> Text rCreationDateTime :: TableDescription -> UTCTime rItemCount :: TableDescription -> Integer rAttributeDefinitions :: TableDescription -> [KeyAttributeDefinition] rKeySchema :: TableDescription -> KeySchema rProvisionedThroughput :: TableDescription -> ProvisionedThroughputStatus rLocalSecondaryIndexes :: TableDescription -> [LocalSecondaryIndexStatus] rGlobalSecondaryIndexes :: TableDescription -> [GlobalSecondaryIndexStatus] instance Show KeyAttributeType instance Eq KeyAttributeType instance Enum KeyAttributeType instance Bounded KeyAttributeType instance Generic KeyAttributeType instance Show KeyAttributeDefinition instance Generic KeyAttributeDefinition instance Show KeySchema instance Show Projection instance Show LocalSecondaryIndex instance Generic LocalSecondaryIndex instance Show LocalSecondaryIndexStatus instance Generic LocalSecondaryIndexStatus instance Show ProvisionedThroughput instance Generic ProvisionedThroughput instance Show ProvisionedThroughputStatus instance Generic ProvisionedThroughputStatus instance Show GlobalSecondaryIndex instance Generic GlobalSecondaryIndex instance Show GlobalSecondaryIndexStatus instance Generic GlobalSecondaryIndexStatus instance Show GlobalSecondaryIndexUpdate instance Generic GlobalSecondaryIndexUpdate instance Show TableDescription instance Generic TableDescription instance Show CreateTable instance Generic CreateTable instance Show CreateTableResult instance FromJSON CreateTableResult instance Show DescribeTable instance Generic DescribeTable instance Show DescribeTableResult instance FromJSON DescribeTableResult instance Show UpdateTable instance Generic UpdateTable instance Show UpdateTableResult instance FromJSON UpdateTableResult instance Show DeleteTable instance Generic DeleteTable instance Show DeleteTableResult instance FromJSON DeleteTableResult instance Show ListTables instance Show ListTablesResult instance Generic ListTablesResult instance Datatype D1KeyAttributeType instance Constructor C1_0KeyAttributeType instance Constructor C1_1KeyAttributeType instance Constructor C1_2KeyAttributeType instance Datatype D1KeyAttributeDefinition instance Constructor C1_0KeyAttributeDefinition instance Selector S1_0_0KeyAttributeDefinition instance Selector S1_0_1KeyAttributeDefinition instance Datatype D1LocalSecondaryIndex instance Constructor C1_0LocalSecondaryIndex instance Selector S1_0_0LocalSecondaryIndex instance Selector S1_0_1LocalSecondaryIndex instance Selector S1_0_2LocalSecondaryIndex instance Datatype D1LocalSecondaryIndexStatus instance Constructor C1_0LocalSecondaryIndexStatus instance Selector S1_0_0LocalSecondaryIndexStatus instance Selector S1_0_1LocalSecondaryIndexStatus instance Selector S1_0_2LocalSecondaryIndexStatus instance Selector S1_0_3LocalSecondaryIndexStatus instance Selector S1_0_4LocalSecondaryIndexStatus instance Datatype D1ProvisionedThroughput instance Constructor C1_0ProvisionedThroughput instance Selector S1_0_0ProvisionedThroughput instance Selector S1_0_1ProvisionedThroughput instance Datatype D1ProvisionedThroughputStatus instance Constructor C1_0ProvisionedThroughputStatus instance Selector S1_0_0ProvisionedThroughputStatus instance Selector S1_0_1ProvisionedThroughputStatus instance Selector S1_0_2ProvisionedThroughputStatus instance Selector S1_0_3ProvisionedThroughputStatus instance Selector S1_0_4ProvisionedThroughputStatus instance Datatype D1GlobalSecondaryIndex instance Constructor C1_0GlobalSecondaryIndex instance Selector S1_0_0GlobalSecondaryIndex instance Selector S1_0_1GlobalSecondaryIndex instance Selector S1_0_2GlobalSecondaryIndex instance Selector S1_0_3GlobalSecondaryIndex instance Datatype D1GlobalSecondaryIndexStatus instance Constructor C1_0GlobalSecondaryIndexStatus instance Selector S1_0_0GlobalSecondaryIndexStatus instance Selector S1_0_1GlobalSecondaryIndexStatus instance Selector S1_0_2GlobalSecondaryIndexStatus instance Selector S1_0_3GlobalSecondaryIndexStatus instance Selector S1_0_4GlobalSecondaryIndexStatus instance Selector S1_0_5GlobalSecondaryIndexStatus instance Selector S1_0_6GlobalSecondaryIndexStatus instance Datatype D1GlobalSecondaryIndexUpdate instance Constructor C1_0GlobalSecondaryIndexUpdate instance Selector S1_0_0GlobalSecondaryIndexUpdate instance Selector S1_0_1GlobalSecondaryIndexUpdate instance Datatype D1TableDescription instance Constructor C1_0TableDescription instance Selector S1_0_0TableDescription instance Selector S1_0_1TableDescription instance Selector S1_0_2TableDescription instance Selector S1_0_3TableDescription instance Selector S1_0_4TableDescription instance Selector S1_0_5TableDescription instance Selector S1_0_6TableDescription instance Selector S1_0_7TableDescription instance Selector S1_0_8TableDescription instance Selector S1_0_9TableDescription instance Datatype D1CreateTable instance Constructor C1_0CreateTable instance Selector S1_0_0CreateTable instance Selector S1_0_1CreateTable instance Selector S1_0_2CreateTable instance Selector S1_0_3CreateTable instance Selector S1_0_4CreateTable instance Selector S1_0_5CreateTable instance Datatype D1DescribeTable instance Constructor C1_0DescribeTable instance Selector S1_0_0DescribeTable instance Datatype D1UpdateTable instance Constructor C1_0UpdateTable instance Selector S1_0_0UpdateTable instance Selector S1_0_1UpdateTable instance Selector S1_0_2UpdateTable instance Datatype D1DeleteTable instance Constructor C1_0DeleteTable instance Selector S1_0_0DeleteTable instance Datatype D1ListTablesResult instance Constructor C1_0ListTablesResult instance Selector S1_0_0ListTablesResult instance Transaction ListTables ListTablesResult instance AsMemoryResponse ListTablesResult instance ResponseConsumer r ListTablesResult instance FromJSON ListTablesResult instance SignQuery ListTables instance ToJSON ListTables instance Transaction DeleteTable DeleteTableResult instance AsMemoryResponse DeleteTableResult instance ResponseConsumer r DeleteTableResult instance SignQuery DeleteTable instance ToJSON DeleteTable instance Transaction UpdateTable UpdateTableResult instance AsMemoryResponse UpdateTableResult instance ResponseConsumer r UpdateTableResult instance SignQuery UpdateTable instance ToJSON UpdateTable instance Transaction DescribeTable DescribeTableResult instance AsMemoryResponse DescribeTableResult instance ResponseConsumer r DescribeTableResult instance SignQuery DescribeTable instance ToJSON DescribeTable instance Transaction CreateTable CreateTableResult instance AsMemoryResponse CreateTableResult instance ResponseConsumer r CreateTableResult instance SignQuery CreateTable instance ToJSON CreateTable instance FromJSON TableDescription instance ToJSON GlobalSecondaryIndexUpdate instance FromJSON GlobalSecondaryIndexStatus instance FromJSON GlobalSecondaryIndex instance ToJSON GlobalSecondaryIndex instance FromJSON ProvisionedThroughputStatus instance FromJSON ProvisionedThroughput instance ToJSON ProvisionedThroughput instance FromJSON LocalSecondaryIndexStatus instance FromJSON LocalSecondaryIndex instance ToJSON LocalSecondaryIndex instance FromJSON Projection instance ToJSON Projection instance FromJSON KeySchema instance ToJSON KeySchema instance FromJSON KeyAttributeDefinition instance ToJSON KeyAttributeDefinition instance FromJSON KeyAttributeType instance ToJSON KeyAttributeType module Aws.DynamoDb.Commands module Aws.Aws -- | The severity of a log message, in rising order. data LogLevel Debug :: LogLevel Info :: LogLevel Warning :: LogLevel Error :: LogLevel -- | The interface for any logging function. Takes log level and a log -- message, and can perform an arbitrary IO action. type Logger = LogLevel -> Text -> IO () -- | The default logger defaultLog minLevel, which prints log -- messages above level minLevel to stderr. defaultLog :: LogLevel -> Logger -- | The configuration for an AWS request. You can use multiple -- configurations in parallel, even over the same HTTP connection -- manager. data Configuration Configuration :: TimeInfo -> Credentials -> Logger -> Configuration -- | Whether to restrict the signature validity with a plain timestamp, or -- with explicit expiration (absolute or relative). timeInfo :: Configuration -> TimeInfo -- | AWS access credentials. credentials :: Configuration -> Credentials -- | The error / message logger. logger :: Configuration -> Logger -- | The default configuration, with credentials loaded from environment -- variable or configuration file (see loadCredentialsDefault). baseConfiguration :: MonadIO io => io Configuration -- | Debug configuration, which logs much more verbosely. dbgConfiguration :: MonadIO io => io Configuration -- | Run an AWS transaction, with HTTP manager and metadata wrapped in a -- Response. -- -- All errors are caught and wrapped in the Response value. -- -- Metadata is logged at level Info. -- -- Usage (with existing Manager): resp <- aws cfg -- serviceCfg manager request aws :: Transaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> ResourceT IO (Response (ResponseMetadata a) a) -- | Run an AWS transaction, with HTTP manager and metadata returned in an -- IORef. -- -- Errors are not caught, and need to be handled with exception handlers. -- -- Metadata is not logged. -- -- Usage (with existing Manager): ref <- newIORef mempty; -- resp <- awsRef cfg serviceCfg manager request awsRef :: Transaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> IORef (ResponseMetadata a) -> r -> ResourceT IO a -- | Run an AWS transaction, with HTTP manager and without metadata. -- -- Metadata is logged at level Info. -- -- Usage (with existing Manager): resp <- aws cfg -- serviceCfg manager request pureAws :: Transaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> ResourceT IO a -- | Run an AWS transaction, without HTTP manager and without -- metadata. -- -- Metadata is logged at level Info. -- -- Note that this is potentially less efficient than using aws, -- because HTTP connections cannot be re-used. -- -- Usage: resp <- simpleAws cfg serviceCfg request simpleAws :: (Transaction r a, AsMemoryResponse a, MonadIO io) => Configuration -> ServiceConfiguration r NormalQuery -> r -> io (MemoryResponse a) -- | Run an AWS transaction, without enforcing that response and request -- type form a valid transaction pair. -- -- This is especially useful for debugging and development, you should -- not have to use it in production. -- -- All errors are caught and wrapped in the Response value. -- -- Metadata is wrapped in the Response, and also logged at level -- Info. unsafeAws :: (ResponseConsumer r a, Monoid (ResponseMetadata a), Loggable (ResponseMetadata a), SignQuery r) => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> ResourceT IO (Response (ResponseMetadata a) a) -- | Run an AWS transaction, without enforcing that response and request -- type form a valid transaction pair. -- -- This is especially useful for debugging and development, you should -- not have to use it in production. -- -- Errors are not caught, and need to be handled with exception handlers. -- -- Metadata is put in the IORef, but not logged. unsafeAwsRef :: (ResponseConsumer r a, Monoid (ResponseMetadata a), SignQuery r) => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> IORef (ResponseMetadata a) -> r -> ResourceT IO a -- | Run a URI-only AWS transaction. Returns a URI that can be sent -- anywhere. Does not work with all requests. -- -- Usage: uri <- awsUri cfg request awsUri :: (SignQuery request, MonadIO io) => Configuration -> ServiceConfiguration request UriOnlyQuery -> request -> io ByteString awsIteratedSource :: IteratedTransaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> Producer (ResourceT IO) (Response (ResponseMetadata a) a) awsIteratedList :: (IteratedTransaction r a, ListResponse a i) => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> Producer (ResourceT IO) i instance Show LogLevel instance Eq LogLevel instance Ord LogLevel module Aws -- | The severity of a log message, in rising order. data LogLevel Debug :: LogLevel Info :: LogLevel Warning :: LogLevel Error :: LogLevel -- | The interface for any logging function. Takes log level and a log -- message, and can perform an arbitrary IO action. type Logger = LogLevel -> Text -> IO () -- | The default logger defaultLog minLevel, which prints log -- messages above level minLevel to stderr. defaultLog :: LogLevel -> Logger -- | The configuration for an AWS request. You can use multiple -- configurations in parallel, even over the same HTTP connection -- manager. data Configuration Configuration :: TimeInfo -> Credentials -> Logger -> Configuration -- | Whether to restrict the signature validity with a plain timestamp, or -- with explicit expiration (absolute or relative). timeInfo :: Configuration -> TimeInfo -- | AWS access credentials. credentials :: Configuration -> Credentials -- | The error / message logger. logger :: Configuration -> Logger -- | The default configuration, with credentials loaded from environment -- variable or configuration file (see loadCredentialsDefault). baseConfiguration :: MonadIO io => io Configuration -- | Debug configuration, which logs much more verbosely. dbgConfiguration :: MonadIO io => io Configuration -- | Run an AWS transaction, with HTTP manager and metadata wrapped in a -- Response. -- -- All errors are caught and wrapped in the Response value. -- -- Metadata is logged at level Info. -- -- Usage (with existing Manager): resp <- aws cfg -- serviceCfg manager request aws :: Transaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> ResourceT IO (Response (ResponseMetadata a) a) -- | Run an AWS transaction, with HTTP manager and metadata returned in an -- IORef. -- -- Errors are not caught, and need to be handled with exception handlers. -- -- Metadata is not logged. -- -- Usage (with existing Manager): ref <- newIORef mempty; -- resp <- awsRef cfg serviceCfg manager request awsRef :: Transaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> IORef (ResponseMetadata a) -> r -> ResourceT IO a -- | Run an AWS transaction, with HTTP manager and without metadata. -- -- Metadata is logged at level Info. -- -- Usage (with existing Manager): resp <- aws cfg -- serviceCfg manager request pureAws :: Transaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> ResourceT IO a -- | Run an AWS transaction, without HTTP manager and without -- metadata. -- -- Metadata is logged at level Info. -- -- Note that this is potentially less efficient than using aws, -- because HTTP connections cannot be re-used. -- -- Usage: resp <- simpleAws cfg serviceCfg request simpleAws :: (Transaction r a, AsMemoryResponse a, MonadIO io) => Configuration -> ServiceConfiguration r NormalQuery -> r -> io (MemoryResponse a) -- | Run an AWS transaction, without enforcing that response and request -- type form a valid transaction pair. -- -- This is especially useful for debugging and development, you should -- not have to use it in production. -- -- All errors are caught and wrapped in the Response value. -- -- Metadata is wrapped in the Response, and also logged at level -- Info. unsafeAws :: (ResponseConsumer r a, Monoid (ResponseMetadata a), Loggable (ResponseMetadata a), SignQuery r) => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> ResourceT IO (Response (ResponseMetadata a) a) -- | Run an AWS transaction, without enforcing that response and request -- type form a valid transaction pair. -- -- This is especially useful for debugging and development, you should -- not have to use it in production. -- -- Errors are not caught, and need to be handled with exception handlers. -- -- Metadata is put in the IORef, but not logged. unsafeAwsRef :: (ResponseConsumer r a, Monoid (ResponseMetadata a), SignQuery r) => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> IORef (ResponseMetadata a) -> r -> ResourceT IO a -- | Run a URI-only AWS transaction. Returns a URI that can be sent -- anywhere. Does not work with all requests. -- -- Usage: uri <- awsUri cfg request awsUri :: (SignQuery request, MonadIO io) => Configuration -> ServiceConfiguration request UriOnlyQuery -> request -> io ByteString awsIteratedSource :: IteratedTransaction r a => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> Producer (ResourceT IO) (Response (ResponseMetadata a) a) awsIteratedList :: (IteratedTransaction r a, ListResponse a i) => Configuration -> ServiceConfiguration r NormalQuery -> Manager -> r -> Producer (ResourceT IO) i -- | A full HTTP response parser. Takes HTTP status, response headers, and -- response body. type HTTPResponseConsumer a = Response (ResumableSource (ResourceT IO) ByteString) -> ResourceT IO a -- | A response with metadata. Can also contain an error response, or an -- internal error, via Attempt. -- -- Response forms a Writer-like monad. data Response m a Response :: m -> Either SomeException a -> Response m a responseMetadata :: Response m a -> m responseResult :: Response m a -> Either SomeException a -- | Read a response result (if it's a success response, fail otherwise). readResponse :: MonadThrow n => Response m a -> n a -- | Read a response result (if it's a success response, fail otherwise). -- In MonadIO. readResponseIO :: MonadIO io => Response m a -> io a -- | Class for responses that are fully loaded into memory class AsMemoryResponse resp where type family MemoryResponse resp :: * loadToMemory :: AsMemoryResponse resp => resp -> ResourceT IO (MemoryResponse resp) -- | An error that occurred during XML parsing / validation. newtype XmlException XmlException :: String -> XmlException xmlErrorMessage :: XmlException -> String -- | An error that occurred during header parsing / validation. newtype HeaderException HeaderException :: String -> HeaderException headerErrorMessage :: HeaderException -> String -- | An error that occurred during form parsing / validation. newtype FormException FormException :: String -> FormException formErrorMesage :: FormException -> String -- | Default configuration for a specific service. class DefaultServiceConfiguration config where debugServiceConfig = defServiceConfig defServiceConfig :: DefaultServiceConfiguration config => config debugServiceConfig :: DefaultServiceConfiguration config => config -- | Tag type for normal queries. data NormalQuery -- | Tag type for URI-only queries. data UriOnlyQuery -- | Whether to restrict the signature validity with a plain timestamp, or -- with explicit expiration (absolute or relative). data TimeInfo -- | Use a simple timestamp to let AWS check the request validity. Timestamp :: TimeInfo -- | Let requests expire at a specific fixed time. ExpiresAt :: UTCTime -> TimeInfo fromExpiresAt :: TimeInfo -> UTCTime -- | Let requests expire a specific number of seconds after they were -- generated. ExpiresIn :: NominalDiffTime -> TimeInfo fromExpiresIn :: TimeInfo -> NominalDiffTime -- | Associates a request type and a response type in a bi-directional way. -- -- This allows the type-checker to infer the response type when given the -- request type and vice versa. -- -- Note that the actual request generation and response parsing resides -- in SignQuery and ResponseConsumer respectively. class (SignQuery r, ResponseConsumer r a, Loggable (ResponseMetadata a)) => Transaction r a | r -> a, a -> r -- | A transaction that may need to be split over multiple requests, for -- example because of upstream response size limits. class Transaction r a => IteratedTransaction r a | r -> a, a -> r -- | AWS access credentials. data Credentials Credentials :: ByteString -> ByteString -> IORef [V4Key] -> Credentials -- | AWS Access Key ID. accessKeyID :: Credentials -> ByteString -- | AWS Secret Access Key. secretAccessKey :: Credentials -> ByteString -- | Signing keys for signature version 4 v4SigningKeys :: Credentials -> IORef [V4Key] -- | The file where access credentials are loaded, when using -- loadCredentialsDefault. -- -- Value: <user directory>/.aws-keys credentialsDefaultFile :: MonadIO io => io FilePath -- | The key to be used in the access credential file that is loaded, when -- using loadCredentialsDefault. -- -- Value: default credentialsDefaultKey :: Text -- | Load credentials from a (text) file given a key name. -- -- The file consists of a sequence of lines, each in the following -- format: -- --
-- keyName awsKeyID awsKeySecret --loadCredentialsFromFile :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) -- | Load credentials from the environment variables -- AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET (or -- AWS_SECRET_ACCESS_KEY), if possible. loadCredentialsFromEnv :: MonadIO io => io (Maybe Credentials) -- | Load credentials from environment variables if possible, or -- alternatively from a file with a given key name. -- -- See loadCredentialsFromEnv and loadCredentialsFromFile -- for details. loadCredentialsFromEnvOrFile :: MonadIO io => FilePath -> Text -> io (Maybe Credentials) -- | Load credentials from environment variables if possible, or -- alternative from the default file with the default key name. -- -- Default file: <user directory>/.aws-keys Default -- key name: default -- -- See loadCredentialsFromEnv and loadCredentialsFromFile -- for details. loadCredentialsDefault :: MonadIO io => io (Maybe Credentials)