public final class QueueServiceClientBuilder extends Object
queueServiceClients
and queueServiceAsyncClients
, calling buildClient
constructs an instance of QueueServiceClient and calling buildAsyncClient
constructs an instance of QueueServiceAsyncClient.
The client needs the endpoint of the Azure Storage Queue service, name of the share, and authorization
credential. endpoint
gives the builder the endpoint and may give
the builder the a SAS token that authorizes the client.
Instantiating a synchronous Queue Service Client with SAS token
QueueServiceClient client = new QueueServiceClientBuilder() .endpoint("https://${accountName}.queue.core.windows.net?${SASToken}") .buildClient();
Instantiating an Asynchronous Queue Service Client with SAS token
QueueServiceAsyncClient client = new QueueServiceClientBuilder() .endpoint("https://{accountName}.queue.core.windows.net?{SASToken}") .buildAsyncClient();
If the endpoint
doesn't contain the query parameters to construct a SAS token they may be set using
sasToken
together with endpoint.
Instantiating a synchronous Queue Service Client with SAS token
QueueServiceAsyncClient client = new QueueServiceClientBuilder() .endpoint("https://{accountName}.queue.core.windows.net") .sasToken("{SASTokenQueryParams}") .buildAsyncClient();
Instantiating an Asynchronous Queue Service Client with SAS token
QueueServiceAsyncClient client = new QueueServiceClientBuilder() .endpoint("https://{accountName}.queue.core.windows.net") .sasToken("{SASTokenQueryParams}") .buildAsyncClient();
Another way to authenticate the client is using a StorageSharedKeyCredential
. To create a
StorageSharedKeyCredential a connection string from the Storage Queue service must be used.
Set the StorageSharedKeyCredential with connectionString
.
If the builder has both a SAS token and StorageSharedKeyCredential the StorageSharedKeyCredential will be preferred
when authorizing requests sent to the service.
Instantiating a synchronous Queue Service Client with connection string.
String connectionString = "DefaultEndpointsProtocol=https;AccountName={name};" + "AccountKey={key};EndpointSuffix={core.windows.net}"; QueueServiceClient client = new QueueServiceClientBuilder() .connectionString(connectionString) .buildClient();
Instantiating an Asynchronous Queue Service Client with connection string.
String connectionString = "DefaultEndpointsProtocol=https;AccountName={name};" + "AccountKey={key};EndpointSuffix={core.windows.net}"; QueueServiceAsyncClient client = new QueueServiceClientBuilder() .connectionString(connectionString) .buildAsyncClient();
Constructor and Description |
---|
QueueServiceClientBuilder()
Creates a builder instance that is able to configure and construct
QueueServiceClients
and QueueServiceAsyncClients . |
Modifier and Type | Method and Description |
---|---|
QueueServiceClientBuilder |
addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
Adds a pipeline policy to apply on each request sent.
|
QueueServiceAsyncClient |
buildAsyncClient()
Creates a
QueueServiceAsyncClient based on options set in the builder. |
QueueServiceClient |
buildClient()
Creates a
QueueServiceClient based on options set in the builder. |
QueueServiceClientBuilder |
clientOptions(com.azure.core.util.ClientOptions clientOptions)
Sets the client options for all the requests made through the client.
|
QueueServiceClientBuilder |
configuration(com.azure.core.util.Configuration configuration)
Sets the configuration object used to retrieve environment configuration values during building of the client.
|
QueueServiceClientBuilder |
connectionString(String connectionString)
Sets the connection string to connect to the service.
|
QueueServiceClientBuilder |
credential(com.azure.core.credential.AzureSasCredential credential)
Sets the
AzureSasCredential used to authorize requests sent to the service. |
QueueServiceClientBuilder |
credential(StorageSharedKeyCredential credential)
Sets the
StorageSharedKeyCredential used to authorize requests sent to the service. |
QueueServiceClientBuilder |
credential(com.azure.core.credential.TokenCredential credential)
Sets the
TokenCredential used to authorize requests sent to the service. |
QueueServiceClientBuilder |
endpoint(String endpoint)
Sets the endpoint for the Azure Storage Queue instance that the client will interact with.
|
static com.azure.core.http.policy.HttpLogOptions |
getDefaultHttpLogOptions()
Gets the default Storage whitelist log headers and query parameters.
|
QueueServiceClientBuilder |
httpClient(com.azure.core.http.HttpClient httpClient)
Sets the
HttpClient to use for sending a receiving requests to and from the service. |
QueueServiceClientBuilder |
httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
Sets the
HttpLogOptions for service requests. |
QueueServiceClientBuilder |
pipeline(com.azure.core.http.HttpPipeline httpPipeline)
Sets the
HttpPipeline to use for the service client. |
QueueServiceClientBuilder |
retryOptions(RequestRetryOptions retryOptions)
Sets the request retry options for all the requests made through the client.
|
QueueServiceClientBuilder |
sasToken(String sasToken)
Sets the SAS token used to authorize requests sent to the service.
|
QueueServiceClientBuilder |
serviceVersion(QueueServiceVersion version)
Sets the
QueueServiceVersion that is used when making API requests. |
public QueueServiceClientBuilder()
QueueServiceClients
and QueueServiceAsyncClients
.public QueueServiceAsyncClient buildAsyncClient()
QueueServiceAsyncClient
based on options set in the builder. Every time this is called a new
instance of QueueServiceAsyncClient
is created.
If pipeline
is set, then the pipeline
and endpoint
are used to create the client
. All other builder settings are ignored.
NullPointerException
- If endpoint
or queueName
have not been set.IllegalArgumentException
- If neither a StorageSharedKeyCredential
or
SAS token
has been set.IllegalStateException
- If multiple credentials have been specified.public QueueServiceClient buildClient()
QueueServiceClient
based on options set in the builder. Every time this is called a new
instance of QueueServiceClient
is created.
If pipeline
is set, then the pipeline
and endpoint
are used to create the client
.
All other builder settings are ignored.
NullPointerException
- If endpoint
or queueName
have not been set.IllegalArgumentException
- If neither a StorageSharedKeyCredential
or SAS token
has been set.IllegalStateException
- If multiple credentials have been specified.public QueueServiceClientBuilder endpoint(String endpoint)
Query parameters of the endpoint will be parsed in an attempt to generate a SAS token to authenticate requests sent to the service.
endpoint
- The URL of the Azure Storage Queue instance to send service requests to and receive responses
from.NullPointerException
- If endpoint
is null
.IllegalArgumentException
- If endpoint
is a malformed URL.public QueueServiceClientBuilder credential(StorageSharedKeyCredential credential)
StorageSharedKeyCredential
used to authorize requests sent to the service.credential
- StorageSharedKeyCredential
.NullPointerException
- If credential
is null
.public QueueServiceClientBuilder credential(com.azure.core.credential.TokenCredential credential)
TokenCredential
used to authorize requests sent to the service.credential
- TokenCredential
.NullPointerException
- If credential
is null
.public QueueServiceClientBuilder sasToken(String sasToken)
sasToken
- The SAS token to use for authenticating requests.NullPointerException
- If sasToken
is null
.public QueueServiceClientBuilder credential(com.azure.core.credential.AzureSasCredential credential)
AzureSasCredential
used to authorize requests sent to the service.credential
- AzureSasCredential
used to authorize requests sent to the service.NullPointerException
- If credential
is null
.public QueueServiceClientBuilder connectionString(String connectionString)
connectionString
- Connection string of the storage account.IllegalArgumentException
- If connectionString
is invalid.public QueueServiceClientBuilder httpClient(com.azure.core.http.HttpClient httpClient)
HttpClient
to use for sending a receiving requests to and from the service.httpClient
- HttpClient to use for requests.public QueueServiceClientBuilder addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
pipelinePolicy
- a pipeline policyNullPointerException
- If pipelinePolicy
is null
.public QueueServiceClientBuilder httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
HttpLogOptions
for service requests.logOptions
- The logging configuration to use when sending and receiving HTTP requests/responses.NullPointerException
- If logOptions
is null
.public static com.azure.core.http.policy.HttpLogOptions getDefaultHttpLogOptions()
public QueueServiceClientBuilder configuration(com.azure.core.util.Configuration configuration)
configuration
- Configuration store used to retrieve environment configurations.public QueueServiceClientBuilder retryOptions(RequestRetryOptions retryOptions)
retryOptions
- RequestRetryOptions
.NullPointerException
- If retryOptions
is null
.public QueueServiceClientBuilder pipeline(com.azure.core.http.HttpPipeline httpPipeline)
HttpPipeline
to use for the service client.
If pipeline
is set, all other settings are ignored, aside from endpoint
.httpPipeline
- HttpPipeline to use for sending service requests and receiving responses.public QueueServiceClientBuilder clientOptions(com.azure.core.util.ClientOptions clientOptions)
clientOptions
- ClientOptions
.NullPointerException
- If clientOptions
is null
.public QueueServiceClientBuilder serviceVersion(QueueServiceVersion version)
QueueServiceVersion
that is used when making API requests.
If a service version is not provided, the service version that will be used will be the latest known service version based on the version of the client library being used. If no service version is specified, updating to a newer version of the client library will have the result of potentially moving to a newer service version.
Targeting a specific service version may also mean that the service will return an error for newer APIs.
version
- QueueServiceVersion
of the service to be used when making requests.Copyright © 2021 Microsoft Corporation. All rights reserved.