Class Sqs2Configuration

    • Constructor Detail

      • Sqs2Configuration

        public Sqs2Configuration()
    • Method Detail

      • getAmazonAWSHost

        public String getAmazonAWSHost()
      • setAmazonAWSHost

        public void setAmazonAWSHost​(String amazonAWSHost)
        The hostname of the Amazon AWS cloud.
      • getQueueName

        public String getQueueName()
      • setQueueName

        public void setQueueName​(String queueName)
        Name of queue. The queue will be created if they don't already exists.
      • getAccessKey

        public String getAccessKey()
      • setAccessKey

        public void setAccessKey​(String accessKey)
        Amazon AWS Access Key
      • getSecretKey

        public String getSecretKey()
      • setSecretKey

        public void setSecretKey​(String secretKey)
        Amazon AWS Secret Key
      • isDeleteAfterRead

        public boolean isDeleteAfterRead()
      • setDeleteAfterRead

        public void setDeleteAfterRead​(boolean deleteAfterRead)
        Delete message from SQS after it has been read
      • getAmazonSQSClient

        public software.amazon.awssdk.services.sqs.SqsClient getAmazonSQSClient()
      • setAmazonSQSClient

        public void setAmazonSQSClient​(software.amazon.awssdk.services.sqs.SqsClient amazonSQSClient)
        To use the AmazonSQS as client
      • getVisibilityTimeout

        public Integer getVisibilityTimeout()
      • setVisibilityTimeout

        public void setVisibilityTimeout​(Integer visibilityTimeout)
        The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request to set in the com.amazonaws.services.sqs.model.SetQueueAttributesRequest. This only make sense if its different from defaultVisibilityTimeout. It changes the queue visibility timeout attribute permanently.
      • getAttributeNames

        public String getAttributeNames()
      • setAttributeNames

        public void setAttributeNames​(String attributeNames)
        A list of attribute names to receive when consuming. Multiple names can be separated by comma.
      • getMessageAttributeNames

        public String getMessageAttributeNames()
      • setMessageAttributeNames

        public void setMessageAttributeNames​(String messageAttributeNames)
        A list of message attribute names to receive when consuming. Multiple names can be separated by comma.
      • getDefaultVisibilityTimeout

        public Integer getDefaultVisibilityTimeout()
      • setDefaultVisibilityTimeout

        public void setDefaultVisibilityTimeout​(Integer defaultVisibilityTimeout)
        The default visibility timeout (in seconds)
      • getDelaySeconds

        public Integer getDelaySeconds()
      • setDelaySeconds

        public void setDelaySeconds​(Integer delaySeconds)
        Delay sending messages for a number of seconds.
      • isDelayQueue

        public boolean isDelayQueue()
      • setDelayQueue

        public void setDelayQueue​(boolean delayQueue)
        Define if you want to apply delaySeconds option to the queue or on single messages
      • getMaximumMessageSize

        public Integer getMaximumMessageSize()
      • setMaximumMessageSize

        public void setMaximumMessageSize​(Integer maximumMessageSize)
        The maximumMessageSize (in bytes) an SQS message can contain for this queue.
      • getMessageRetentionPeriod

        public Integer getMessageRetentionPeriod()
      • setMessageRetentionPeriod

        public void setMessageRetentionPeriod​(Integer messageRetentionPeriod)
        The messageRetentionPeriod (in seconds) a message will be retained by SQS for this queue.
      • getPolicy

        public String getPolicy()
      • setPolicy

        public void setPolicy​(String policy)
        The policy for this queue. It can be loaded by default from classpath, but you can prefix with "classpath:", "file:", or "http:" to load the resource from different systems.
      • getRedrivePolicy

        public String getRedrivePolicy()
      • setRedrivePolicy

        public void setRedrivePolicy​(String redrivePolicy)
        Specify the policy that send message to DeadLetter queue. See detail at Amazon docs.
      • isExtendMessageVisibility

        public boolean isExtendMessageVisibility()
      • setExtendMessageVisibility

        public void setExtendMessageVisibility​(boolean extendMessageVisibility)
        If enabled then a scheduled background task will keep extending the message visibility on SQS. This is needed if it takes a long time to process the message. If set to true defaultVisibilityTimeout must be set. See details at Amazon docs.
      • getReceiveMessageWaitTimeSeconds

        public Integer getReceiveMessageWaitTimeSeconds()
      • setReceiveMessageWaitTimeSeconds

        public void setReceiveMessageWaitTimeSeconds​(Integer receiveMessageWaitTimeSeconds)
        If you do not specify WaitTimeSeconds in the request, the queue attribute ReceiveMessageWaitTimeSeconds is used to determine how long to wait.
      • getWaitTimeSeconds

        public Integer getWaitTimeSeconds()
      • setWaitTimeSeconds

        public void setWaitTimeSeconds​(Integer waitTimeSeconds)
        Duration in seconds (0 to 20) that the ReceiveMessage action call will wait until a message is in the queue to include in the response.
      • getQueueOwnerAWSAccountId

        public String getQueueOwnerAWSAccountId()
      • setQueueOwnerAWSAccountId

        public void setQueueOwnerAWSAccountId​(String queueOwnerAWSAccountId)
        Specify the queue owner aws account id when you need to connect the queue with different account owner.
      • isDeleteIfFiltered

        public boolean isDeleteIfFiltered()
      • setDeleteIfFiltered

        public void setDeleteIfFiltered​(boolean deleteIfFiltered)
        Whether or not to send the DeleteMessage to the SQS queue if the exchange has property with key Sqs2Constants.SQS_DELETE_FILTERED (CamelAwsSqsDeleteFiltered) set to true.
      • getRegion

        public String getRegion()
      • setRegion

        public void setRegion​(String region)
        The region in which SQS 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()
      • getConcurrentConsumers

        public int getConcurrentConsumers()
      • setConcurrentConsumers

        public void setConcurrentConsumers​(int concurrentConsumers)
        Allows you to use multiple threads to poll the sqs queue to increase throughput
      • getQueueUrl

        public String getQueueUrl()
      • setQueueUrl

        public void setQueueUrl​(String queueUrl)
        To define the queueUrl explicitly. All other parameters, which would influence the queueUrl, are ignored. This parameter is intended to be used, to connect to a mock implementation of SQS, for testing purposes.
      • getProxyProtocol

        public software.amazon.awssdk.core.Protocol getProxyProtocol()
      • setProxyProtocol

        public void setProxyProtocol​(software.amazon.awssdk.core.Protocol proxyProtocol)
        To define a proxy protocol when instantiating the SQS client
      • getProxyHost

        public String getProxyHost()
      • setProxyHost

        public void setProxyHost​(String proxyHost)
        To define a proxy host when instantiating the SQS client
      • getProxyPort

        public Integer getProxyPort()
      • setProxyPort

        public void setProxyPort​(Integer proxyPort)
        To define a proxy port when instantiating the SQS client
      • getKmsMasterKeyId

        public String getKmsMasterKeyId()
      • setKmsMasterKeyId

        public void setKmsMasterKeyId​(String kmsMasterKeyId)
        The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK.
      • getKmsDataKeyReusePeriodSeconds

        public Integer getKmsDataKeyReusePeriodSeconds()
      • setKmsDataKeyReusePeriodSeconds

        public void setKmsDataKeyReusePeriodSeconds​(Integer kmsDataKeyReusePeriodSeconds)
        The length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours). Default: 300 (5 minutes).
      • isServerSideEncryptionEnabled

        public boolean isServerSideEncryptionEnabled()
      • setServerSideEncryptionEnabled

        public void setServerSideEncryptionEnabled​(boolean serverSideEncryptionEnabled)
        Define if Server Side Encryption is enabled or not on the queue
      • setMessageGroupIdStrategy

        public void setMessageGroupIdStrategy​(String strategy)
        Only for FIFO queues. Strategy for setting the messageGroupId on the message. Can be one of the following options: *useConstant*, *useExchangeId*, *usePropertyValue*. For the *usePropertyValue* option, the value of property "CamelAwsMessageGroupId" will be used.
      • setMessageGroupIdStrategy

        public void setMessageGroupIdStrategy​(MessageGroupIdStrategy messageGroupIdStrategy)
      • setMessageDeduplicationIdStrategy

        public void setMessageDeduplicationIdStrategy​(String strategy)
        Only for FIFO queues. Strategy for setting the messageDeduplicationId on the message. Can be one of the following options: *useExchangeId*, *useContentBasedDeduplication*. For the *useContentBasedDeduplication* option, no messageDeduplicationId will be set on the message.
      • setMessageDeduplicationIdStrategy

        public void setMessageDeduplicationIdStrategy​(MessageDeduplicationIdStrategy messageDeduplicationIdStrategy)
      • setOperation

        public void setOperation​(Sqs2Operations operation)
        The operation to do in case the user don't want to send only a message
      • isAutoCreateQueue

        public boolean isAutoCreateQueue()
      • setAutoCreateQueue

        public void setAutoCreateQueue​(boolean autoCreateQueue)
        Setting the autocreation of the queue
      • getProtocol

        public String getProtocol()
      • setProtocol

        public void setProtocol​(String protocol)
        The underlying protocol used to communicate with SQS
      • isTrustAllCertificates

        public boolean isTrustAllCertificates()
      • setTrustAllCertificates

        public void setTrustAllCertificates​(boolean trustAllCertificates)
        If we want to trust all certificates in case of overriding the endpoint
      • isUseDefaultCredentialsProvider

        public boolean isUseDefaultCredentialsProvider()
      • setUseDefaultCredentialsProvider

        public void setUseDefaultCredentialsProvider​(boolean useDefaultCredentialsProvider)
        Set whether the SQS client should expect to load credentials on an AWS infra instance or to expect static credentials to be passed in.
      • getBatchSeparator

        public String getBatchSeparator()
      • setBatchSeparator

        public void setBatchSeparator​(String batchSeparator)
        Set the separator when passing a String to send batch message operation
      • isOverrideEndpoint

        public boolean isOverrideEndpoint()
      • setOverrideEndpoint

        public void setOverrideEndpoint​(boolean overrideEndpoint)
        Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option
      • getUriEndpointOverride

        public String getUriEndpointOverride()
      • setUriEndpointOverride

        public void setUriEndpointOverride​(String uriEndpointOverride)
        Set the overriding uri endpoint. This option needs to be used in combination with overrideEndpoint option