Skip to content
v2.275.0

NumericConditions Struct ​

Conditions that can be applied to numeric attributes.

Example ​

ts
import * as lambda from 'aws-cdk-lib/aws-lambda';

const myTopic = new sns.Topic(this, 'MyTopic');
declare const fn: lambda.Function;

// 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(new subscriptions.LambdaSubscription(fn, {
  filterPolicy: {
    color: sns.SubscriptionFilter.stringFilter({
      allowlist: ['red', 'orange'],
      matchPrefixes: ['bl'],
      matchSuffixes: ['ue'],
    }),
    size: sns.SubscriptionFilter.stringFilter({
      denylist: ['small', 'medium'],
    }),
    price: sns.SubscriptionFilter.numericFilter({
      between: { start: 100, stop: 200 },
      greaterThan: 300,
    }),
    store: sns.SubscriptionFilter.existsFilter(),
  },
}));

Properties ​

allowlistoptionalnumber[]allowlistoptionaltyping.List[int | float]allowlistoptionalList<Number>Allowlistoptionaldouble[]Allowlistoptional*[]*float64= None#
Match one or more values.
betweenoptionalBetweenConditionbetweenoptionalBetweenConditionbetweenoptionalBetweenConditionBetweenoptionalBetweenConditionBetweenoptionalBetweenCondition= None#
Match values that are between the specified values.
betweenStrictoptionalBetweenConditionbetween_strictoptionalBetweenConditionbetweenStrictoptionalBetweenConditionBetweenStrictoptionalBetweenConditionBetweenStrictoptionalBetweenCondition= None#
Match values that are strictly between the specified values.
greaterThanoptionalnumbergreater_thanoptionalint | floatgreaterThanoptionalNumberGreaterThanoptionaldoubleGreaterThanoptional*float64= None#
Match values that are greater than the specified value.
greaterThanOrEqualTooptionalnumbergreater_than_or_equal_tooptionalint | floatgreaterThanOrEqualTooptionalNumberGreaterThanOrEqualTooptionaldoubleGreaterThanOrEqualTooptional*float64= None#
Match values that are greater than or equal to the specified value.
lessThanoptionalnumberless_thanoptionalint | floatlessThanoptionalNumberLessThanoptionaldoubleLessThanoptional*float64= None#
Match values that are less than the specified value.
lessThanOrEqualTooptionalnumberless_than_or_equal_tooptionalint | floatlessThanOrEqualTooptionalNumberLessThanOrEqualTooptionaldoubleLessThanOrEqualTooptional*float64= None#
Match values that are less than or equal to the specified value.