我正在创建一个SQS队列,该队列订阅SNS主题并根据消息属性过滤消息。我在教程https://docs.aws.amazon.com/sns/latest/dg/message-filtering-apply.html中看到可以通过传入指定这些过滤器的JSON样式的字符串来做到这一点
String filterPolicyString = "{\"store\":[\"example_corp\"],\"event\":[\"order_placed\"]}";
SetSubscriptionAttributesRequest request = new SetSubscriptionAttributesRequest(subscriptionArn, "FilterPolicy", filterPolicyString);
但是我看不到有一个构建器可以让我以诸如
var filterPolicyObject = FilterPolicyBuilder.Build()
.MessageAttribute("store").In("example_corp")
.MessageAttribute("event").In("order_placed");
String filterPolicyString = JsonConvert.SerializeObject(filterPolicyObject);
SetSubscriptionAttributesRequest request = new SetSubscriptionAttributesRequest(subscriptionArn, "FilterPolicy", filterPolicyString);
有这样的事情吗?我应该像AWS那样只坚持写JSON字符串,还是应该创建自己的对象来定义它并在需要设置过滤器策略的地方重复使用?