Interface Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder
- All Superinterfaces:
ComponentBuilder<org.apache.camel.component.aws2.sns.Sns2Component>
- All Known Implementing Classes:
Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilderImpl
- Enclosing interface:
Aws2SnsComponentBuilderFactory
public static interface Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder
extends ComponentBuilder<org.apache.camel.component.aws2.sns.Sns2Component>
Builder for the AWS Simple Notification System (SNS) component.
-
Method Summary
Modifier and TypeMethodDescriptionAmazon AWS Access Key.amazonSNSClient
(software.amazon.awssdk.services.sns.SnsClient amazonSNSClient) To use the AmazonSNS as the client.autoCreateTopic
(boolean autoCreateTopic) Setting the auto-creation of the topic.autowiredEnabled
(boolean autowiredEnabled) Whether autowiring is enabled.configuration
(org.apache.camel.component.aws2.sns.Sns2Configuration configuration) Component configuration.healthCheckConsumerEnabled
(boolean healthCheckConsumerEnabled) Used for enabling or disabling all consumer based health checks from this component.healthCheckProducerEnabled
(boolean healthCheckProducerEnabled) Used for enabling or disabling all producer based health checks from this component.kmsMasterKeyId
(String kmsMasterKeyId) The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK.lazyStartProducer
(boolean lazyStartProducer) Whether the producer should be started lazy (on the first message).messageDeduplicationIdStrategy
(String messageDeduplicationIdStrategy) Only for FIFO Topic.messageGroupIdStrategy
(String messageGroupIdStrategy) Only for FIFO Topic.messageStructure
(String messageStructure) The message structure to use such as json.overrideEndpoint
(boolean overrideEndpoint) Set the need for overriding the endpoint.The policy for this topic.profileCredentialsName
(String profileCredentialsName) If using a profile credentials provider, this parameter will set the profile name.To define a proxy host when instantiating the SNS client.To define a proxy port when instantiating the SNS client.proxyProtocol
(software.amazon.awssdk.core.Protocol proxyProtocol) To define a proxy protocol when instantiating the SNS client.The ARN endpoint to subscribe to.The region in which the SNS client needs to work.Amazon AWS Secret Key.serverSideEncryptionEnabled
(boolean serverSideEncryptionEnabled) Define if Server Side Encryption is enabled or not on the topic.sessionToken
(String sessionToken) Amazon AWS Session Token used when the user needs to assume an IAM role.The subject which is used if the message header 'CamelAwsSnsSubject' is not present.subscribeSNStoSQS
(boolean subscribeSNStoSQS) Define if the subscription between SNS Topic and SQS must be done or not.trustAllCertificates
(boolean trustAllCertificates) If we want to trust all certificates in case of overriding the endpoint.uriEndpointOverride
(String uriEndpointOverride) Set the overriding uri endpoint.useDefaultCredentialsProvider
(boolean useDefaultCredentialsProvider) Set whether the SNS client should expect to load credentials on an AWS infra instance or to expect static credentials to be passed in.useProfileCredentialsProvider
(boolean useProfileCredentialsProvider) Set whether the SNS client should expect to load credentials through a profile credentials provider.useSessionCredentials
(boolean useSessionCredentials) Set whether the SNS client should expect to use Session Credentials.Methods inherited from interface org.apache.camel.builder.component.ComponentBuilder
build, build, doSetProperty, register
-
Method Details
-
autoCreateTopic
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder autoCreateTopic(boolean autoCreateTopic) Setting the auto-creation of the topic. The option is a: <code>boolean</code> type. Default: false Group: producer- Parameters:
autoCreateTopic
- the value to set- Returns:
- the dsl builder
-
configuration
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder configuration(org.apache.camel.component.aws2.sns.Sns2Configuration configuration) Component configuration. The option is a: <code>org.apache.camel.component.aws2.sns.Sns2Configuration</code> type. Group: producer- Parameters:
configuration
- the value to set- Returns:
- the dsl builder
-
kmsMasterKeyId
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder kmsMasterKeyId(String kmsMasterKeyId) The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
kmsMasterKeyId
- the value to set- Returns:
- the dsl builder
-
lazyStartProducer
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder lazyStartProducer(boolean lazyStartProducer) Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option is a: <code>boolean</code> type. Default: false Group: producer- Parameters:
lazyStartProducer
- the value to set- Returns:
- the dsl builder
-
messageDeduplicationIdStrategy
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder messageDeduplicationIdStrategy(String messageDeduplicationIdStrategy) Only for FIFO Topic. Strategy for setting the messageDeduplicationId on the message. It can be one of the following options: useExchangeId, useContentBasedDeduplication. For the useContentBasedDeduplication option, no messageDeduplicationId will be set on the message. The option is a: <code>java.lang.String</code> type. Default: useExchangeId Group: producer- Parameters:
messageDeduplicationIdStrategy
- the value to set- Returns:
- the dsl builder
-
messageGroupIdStrategy
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder messageGroupIdStrategy(String messageGroupIdStrategy) Only for FIFO Topic. Strategy for setting the messageGroupId on the message. It can be one of the following options: useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, the value of property CamelAwsSnsMessageGroupId will be used. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
messageGroupIdStrategy
- the value to set- Returns:
- the dsl builder
-
messageStructure
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder messageStructure(String messageStructure) The message structure to use such as json. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
messageStructure
- the value to set- Returns:
- the dsl builder
-
overrideEndpoint
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder overrideEndpoint(boolean overrideEndpoint) Set the need for overriding the endpoint. This option needs to be used in combination with the uriEndpointOverride option. The option is a: <code>boolean</code> type. Default: false Group: producer- Parameters:
overrideEndpoint
- the value to set- Returns:
- the dsl builder
-
policy
The policy for this topic. Is loaded by default from classpath, but you can prefix with classpath:, file:, or http: to load the resource from different systems. This option can also be loaded from an existing file, by prefixing with file: or classpath: followed by the location of the file. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
policy
- the value to set- Returns:
- the dsl builder
-
queueArn
The ARN endpoint to subscribe to. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
queueArn
- the value to set- Returns:
- the dsl builder
-
region
The region in which the SNS client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example, ap-east-1) You'll need to use the name Region.EU_WEST_1.id(). The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
region
- the value to set- Returns:
- the dsl builder
-
serverSideEncryptionEnabled
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder serverSideEncryptionEnabled(boolean serverSideEncryptionEnabled) Define if Server Side Encryption is enabled or not on the topic. The option is a: <code>boolean</code> type. Default: false Group: producer- Parameters:
serverSideEncryptionEnabled
- the value to set- Returns:
- the dsl builder
-
subject
The subject which is used if the message header 'CamelAwsSnsSubject' is not present. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
subject
- the value to set- Returns:
- the dsl builder
-
subscribeSNStoSQS
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder subscribeSNStoSQS(boolean subscribeSNStoSQS) Define if the subscription between SNS Topic and SQS must be done or not. The option is a: <code>boolean</code> type. Default: false Group: producer- Parameters:
subscribeSNStoSQS
- the value to set- Returns:
- the dsl builder
-
uriEndpointOverride
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder uriEndpointOverride(String uriEndpointOverride) Set the overriding uri endpoint. This option needs to be used in combination with overrideEndpoint option. The option is a: <code>java.lang.String</code> type. Group: producer- Parameters:
uriEndpointOverride
- the value to set- Returns:
- the dsl builder
-
amazonSNSClient
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder amazonSNSClient(software.amazon.awssdk.services.sns.SnsClient amazonSNSClient) To use the AmazonSNS as the client. The option is a: <code>software.amazon.awssdk.services.sns.SnsClient</code> type. Group: advanced- Parameters:
amazonSNSClient
- the value to set- Returns:
- the dsl builder
-
autowiredEnabled
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder autowiredEnabled(boolean autowiredEnabled) Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc. The option is a: <code>boolean</code> type. Default: true Group: advanced- Parameters:
autowiredEnabled
- the value to set- Returns:
- the dsl builder
-
healthCheckConsumerEnabled
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder healthCheckConsumerEnabled(boolean healthCheckConsumerEnabled) Used for enabling or disabling all consumer based health checks from this component. The option is a: <code>boolean</code> type. Default: true Group: health- Parameters:
healthCheckConsumerEnabled
- the value to set- Returns:
- the dsl builder
-
healthCheckProducerEnabled
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder healthCheckProducerEnabled(boolean healthCheckProducerEnabled) Used for enabling or disabling all producer based health checks from this component. Notice: Camel has by default disabled all producer based health-checks. You can turn on producer checks globally by setting camel.health.producersEnabled=true. The option is a: <code>boolean</code> type. Default: true Group: health- Parameters:
healthCheckProducerEnabled
- the value to set- Returns:
- the dsl builder
-
proxyHost
To define a proxy host when instantiating the SNS client. The option is a: <code>java.lang.String</code> type. Group: proxy- Parameters:
proxyHost
- the value to set- Returns:
- the dsl builder
-
proxyPort
To define a proxy port when instantiating the SNS client. The option is a: <code>java.lang.Integer</code> type. Group: proxy- Parameters:
proxyPort
- the value to set- Returns:
- the dsl builder
-
proxyProtocol
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder proxyProtocol(software.amazon.awssdk.core.Protocol proxyProtocol) To define a proxy protocol when instantiating the SNS client. The option is a: <code>software.amazon.awssdk.core.Protocol</code> type. Default: HTTPS Group: proxy- Parameters:
proxyProtocol
- the value to set- Returns:
- the dsl builder
-
accessKey
Amazon AWS Access Key. The option is a: <code>java.lang.String</code> type. Group: security- Parameters:
accessKey
- the value to set- Returns:
- the dsl builder
-
profileCredentialsName
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder profileCredentialsName(String profileCredentialsName) If using a profile credentials provider, this parameter will set the profile name. The option is a: <code>java.lang.String</code> type. Group: security- Parameters:
profileCredentialsName
- the value to set- Returns:
- the dsl builder
-
secretKey
Amazon AWS Secret Key. The option is a: <code>java.lang.String</code> type. Group: security- Parameters:
secretKey
- the value to set- Returns:
- the dsl builder
-
sessionToken
Amazon AWS Session Token used when the user needs to assume an IAM role. The option is a: <code>java.lang.String</code> type. Group: security- Parameters:
sessionToken
- the value to set- Returns:
- the dsl builder
-
trustAllCertificates
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder trustAllCertificates(boolean trustAllCertificates) If we want to trust all certificates in case of overriding the endpoint. The option is a: <code>boolean</code> type. Default: false Group: security- Parameters:
trustAllCertificates
- the value to set- Returns:
- the dsl builder
-
useDefaultCredentialsProvider
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder useDefaultCredentialsProvider(boolean useDefaultCredentialsProvider) Set whether the SNS client should expect to load credentials on an AWS infra instance or to expect static credentials to be passed in. The option is a: <code>boolean</code> type. Default: false Group: security- Parameters:
useDefaultCredentialsProvider
- the value to set- Returns:
- the dsl builder
-
useProfileCredentialsProvider
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder useProfileCredentialsProvider(boolean useProfileCredentialsProvider) Set whether the SNS client should expect to load credentials through a profile credentials provider. The option is a: <code>boolean</code> type. Default: false Group: security- Parameters:
useProfileCredentialsProvider
- the value to set- Returns:
- the dsl builder
-
useSessionCredentials
default Aws2SnsComponentBuilderFactory.Aws2SnsComponentBuilder useSessionCredentials(boolean useSessionCredentials) Set whether the SNS client should expect to use Session Credentials. This is useful in a situation in which the user needs to assume an IAM role for doing operations in SNS. The option is a: <code>boolean</code> type. Default: false Group: security- Parameters:
useSessionCredentials
- the value to set- Returns:
- the dsl builder
-