Versions in this module Expand all Collapse all v1 v1.0.0 Jan 25, 2023 Changes in this version + const AMZTimeFormat + const AccessFormat + const NamespaceFormat + func IsEventError(err error) bool + func NewPattern(prefix, suffix string) (pattern string) + func ValidateFilterRuleValue(value string) error + type ARN struct + func (arn *ARN) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (arn ARN) MarshalXML(e *xml.Encoder, start xml.StartElement) error + func (arn ARN) String() string + type Bucket struct + ARN string + Name string + OwnerIdentity Identity + type Config struct + LambdaList []lambda + QueueList []Queue + TopicList []topic + XMLNS string + XMLName xml.Name + func ParseConfig(reader io.Reader, region string, targetList *TargetList) (*Config, error) + func (conf *Config) SetRegion(region string) + func (conf *Config) ToRulesMap() RulesMap + func (conf *Config) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (conf Config) Validate(region string, targetList *TargetList) error + type ErrARNNotFound struct + ARN ARN + func (err ErrARNNotFound) Error() string + type ErrDuplicateEventName struct + EventName Name + func (err ErrDuplicateEventName) Error() string + type ErrDuplicateQueueConfiguration struct + Queue Queue + func (err ErrDuplicateQueueConfiguration) Error() string + type ErrFilterNamePrefix struct + func (err ErrFilterNamePrefix) Error() string + type ErrFilterNameSuffix struct + func (err ErrFilterNameSuffix) Error() string + type ErrInvalidARN struct + ARN string + func (err ErrInvalidARN) Error() string + type ErrInvalidEventName struct + Name string + func (err ErrInvalidEventName) Error() string + type ErrInvalidFilterName struct + FilterName string + func (err ErrInvalidFilterName) Error() string + type ErrInvalidFilterValue struct + FilterValue string + func (err ErrInvalidFilterValue) Error() string + type ErrUnknownRegion struct + Region string + func (err ErrUnknownRegion) Error() string + type ErrUnsupportedConfiguration struct + func (err ErrUnsupportedConfiguration) Error() string + type Event struct + AwsRegion string + EventName Name + EventSource string + EventTime string + EventVersion string + RequestParameters map[string]string + ResponseElements map[string]string + S3 Metadata + Source Source + UserIdentity Identity + type FilterRule struct + Name string + Value string + func (filter *FilterRule) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + type FilterRuleList struct + Rules []FilterRule + func (ruleList *FilterRuleList) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (ruleList FilterRuleList) Pattern() string + type Identity struct + PrincipalID string + type Log struct + EventName Name + Key string + Records []Event + type Metadata struct + Bucket Bucket + ConfigurationID string + Object Object + SchemaVersion string + type Name int + const ObjectAccessedAll + const ObjectAccessedGet + const ObjectAccessedHead + const ObjectCreatedAll + const ObjectCreatedCompleteMultipartUpload + const ObjectCreatedCopy + const ObjectCreatedPost + const ObjectCreatedPut + const ObjectRemovedAll + const ObjectRemovedDelete + func ParseName(s string) (Name, error) + func (name *Name) UnmarshalJSON(data []byte) error + func (name *Name) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (name Name) Expand() []Name + func (name Name) MarshalJSON() ([]byte, error) + func (name Name) MarshalXML(e *xml.Encoder, start xml.StartElement) error + func (name Name) String() string + type Object struct + ContentType string + ETag string + Key string + Sequencer string + Size int64 + UserMetadata map[string]string + VersionID string + type Queue struct + ARN ARN + func (q *Queue) SetRegion(region string) + func (q *Queue) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error + func (q Queue) ToRulesMap() RulesMap + func (q Queue) Validate(region string, targetList *TargetList) error + type Rules map[string]TargetIDSet + func (rules Rules) Add(pattern string, targetID TargetID) + func (rules Rules) Clone() Rules + func (rules Rules) Difference(rules2 Rules) Rules + func (rules Rules) Match(objectName string) TargetIDSet + func (rules Rules) Union(rules2 Rules) Rules + type RulesMap map[Name]Rules + func NewRulesMap(eventNames []Name, pattern string, targetID TargetID) RulesMap + func (rulesMap RulesMap) Add(rulesMap2 RulesMap) + func (rulesMap RulesMap) Clone() RulesMap + func (rulesMap RulesMap) Match(eventName Name, objectName string) TargetIDSet + func (rulesMap RulesMap) Remove(rulesMap2 RulesMap) + type S3Key struct + RuleList FilterRuleList + type Source struct + Host string + Port string + UserAgent string + type Target interface + Close func() error + ID func() TargetID + Send func(Event) error + type TargetID struct + ID string + Name string + func (tid *TargetID) UnmarshalJSON(data []byte) error + func (tid TargetID) MarshalJSON() ([]byte, error) + func (tid TargetID) String() string + func (tid TargetID) ToARN(region string) ARN + type TargetIDErr struct + Err error + ID TargetID + type TargetIDSet map[TargetID]struct + func NewTargetIDSet(targetIDs ...TargetID) TargetIDSet + func (set TargetIDSet) Clone() TargetIDSet + func (set TargetIDSet) Difference(sset TargetIDSet) TargetIDSet + func (set TargetIDSet) String() string + func (set TargetIDSet) ToSlice() []TargetID + func (set TargetIDSet) Union(sset TargetIDSet) TargetIDSet + type TargetList struct + func NewTargetList() *TargetList + func (list *TargetList) Add(target Target) error + func (list *TargetList) Exists(id TargetID) bool + func (list *TargetList) List() []TargetID + func (list *TargetList) Remove(targetids ...TargetID) <-chan TargetIDErr + func (list *TargetList) Send(event Event, targetIDs ...TargetID) <-chan TargetIDErr Incompatible versions in this module v3.0.0+incompatible Nov 17, 2023 v2.0.0+incompatible May 16, 2023