Documentation
¶
Index ¶
- Constants
- type CloudFunction
- type CloudFunctionConfiguration
- type CloudFunctionInvoker
- type EventFunction
- type Filter
- type FilterRule
- type JsonTime
- type LambdaRecord
- type LambdaRequestParameters
- type LambdaResponseElements
- type LambdaUserIdentity
- type NotificationConfiguration
- type NotificationEvent
- type S3Bucket
- type S3BucketOwnerIdentity
- type S3Key
- type S3Object
- type S3Record
Constants ¶
View Source
const ( ObjectCreatedEvent = "s3:ObjectCreated" ObjectRemovedEvent = "s3:ObjectRemoved" )
View Source
const ( ObjectCreatedFilter = "s3:ObjectCreated:*" ObjectRemovedFilter = "s3:ObjectRemoved:*" PrefixFilter = "prefix" SuffixFilter = "suffix" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CloudFunction ¶
type CloudFunction string
func (CloudFunction) Invoke ¶
func (c CloudFunction) Invoke(invoker CloudFunctionInvoker) func(interface{})
type CloudFunctionConfiguration ¶
type CloudFunctionConfiguration struct {
Events []string `xml:"Event"`
Filter Filter
Id string
CloudFunction CloudFunction
}
func (CloudFunctionConfiguration) CreateObservable ¶
func (c CloudFunctionConfiguration) CreateObservable(source rxgo.Observable) rxgo.Observable
func (CloudFunctionConfiguration) FilterEvents ¶
func (c CloudFunctionConfiguration) FilterEvents(i interface{}) bool
type CloudFunctionInvoker ¶
type CloudFunctionInvoker interface {
Invoke(string) func(interface{})
}
type EventFunction ¶
type EventFunction func(string, interface{})
type FilterRule ¶
func (FilterRule) FilterKey ¶
func (f FilterRule) FilterKey(key string) bool
type LambdaRecord ¶
type LambdaRecord struct {
EventVersion string `json:"eventVersion"`
EventSource string `json:"eventSource"`
AwsRegion string `json:"awsRegion"`
EventTime JsonTime `json:"eventTime"`
EventName string `json:"eventName"`
UserIdentity LambdaUserIdentity `json:"userIdentity"`
RequestParameters LambdaRequestParameters `json:"requestParameters"`
ResponseElements LambdaResponseElements `json:"responseElements"`
S3 S3Record `json:"s3"`
}
type LambdaRequestParameters ¶
type LambdaRequestParameters struct {
SourceIPAddress string `json:"sourceIPAddress"`
}
type LambdaResponseElements ¶
type LambdaUserIdentity ¶
type LambdaUserIdentity struct {
PrincipalId string `json:"principalId"`
}
type NotificationConfiguration ¶
type NotificationConfiguration struct {
CloudFunctionConfigurations []CloudFunctionConfiguration `xml:"CloudFunctionConfiguration"`
}
func (NotificationConfiguration) Start ¶
func (n NotificationConfiguration) Start(invoker CloudFunctionInvoker) (chan rxgo.Item, context.Context)
type NotificationEvent ¶
type S3Bucket ¶
type S3Bucket struct {
Name string `json:"name"`
OwnerIdentity S3BucketOwnerIdentity `json:"ownerIdentity"`
Arn string `json:"arn"`
}
type S3BucketOwnerIdentity ¶
type S3BucketOwnerIdentity struct {
PrincipalId string `json:"principalId"`
}
type S3Key ¶
type S3Key struct {
FilterRules []FilterRule `xml:"FilterRule"`
}
Click to show internal directories.
Click to hide internal directories.