-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Haskell bindings for AWS Lambda
--
-- Haskell bindings for AWS Lambda
@package aws-lambda
@version 0.1.0.1
module Aws.Lambda.Internal.Constraints
-- | The dependent sum of a constraint family.
data Σ (γ :: * -> Constraint)
Pack :: α -> Σ γ
-- | The recursion principle for the constraint family sum.
spread :: Σ γ -> (forall α. γ α => α -> β) -> β
-- | The pointwise product of two constraint families. This sadly requires
-- -XUndecidableInstances.
class (γ α, δ α) => (⊗) γ δ α
instance (γ α, δ α) => (⊗) γ δ α
module Aws.Lambda.Types
data PaginationToken
data LambdaUuid
data ConfigurationId
ptText :: Getter PaginationToken Text
cidText :: Getter ConfigurationId Text
luText :: Getter LambdaUuid Text
data EventSourceConfiguration
EventSourceConfiguration :: !(Maybe Int) -> !(Maybe Arn) -> !(Maybe Text) -> !(Maybe Bool) -> !(Maybe LambdaDateTime) -> !(Maybe EventSourceParameters) -> !(Maybe Arn) -> !(Maybe EventSourceStatus) -> !(Maybe LambdaUuid) -> EventSourceConfiguration
_escBatchSize :: EventSourceConfiguration -> !(Maybe Int)
_escEventSource :: EventSourceConfiguration -> !(Maybe Arn)
_escFunctionName :: EventSourceConfiguration -> !(Maybe Text)
_escIsActive :: EventSourceConfiguration -> !(Maybe Bool)
_escLastModified :: EventSourceConfiguration -> !(Maybe LambdaDateTime)
_escParameters :: EventSourceConfiguration -> !(Maybe EventSourceParameters)
_escRole :: EventSourceConfiguration -> !(Maybe Arn)
_escStatus :: EventSourceConfiguration -> !(Maybe EventSourceStatus)
_escUuid :: EventSourceConfiguration -> !(Maybe LambdaUuid)
data EventSourceParameters
EventSourceParameters :: !(Maybe StreamPosition) -> EventSourceParameters
_espInitialPositionInStream :: EventSourceParameters -> !(Maybe StreamPosition)
data EventSourceStatus
escBatchSize :: Lens' EventSourceConfiguration (Maybe Int)
escEventSource :: Lens' EventSourceConfiguration (Maybe Arn)
escFunctionName :: Lens' EventSourceConfiguration (Maybe Text)
escIsActive :: Lens' EventSourceConfiguration (Maybe Bool)
escLastModified :: Lens' EventSourceConfiguration (Maybe LambdaDateTime)
escParameters :: Lens' EventSourceConfiguration (Maybe EventSourceParameters)
escRole :: Lens' EventSourceConfiguration (Maybe Arn)
escStatus :: Lens' EventSourceConfiguration (Maybe EventSourceStatus)
escUuid :: Lens' EventSourceConfiguration (Maybe LambdaUuid)
espInitialPositionInStream :: Iso' EventSourceParameters (Maybe StreamPosition)
_EventSourceStatusPending :: Prism' EventSourceStatus ()
_EventSourceStatusOk :: Prism' EventSourceStatus ()
_EventSourceStatusProblem :: Prism' EventSourceStatus Text
_TextEventSourceStatus :: Prism' Text EventSourceStatus
data FunctionConfiguration
FunctionConfiguration :: !(Maybe Integer) -> !(Maybe ConfigurationId) -> !(Maybe Text) -> !(Maybe Arn) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe LambdaDateTime) -> !(Maybe Int) -> !(Maybe FunctionMode) -> !(Maybe Arn) -> !(Maybe FunctionRuntime) -> !(Maybe Int) -> FunctionConfiguration
_fcCodeSize :: FunctionConfiguration -> !(Maybe Integer)
_fcConfigurationId :: FunctionConfiguration -> !(Maybe ConfigurationId)
_fcDescription :: FunctionConfiguration -> !(Maybe Text)
_fcFunctionArn :: FunctionConfiguration -> !(Maybe Arn)
_fcFunctionName :: FunctionConfiguration -> !(Maybe Text)
_fcHandler :: FunctionConfiguration -> !(Maybe Text)
_fcLastModified :: FunctionConfiguration -> !(Maybe LambdaDateTime)
_fcMemorySize :: FunctionConfiguration -> !(Maybe Int)
_fcMode :: FunctionConfiguration -> !(Maybe FunctionMode)
_fcRole :: FunctionConfiguration -> !(Maybe Arn)
_fcRuntime :: FunctionConfiguration -> !(Maybe FunctionRuntime)
_fcTimeout :: FunctionConfiguration -> !(Maybe Int)
-- | An empty FunctionConfiguration object.
emptyFunctionConfiguration :: FunctionConfiguration
data FunctionMode
FunctionModeEvent :: FunctionMode
data FunctionRuntime
FunctionRuntimeNodeJs :: FunctionRuntime
functionModeToText :: FunctionMode -> Text
functionRuntimeToText :: FunctionRuntime -> Text
fcCodeSize :: Lens' FunctionConfiguration (Maybe Integer)
fcConfigurationId :: Lens' FunctionConfiguration (Maybe ConfigurationId)
fcDescription :: Lens' FunctionConfiguration (Maybe Text)
fcFunctionArn :: Lens' FunctionConfiguration (Maybe Arn)
fcFunctionName :: Lens' FunctionConfiguration (Maybe Text)
fcHandler :: Lens' FunctionConfiguration (Maybe Text)
fcLastModified :: Lens' FunctionConfiguration (Maybe LambdaDateTime)
fcMemorySize :: Lens' FunctionConfiguration (Maybe Int)
fcMode :: Lens' FunctionConfiguration (Maybe FunctionMode)
fcRole :: Lens' FunctionConfiguration (Maybe Arn)
fcRuntime :: Lens' FunctionConfiguration (Maybe FunctionRuntime)
fcTimeout :: Lens' FunctionConfiguration (Maybe Int)
_FunctionModeEvent :: Iso' FunctionMode ()
_FunctionRuntimeNodeJs :: Iso' FunctionRuntime ()
_TextFunctionMode :: Prism' Text FunctionMode
_TextFunctionRuntime :: Prism' Text FunctionRuntime
data StreamPosition
StreamPositionTrimHorizon :: StreamPosition
StreamPositionLatest :: StreamPosition
_StreamPositionTrimHorizon :: Prism' StreamPosition ()
_StreamPositionLatest :: Prism' StreamPosition ()
data FunctionCodeLocation
FunctionCodeLocation :: !(Maybe Text) -> !(Maybe Text) -> FunctionCodeLocation
-- | The presigned URL you can use to download the function's .zip
-- file that you previously uploaded. The URL is valid for up to 10
-- minutes.
_fclLocation :: FunctionCodeLocation -> !(Maybe Text)
-- | The repository from which you can download the function.
_fclRepositoryType :: FunctionCodeLocation -> !(Maybe Text)
fclLocation :: Lens' FunctionCodeLocation (Maybe Text)
fclRepositoryType :: Lens' FunctionCodeLocation (Maybe Text)
type Arn = Text
arnToText :: Arn -> Text
newtype LambdaDateTime
LambdaDateTime :: UTCTime -> LambdaDateTime
_ldtUTCTime :: LambdaDateTime -> UTCTime
_LambdaDateTime :: Iso' LambdaDateTime UTCTime
_TextLambdaDateTime :: Prism' Text LambdaDateTime
instance FromJSON FunctionCodeLocation
instance Eq FunctionCodeLocation
instance Show FunctionCodeLocation
instance FromJSON FunctionConfiguration
instance Eq FunctionConfiguration
instance Show FunctionConfiguration
instance FromJSON FunctionRuntime
instance Eq FunctionRuntime
instance Show FunctionRuntime
instance FromJSON FunctionMode
instance Eq ConfigurationId
instance Show ConfigurationId
instance ToJSON ConfigurationId
instance Eq FunctionMode
instance Show FunctionMode
instance FromJSON ConfigurationId
instance FromJSON EventSourceConfiguration
instance Eq EventSourceConfiguration
instance Show EventSourceConfiguration
instance ToJSON EventSourceParameters
instance FromJSON EventSourceParameters
instance Eq EventSourceParameters
instance Show EventSourceParameters
instance FromJSON LambdaDateTime
instance ToJSON LambdaDateTime
instance Eq LambdaDateTime
instance Ord LambdaDateTime
instance Show LambdaDateTime
instance ParseTime LambdaDateTime
instance FormatTime LambdaDateTime
instance ToJSON StreamPosition
instance FromJSON StreamPosition
instance Eq StreamPosition
instance Show StreamPosition
instance FromJSON EventSourceStatus
instance Eq PaginationToken
instance Show PaginationToken
instance Eq LambdaUuid
instance Show LambdaUuid
instance ToJSON LambdaUuid
instance Eq EventSourceStatus
instance Show EventSourceStatus
instance FromJSON LambdaUuid
instance ToJSON PaginationToken
instance FromJSON PaginationToken
module Aws.Lambda.Core
data LambdaConfiguration
LambdaConfiguration :: !Region -> !ByteString -> !ByteString -> LambdaConfiguration
_lcRegion :: LambdaConfiguration -> !Region
_lcAccessKeyId :: LambdaConfiguration -> !ByteString
_lcSecretAccessKey :: LambdaConfiguration -> !ByteString
lcRegion :: Lens' LambdaConfiguration Region
lcAccessKeyId :: Lens' LambdaConfiguration ByteString
lcSecretAccessKey :: Lens' LambdaConfiguration ByteString
data LambdaQuery body
LambdaQuery :: !body -> !(Map Text Text) -> ![Text] -> !StdMethod -> LambdaQuery body
_lqBody :: LambdaQuery body -> !body
_lqParams :: LambdaQuery body -> !(Map Text Text)
_lqPath :: LambdaQuery body -> ![Text]
_lqMethod :: LambdaQuery body -> !StdMethod
-- | A convenience constructor for a basic query.
lambdaQuery :: Monoid body => StdMethod -> [Text] -> LambdaQuery body
-- | A variant of lambdaQuery that requires a body.
lambdaQuery' :: StdMethod -> [Text] -> body -> LambdaQuery body
lqMethod :: Lens' (LambdaQuery body_aruL) StdMethod
lqPath :: Lens' (LambdaQuery body_aruL) [Text]
lqParams :: Lens' (LambdaQuery body_aruL) (Map Text Text)
lqBody :: Lens (LambdaQuery body_aruL) (LambdaQuery body_asMD) body_aruL body_asMD
-- | A class for associating a request type with a response type.
class (LambdaPayload body, FromJSON resp) => LambdaTransaction req body resp | req -> resp body, resp -> req where runLambda cfg req = do { let query = buildQuery req opts = lambdaOptions cfg defaults & params <>~ query ^. lqParams ∘ to toList body = query ^. lqBody ∘ to packagePayload; url <- lambdaEndpointUrl (cfg ^. lcRegion) (query ^. lqPath); spread body $ \ payload -> do { resp <- case query ^. lqMethod of { GET -> liftThrow $ getWith opts url POST -> liftThrow $ postWith opts url payload PUT -> liftThrow $ putWith opts url payload DELETE -> liftThrow $ deleteWith opts url meth -> throwM $ InvalidHttpMethodException meth }; resp ^! act asJSON' ∘ responseBody } }
buildQuery :: LambdaTransaction req body resp => req -> LambdaQuery body
runLambda :: (LambdaTransaction req body resp, MonadThrow m, MonadCatch m, MonadIO m) => LambdaConfiguration -> req -> m resp
class LambdaPayload body
packagePayload :: LambdaPayload body => body -> Σ (Postable ⊗ Putable)
class (LambdaTransaction req body resp, Monoid acc) => PagedLambdaTransaction req body resp cur acc | req -> resp cur acc where pagedRunLambda cfg req = do { resp <- runLambda cfg req; case resp ^. responseCursor of { Just cur -> mappend (resp ^. responseAccum) <$> pagedRunLambda cfg (req & requestCursor ?~ cur) Nothing -> return $ resp ^. responseAccum } }
requestCursor :: PagedLambdaTransaction req body resp cur acc => Setter' req (Maybe cur)
responseCursor :: PagedLambdaTransaction req body resp cur acc => Getter resp (Maybe cur)
responseAccum :: PagedLambdaTransaction req body resp cur acc => Getter resp acc
pagedRunLambda :: (PagedLambdaTransaction req body resp cur acc, MonadThrow m, MonadCatch m, MonadIO m, Functor m) => LambdaConfiguration -> req -> m acc
data InvalidHttpMethodException
_InvalidHttpMethodException :: Iso' InvalidHttpMethodException StdMethod
data InvalidRegionException
_InvalidRegionException :: Iso' InvalidRegionException Region
instance Typeable InvalidHttpMethodException
instance Eq InvalidHttpMethodException
instance Show InvalidHttpMethodException
instance Exception InvalidHttpMethodException
instance Typeable InvalidRegionException
instance Eq InvalidRegionException
instance Show InvalidRegionException
instance Exception InvalidRegionException
instance Eq body => Eq (LambdaQuery body)
instance Show body => Show (LambdaQuery body)
instance LambdaPayload Value
instance LambdaPayload ByteString
instance LambdaPayload ()
instance Eq LambdaConfiguration
instance Show LambdaConfiguration
module Aws.Lambda.Commands.AddEventSource
-- | Identifies a stream as an event source for an AWS Lambda function. It
-- can be either an Amazon Kinesis stream or a Amazon DynamoDB stream.
-- AWS Lambda invokes the specified function when records are posted to
-- the stream. This is the pull model, where AWS Lambda invokes the
-- function.
--
-- This association between an Amazon Kinesis stream and an AWS Lambda
-- function is called the event source mapping. You provide the
-- configuration information (for example, which stream to read from and
-- which AWS Lambda function to invoke) for the event source mapping in
-- the request body.
--
-- Each event source, such as a Kinesis stream, can only be associated
-- with one AWS Lambda function. If you call AddEventSource for an
-- event source that is already mapped to another AWS Lambda function,
-- the existing mapping is updated to call the new function instead of
-- the old one.
--
-- This operation requires permission for the iam:PassRole
-- action for the IAM role. It also requires permission for the
-- lambda:AddEventSource action.
data AddEventSource
AddEventSource :: !(Maybe Integer) -> !Arn -> !Text -> !(Maybe EventSourceParameters) -> !Text -> AddEventSource
-- | The largest number of records that AWS Lambda will give to your
-- function in a single event. The default is 100 records.
_aesBatchSize :: AddEventSource -> !(Maybe Integer)
-- | The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is
-- the event source. Any record added to this stream causes AWS Lambda to
-- invoke your Lambda function. AWS Lambda POSTs the Amazon Kinesis
-- event, containing records, to your Lambda function as JSON.
_aesEventSource :: AddEventSource -> !Arn
-- | The Lambda function to invoke when AWS Lambda detects an event on the
-- stream.
_aesFunctionName :: AddEventSource -> !Text
_aesParameters :: AddEventSource -> !(Maybe EventSourceParameters)
-- | The ARN of the IAM role (invocation role) that AWS Lambda can assume
-- to read from the stream and invoke the function.
_aesRole :: AddEventSource -> !Text
-- | A minimal AddEventSource request.
addEventSource :: Arn -> Text -> Arn -> AddEventSource
aesBatchSize :: Lens' AddEventSource (Maybe Integer)
aesEventSource :: Lens' AddEventSource Arn
aesFunctionName :: Lens' AddEventSource Text
aesParameters :: Lens' AddEventSource (Maybe EventSourceParameters)
aesRole :: Lens' AddEventSource Text
newtype AddEventSourceResponse
AddEventSourceResponse :: EventSourceConfiguration -> AddEventSourceResponse
_aesrConfiguration :: AddEventSourceResponse -> EventSourceConfiguration
aesrConfiguration :: Iso' AddEventSourceResponse EventSourceConfiguration
instance LambdaTransaction AddEventSource AddEventSource AddEventSourceResponse
instance Eq AddEventSourceResponse
instance Show AddEventSourceResponse
instance FromJSON AddEventSourceResponse
instance Eq AddEventSource
instance Show AddEventSource
instance LambdaPayload AddEventSource
instance ToJSON AddEventSource
module Aws.Lambda.Commands.DeleteFunction
-- | Deletes the specified Lambda function code and configuration. This
-- operation requires permission for the lambda:DeleteFunction
-- action.
data DeleteFunction
DeleteFunction :: !Text -> DeleteFunction
_dfFunctionName :: DeleteFunction -> !Text
-- | A minimal DeleteFunction request.
deleteFunction :: Text -> DeleteFunction
dfFunctionName :: Iso' DeleteFunction Text
data DeleteFunctionResponse
DeleteFunctionResponse :: DeleteFunctionResponse
instance Eq DeleteFunctionResponse
instance Show DeleteFunctionResponse
instance LambdaTransaction DeleteFunction () DeleteFunctionResponse
instance FromJSON DeleteFunctionResponse
instance Eq DeleteFunction
instance Show DeleteFunction
module Aws.Lambda.Commands.GetEventSource
-- | Returns configuration information for the specified event source
-- mapping. This operation requires permission for the
-- lambda:GetEventSource action.
data GetEventSource
GetEventSource :: !LambdaUuid -> GetEventSource
-- | The AWS Lambda assigned ID of the event source mapping.
_gesUuid :: GetEventSource -> !LambdaUuid
-- | A minimal GetEventSource request.
getEventSource :: LambdaUuid -> GetEventSource
gesUuid :: Iso' GetEventSource LambdaUuid
newtype GetEventSourceResponse
GetEventSourceResponse :: EventSourceConfiguration -> GetEventSourceResponse
_gesrConfiguration :: GetEventSourceResponse -> EventSourceConfiguration
gesrConfiguration :: Iso' GetEventSourceResponse EventSourceConfiguration
instance LambdaTransaction GetEventSource () GetEventSourceResponse
instance Eq GetEventSourceResponse
instance Show GetEventSourceResponse
instance FromJSON GetEventSourceResponse
instance Eq GetEventSource
instance Show GetEventSource
module Aws.Lambda.Commands.GetFunction
-- | Returns the configuration information of the Lambda function and a
-- presigned URL link to the .zip file you uploaded with
-- UploadFunction so you can download the .zip file.
-- Note that the URL is valid for up to 10 minutes. The configuration
-- information is the same information you provided as parameters when
-- uploading the function.
--
-- This operation requires permission for the lambda:GetFunction
-- action.
data GetFunction
GetFunction :: !Text -> GetFunction
_gfFunctionName :: GetFunction -> !Text
-- | A minimal GetFunction request.
getFunction :: Text -> GetFunction
gfFunctionName :: Iso' GetFunction Text
data GetFunctionResponse
GetFunctionResponse :: !FunctionCodeLocation -> !FunctionConfiguration -> GetFunctionResponse
_gfrCode :: GetFunctionResponse -> !FunctionCodeLocation
_gfrConfiguration :: GetFunctionResponse -> !FunctionConfiguration
gfrCode :: Lens' GetFunctionResponse FunctionCodeLocation
gfrConfiguration :: Lens' GetFunctionResponse FunctionConfiguration
instance LambdaTransaction GetFunction () GetFunctionResponse
instance FromJSON GetFunctionResponse
instance Eq GetFunctionResponse
instance Show GetFunctionResponse
instance Eq GetFunction
instance Show GetFunction
module Aws.Lambda.Commands.GetFunctionConfiguration
-- | Returns the configuration information of the Lambda function. This the
-- same information you provided as parameters when uploading the
-- function by using UploadFunction.
--
-- This operation requires permission for the
-- lambda:GetFunctionConfiguration operation.
data GetFunctionConfiguration
GetFunctionConfiguration :: !Text -> GetFunctionConfiguration
_gfcFunctionName :: GetFunctionConfiguration -> !Text
getFunctionConfiguration :: Text -> GetFunctionConfiguration
gfcFunctionName :: Iso' GetFunctionConfiguration Text
instance Eq GetFunctionConfigurationResponse
instance Show GetFunctionConfigurationResponse
instance FromJSON GetFunctionConfigurationResponse
instance LambdaTransaction GetFunctionConfiguration () GetFunctionConfigurationResponse
instance Eq GetFunctionConfiguration
instance Show GetFunctionConfiguration
module Aws.Lambda.Commands.InvokeAsync
-- | Submits an invocation request to AWS Lambda. Upon receiving the
-- request, Lambda executes the specified function asynchronously. To see
-- the logs generated by the Lambda function execution, see the
-- CloudWatch logs console.
--
-- This operation requires permission for the lambda:InvokeAsync
-- action.
data InvokeAsync
InvokeAsync :: !Text -> !Value -> InvokeAsync
_iaFunctionName :: InvokeAsync -> !Text
_iaArguments :: InvokeAsync -> !Value
-- | A minimal InvokeAsync request.
invokeAsync :: Text -> InvokeAsync
iaFunctionName :: Lens' InvokeAsync Text
iaArguments :: Lens' InvokeAsync Value
data InvokeAsyncResponse
InvokeAsyncResponse :: InvokeAsyncResponse
instance LambdaTransaction InvokeAsync Value InvokeAsyncResponse
instance FromJSON InvokeAsyncResponse
instance Eq InvokeAsyncResponse
instance Show InvokeAsyncResponse
instance Eq InvokeAsync
instance Show InvokeAsync
module Aws.Lambda.Commands.ListEventSources
-- | Returns a list of event source mappings you created using the
-- AddEventSource action, where you identify a stream as event
-- source. This list does not include Amazon S3 event sources.
--
-- For each mapping, the API returns configuration information. You can
-- optionally specify filters to retrieve specific event source mappings.
--
-- This operation requires permission for the
-- lambda:ListEventSources action.
data ListEventSources
ListEventSources :: !Arn -> !Text -> !(Maybe PaginationToken) -> !(Maybe Int) -> ListEventSources
-- | The Amazon Resource Name (ARN) of the event source.
_lesEventSourceArn :: ListEventSources -> !Arn
-- | The name of the AWS Lambda function.
_lesFunctionName :: ListEventSources -> !Text
-- | Optional, returned from previous ListEventSources request; if
-- present, specifies to continue the list from where the returning call
-- left off.
_lesMarker :: ListEventSources -> !(Maybe PaginationToken)
-- | Optional, maximum number of event sources to return. Length
-- constraints: 1 ≤ n ≤ 1000.
_lesMaxItems :: ListEventSources -> !(Maybe Int)
-- | Create a minimal ListEventSources request.
listEventSources :: Arn -> Text -> ListEventSources
lesEventSourceArn :: Lens' ListEventSources Arn
lesFunctionName :: Lens' ListEventSources Text
lesMarker :: Lens' ListEventSources (Maybe PaginationToken)
lesMaxItems :: Lens' ListEventSources (Maybe Int)
data ListEventSourcesResponse
ListEventSourcesResponse :: ![EventSourceConfiguration] -> !(Maybe PaginationToken) -> ListEventSourcesResponse
-- | A list of EventSourceConfiguration objects.
_lesrEventSources :: ListEventSourcesResponse -> ![EventSourceConfiguration]
-- | Present if there are more event source mappings.
_lesrNextMarker :: ListEventSourcesResponse -> !(Maybe PaginationToken)
lesrEventSources :: Lens' ListEventSourcesResponse [EventSourceConfiguration]
lesrNextMarker :: Lens' ListEventSourcesResponse (Maybe PaginationToken)
instance PagedLambdaTransaction ListEventSources () ListEventSourcesResponse PaginationToken [EventSourceConfiguration]
instance LambdaTransaction ListEventSources () ListEventSourcesResponse
instance FromJSON ListEventSourcesResponse
instance Eq ListEventSourcesResponse
instance Show ListEventSourcesResponse
instance Eq ListEventSources
instance Show ListEventSources
module Aws.Lambda.Commands.ListFunctions
-- | Returns a list of your Lambda functions. For each function, the
-- response includes the function configuration information. You must use
-- GetFunction to retrieve the code for your function.
--
-- This operation requires permission for the
-- lambda:ListFunctions action.
data ListFunctions
ListFunctions :: !(Maybe PaginationToken) -> !(Maybe Int) -> ListFunctions
-- | An opaque pagination token returned from a previous
-- ListFunctions operation. If present, indicates where to
-- continue the listing.
_lfMarker :: ListFunctions -> !(Maybe PaginationToken)
-- | Specifies the maximum number of AWS Lambda functions to return in
-- response. This parameter value must be greater than 0 and
-- less than 10000.
_lfMaxItems :: ListFunctions -> !(Maybe Int)
-- | A minimal ListFunctions request.
listFunctions :: ListFunctions
lfMarker :: Lens' ListFunctions (Maybe PaginationToken)
lfMaxItems :: Lens' ListFunctions (Maybe Int)
data ListFunctionsResponse
lfrNextMarker :: Lens' ListFunctionsResponse (Maybe PaginationToken)
lfrFunctions :: Lens' ListFunctionsResponse [FunctionConfiguration]
instance PagedLambdaTransaction ListFunctions () ListFunctionsResponse PaginationToken [FunctionConfiguration]
instance LambdaTransaction ListFunctions () ListFunctionsResponse
instance FromJSON ListFunctionsResponse
instance Eq ListFunctionsResponse
instance Show ListFunctionsResponse
instance Eq ListFunctions
instance Show ListFunctions
module Aws.Lambda.Commands.RemoveEventSource
-- | Removes an event source mapping. This means AWS Lambda will no longer
-- invoke the function for events in the associated source.
--
-- This operation requires permission for the
-- lambda:RemoveEventSource action.
data RemoveEventSource
RemoveEventSource :: !LambdaUuid -> RemoveEventSource
-- | The event source mapping ID.
_resUuid :: RemoveEventSource -> !LambdaUuid
-- | A minimal RemoveEventSource request.
removeEventSource :: LambdaUuid -> RemoveEventSource
resUuid :: Iso' RemoveEventSource LambdaUuid
data RemoveEventSourceResponse
RemoveEventSourceResponse :: RemoveEventSourceResponse
instance Eq RemoveEventSourceResponse
instance Show RemoveEventSourceResponse
instance LambdaTransaction RemoveEventSource () RemoveEventSourceResponse
instance FromJSON RemoveEventSourceResponse
module Aws.Lambda.Commands.UpdateFunctionConfiguration
-- | Updates the configuration parameters for the specified Lambda function
-- by using the values provided in the request. You provide only the
-- parameters you want to change. This operation must only be used on an
-- existing Lambda function and cannot be used to update the function's
-- code.
--
-- This operation requires permission for the
-- lambda:UpdateFunctionConfiguration action.
--
-- The UpdateFunctionConfiguration type is abstract.
data UpdateFunctionConfiguration
-- | A minimal, validated UpdateFunctionConfiguration request. Not
-- providing _fcFunctionName will result in an exception.
updateFunctionConfiguration :: MonadThrow m => FunctionConfiguration -> m UpdateFunctionConfiguration
ufcConfiguration :: Getter UpdateFunctionConfiguration FunctionConfiguration
newtype UpdateFunctionConfigurationResponse
UpdateFunctionConfigurationResponse :: FunctionConfiguration -> UpdateFunctionConfigurationResponse
_ufcrFunctionConfiguration :: UpdateFunctionConfigurationResponse -> FunctionConfiguration
ufcrFunctionConfiguration :: Iso' UpdateFunctionConfigurationResponse FunctionConfiguration
data UpdateFunctionConfigurationException
MissingFunctionName :: !FunctionConfiguration -> UpdateFunctionConfigurationException
_MissingFunctionName :: Iso' UpdateFunctionConfigurationException FunctionConfiguration
instance LambdaTransaction UpdateFunctionConfiguration () UpdateFunctionConfigurationResponse
instance Eq UpdateFunctionConfigurationResponse
instance Show UpdateFunctionConfigurationResponse
instance FromJSON UpdateFunctionConfigurationResponse
instance Exception UpdateFunctionConfigurationException
instance Typeable UpdateFunctionConfigurationException
instance Eq UpdateFunctionConfiguration
instance Show UpdateFunctionConfiguration
instance Eq UpdateFunctionConfigurationException
instance Show UpdateFunctionConfigurationException
module Aws.Lambda.Commands.UploadFunction
-- | Creates a new Lambda function or updates an existing function. The
-- function metadata is created from the request parameters, and the code
-- for the function is provided by a .zip file in the request
-- body. If the function name already exists, the existing Lambda
-- function is updated with the new code and metadata.
--
-- This operation requires permission for the
-- lambda:UploadFunction action.
--
-- Note that these bindings take care of packaging up the function source
-- code as a .zip file automatically.
data UploadFunction
UploadFunction :: !Text -> !Text -> !Text -> !Int -> !FunctionMode -> !Arn -> !FunctionRuntime -> !Int -> !ByteString -> !UTCTime -> UploadFunction
-- | A short, user-defined function description. Lambda does not use this
-- value. Assign a meaningful description as you see fit.
_ufDescription :: UploadFunction -> !Text
-- | The name you want to assign to the function you are uploading.
_ufFunctionName :: UploadFunction -> !Text
-- | The function that Lambda calls to begin execution. For Node.js, it is
-- the module-name.export value in your function
_ufHandler :: UploadFunction -> !Text
-- | The amount of memory, in MB, your Lambda function is given. Lambda
-- uses this memory size to infer the amount of CPU allocated to your
-- function. Your function use-case determines your CPU and memory
-- requirements. For example, database operation might need less memory
-- compared to image processing function. The default value is 128 MB.
-- The value must be a multiple of 64 MB.
_ufMemorySize :: UploadFunction -> !Int
-- | How the Lambda function will be invoked.
_ufMode :: UploadFunction -> !FunctionMode
-- | The Amazon Resource Name (ARN) of the IAM role that Lambda assumes
-- when it executes your function to access any other Amazon Web Services
-- (AWS) resources.
_ufRole :: UploadFunction -> !Arn
-- | The runtime environment for the Lambda function you are uploading.
_ufRuntime :: UploadFunction -> !FunctionRuntime
-- | The function execution time at which Lambda should terminate the
-- function. Because the execution time has cost implications, we
-- recommend you set this value based on your expected execution time.
-- The default is 3 seconds.
_ufTimeout :: UploadFunction -> !Int
-- | The raw code of the function (which will be packaged into a ZIP
-- archive automatically).
_ufRawCode :: UploadFunction -> !ByteString
-- | The last-modified date to be assigned to the file in the ZIP archive.
_ufLastModified :: UploadFunction -> !UTCTime
ufDescription :: Lens' UploadFunction Text
ufFunctionName :: Lens' UploadFunction Text
ufHandler :: Lens' UploadFunction Text
ufMemorySize :: Lens' UploadFunction Int
ufMode :: Lens' UploadFunction FunctionMode
ufRole :: Lens' UploadFunction Arn
ufRuntime :: Lens' UploadFunction FunctionRuntime
ufTimeout :: Lens' UploadFunction Int
ufRawCode :: Lens' UploadFunction ByteString
ufLastModified :: Lens' UploadFunction UTCTime
instance Eq UploadFunctionResponse
instance Show UploadFunctionResponse
instance FromJSON UploadFunctionResponse
instance LambdaTransaction UploadFunction ByteString UploadFunctionResponse
instance Eq UploadFunction
instance Show UploadFunction
module Aws.Lambda