6.10. Spring Boot Auto-Configuration
当将 aws2-sns 与 Spring Boot 搭配使用时,请确保使用以下 Maven 依赖项支持自动配置:
<dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-aws2-sns-starter</artifactId> <version>{CamelSBProjectVersion}</version> <!-- Use your Camel Spring Boot version --> </dependency>
组件支持 25 个选项,如下所示。
Name | 描述 | 默认 | 类型 |
---|---|---|---|
camel.component.aws2-sns.access-key | Amazon AWS 访问密钥. | 字符串 | |
camel.component.aws2-sns.amazon-s-n-s-client | 使用 AmazonSNS 作为客户端。选项是软件.amazon.awssdk.services.sns.SnsClient 类型。 | SnsClient | |
camel.component.aws2-sns.auto-create-topic | 设置主题的自动创建。 | false | 布尔值 |
camel.component.aws2-sns.autowired-enabled | 是否启用自动。这用于自动自动自动选项(选项必须标记为 autowired),方法是在 registry 中查找是否有匹配的类型实例,然后在组件上进行配置。这可用于自动配置 JDBC 数据源、JMS 连接工厂、AWS 客户端等。 | true | 布尔值 |
camel.component.aws2-sns.configuration | 组件配置。选项是 org.apache.camel.component.aws2.sns.Sns2Configuration 类型。 | Sns2Configuration | |
camel.component.aws2-sns.enabled | 是否启用 aws2-sns 组件的自动配置。默认启用。 | 布尔值 | |
camel.component.aws2-sns.kms-master-key-id | Amazon SNS 或自定义 CMK 的 AWS 管理客户主密钥(CMK)的 ID。 | 字符串 | |
camel.component.aws2-sns.lazy-start-producer | 制作者是否应该启动 lazy(在第一个消息上)。通过启动 lazy,您可以使用它来允许 CamelContext 和路由在启动期间启动,否则在启动期间出现问题,并导致路由启动失败。通过将这个启动延迟到 lazy 后,可以在通过 Camel 的路由错误处理程序路由消息期间处理启动失败。注意在处理第一个消息时,创建并启动制作者可能花费较少的时间,从而延长处理的总处理时间。 | false | 布尔值 |
camel.component.aws2-sns.message-deduplication-id-strategy | 仅限 FIFO 主题。在消息上设置 messageDeduplicationId 的策略。可以是以下选项之一: useExchangeId,使用ContentBasedDeduplication。对于 useContentBasedDeduplication 选项,消息中不会设置 messageDeduplicationId。 | useExchangeId | 字符串 |
camel.component.aws2-sns.message-group-id-strategy | 仅限 FIFO 主题。在消息上设置 messageGroupId 的策略。可以是以下选项之一: useConstant、useExchangeId、使用PropertyValue。对于 usePropertyValue 选项,将使用属性 CamelAwsMessageGroupId。 | 字符串 | |
camel.component.aws2-sns.message-structure | 要使用的消息结构,如 json。 | 字符串 | |
camel.component.aws2-sns.override-endpoint | 设置覆盖端点的需求。这个选项必须与 uriEndpointOverride 选项结合使用。 | false | 布尔值 |
camel.component.aws2-sns.policy | 本主题的策略。从 classpath 中默认加载,但您可以使用 classpath:、file: 或 http: 前缀来从不同的系统加载资源。 | 字符串 | |
camel.component.aws2-sns.proxy-host | 在实例化 SNS 客户端时定义代理主机。 | 字符串 | |
camel.component.aws2-sns.proxy-port | 在实例化 SNS 客户端时定义代理端口。 | 整数 | |
camel.component.aws2-sns.proxy-protocol | 在实例化 SNS 客户端时定义代理协议。 | 协议 | |
camel.component.aws2-sns.queue-url | 要订阅的 queueUrl。 | 字符串 | |
camel.component.aws2-sns.region | SNS 客户端需要工作的区域。使用此参数时,配置将预期区域的小写名称(例如 ap-east-1),您需要使用名称 Region.EU_WEST_1.id()。 | 字符串 | |
camel.component.aws2-sns.secret-key | Amazon AWS Secret 密钥。 | 字符串 | |
camel.component.aws2-sns.server-side-encryption-enabled | 在主题中定义服务器视频加密是否启用或不启用。 | false | 布尔值 |
camel.component.aws2-sns.subject | 如果邮件标题为"CamelAwsSubject"不存在,将使用的主题。 | 字符串 | |
camel.component.aws2-sns.subscribe-s-n-sto-s-q-s | 定义是否必须在 SNS 主题和 SQS 之间订阅完成。 | false | 布尔值 |
camel.component.aws2-sns.trust-all-certificates | 如果要在覆盖端点时信任所有证书。 | false | 布尔值 |
camel.component.aws2-sns.uri-endpoint-override | 设置覆盖 uri 端点。这个选项必须与 overrideEndpoint 选项一同使用。 | 字符串 | |
camel.component.aws2-sns.use-default-credentials-provider | 设置 SNS 客户端是否应该会在 AWS infra 实例上加载凭证,还是希望传递静态凭证。 | false | 布尔值 |