-
Notifications
You must be signed in to change notification settings - Fork 17
/
BetweenCondition.go
55 lines (52 loc) · 1.66 KB
/
BetweenCondition.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package awssns
// Between condition for a numeric attribute.
//
// Example:
// import lambda "github.com/aws/aws-cdk-go/awscdk"
// var fn function
//
//
// myTopic := sns.NewTopic(this, jsii.String("MyTopic"))
//
// // Lambda should receive only message matching the following conditions on attributes:
// // color: 'red' or 'orange' or begins with 'bl'
// // size: anything but 'small' or 'medium'
// // price: between 100 and 200 or greater than 300
// // store: attribute must be present
// myTopic.AddSubscription(subscriptions.NewLambdaSubscription(fn, &LambdaSubscriptionProps{
// FilterPolicy: map[string]subscriptionFilter{
// "color": sns.*subscriptionFilter_stringFilter(&StringConditions{
// "allowlist": []*string{
// jsii.String("red"),
// jsii.String("orange"),
// },
// "matchPrefixes": []*string{
// jsii.String("bl"),
// },
// "matchSuffixes": []*string{
// jsii.String("ue"),
// },
// }),
// "size": sns.*subscriptionFilter_stringFilter(&StringConditions{
// "denylist": []*string{
// jsii.String("small"),
// jsii.String("medium"),
// },
// }),
// "price": sns.*subscriptionFilter_numericFilter(&NumericConditions{
// "between": &BetweenCondition{
// "start": jsii.Number(100),
// "stop": jsii.Number(200),
// },
// "greaterThan": jsii.Number(300),
// }),
// "store": sns.*subscriptionFilter_existsFilter(),
// },
// }))
//
type BetweenCondition struct {
// The start value.
Start *float64 `field:"required" json:"start" yaml:"start"`
// The stop value.
Stop *float64 `field:"required" json:"stop" yaml:"stop"`
}