// spring-boot-auto-configure options: START
:page-partial:
:doctitle: Camel Spring Boot Starter for azure-storage-queue

== Spring Boot Auto-Configuration

When using azure-storage-queue with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:

[source,xml]
----
<dependency>
  <groupId>org.apache.camel.springboot</groupId>
  <artifactId>camel-azure-storage-queue-starter</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel core version -->
</dependency>
----


The component supports 17 options, which are listed below.



[width="100%",cols="2,5,^1,2",options="header"]
|===
| Name | Description | Default | Type
| *camel.component.azure-storage-queue.access-key* | Access key for the associated azure account name to be used for authentication with azure queue services |  | String
| *camel.component.azure-storage-queue.auto-discover-client* | Setting the autoDiscoverClient mechanism, if true, the component will look for a client instance in the registry automatically otherwise it will skip that checking. | true | Boolean
| *camel.component.azure-storage-queue.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
| *camel.component.azure-storage-queue.configuration* | The component configurations. The option is a org.apache.camel.component.azure.storage.queue.QueueConfiguration type. |  | QueueConfiguration
| *camel.component.azure-storage-queue.create-queue* | When is set to true, the queue will be automatically created when sending messages to the queue. | true | Boolean
| *camel.component.azure-storage-queue.credentials* | StorageSharedKeyCredential can be injected to create the azure client, this holds the important authentication information. The option is a com.azure.storage.common.StorageSharedKeyCredential type. |  | StorageSharedKeyCredential
| *camel.component.azure-storage-queue.enabled* | Whether to enable auto configuration of the azure-storage-queue component. This is enabled by default. |  | Boolean
| *camel.component.azure-storage-queue.lazy-start-producer* | 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. | false | Boolean
| *camel.component.azure-storage-queue.max-messages* | Maximum number of messages to get, if there are less messages exist in the queue than requested all the messages will be returned. If left empty only 1 message will be retrieved, the allowed range is 1 to 32 messages. | 1 | Integer
| *camel.component.azure-storage-queue.message-id* | The ID of the message to be deleted or updated. |  | String
| *camel.component.azure-storage-queue.operation* | Queue service operation hint to the producer |  | QueueOperationDefinition
| *camel.component.azure-storage-queue.pop-receipt* | Unique identifier that must match for the message to be deleted or updated. |  | String
| *camel.component.azure-storage-queue.service-client* | Service client to a storage account to interact with the queue service. This client does not hold any state about a particular storage account but is instead a convenient way of sending off appropriate requests to the resource on the service. This client contains all the operations for interacting with a queue account in Azure Storage. Operations allowed by the client are creating, listing, and deleting queues, retrieving and updating properties of the account, and retrieving statistics of the account. The option is a com.azure.storage.queue.QueueServiceClient type. |  | QueueServiceClient
| *camel.component.azure-storage-queue.time-to-live* | How long the message will stay alive in the queue. If unset the value will default to 7 days, if -1 is passed the message will not expire. The time to live must be -1 or any positive number. The format should be in this form: PnDTnHnMn.nS., e.g: PT20.345S -- parses as 20.345 seconds, P2D -- parses as 2 days However, in case you are using EndpointDsl/ComponentDsl, you can do something like Duration.ofSeconds() since these Java APIs are typesafe. The option is a java.time.Duration type. |  | Duration
| *camel.component.azure-storage-queue.timeout* | An optional timeout applied to the operation. If a response is not returned before the timeout concludes a RuntimeException will be thrown. The option is a java.time.Duration type. |  | Duration
| *camel.component.azure-storage-queue.visibility-timeout* | The timeout period for how long the message is invisible in the queue. The timeout must be between 1 seconds and 7 days. The format should be in this form: PnDTnHnMn.nS., e.g: PT20.345S -- parses as 20.345 seconds, P2D -- parses as 2 days However, in case you are using EndpointDsl/ComponentDsl, you can do something like Duration.ofSeconds() since these Java APIs are typesafe. The option is a java.time.Duration type. |  | Duration
| *camel.component.azure-storage-queue.basic-property-binding* | *Deprecated* Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
|===
// spring-boot-auto-configure options: END
