你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
ServiceBusAdministrationAsyncClient 类
- java.
lang. Object - com.
azure. messaging. servicebus. administration. ServiceBusAdministrationAsyncClient
- com.
public final class ServiceBusAdministrationAsyncClient
用于管理服务总线命名空间的 异步 客户端。 通过 ServiceBusAdministrationClientBuilder实例化。
示例:创建异步客户端
下面的代码示例演示如何创建异步管理客户端。 以下示例 DefaultAzureCredential
中使用的凭据用于身份验证。 它适用于大多数方案,包括本地开发和生产环境。 此外,建议在生产环境中使用 托管标识 进行身份验证。 可以在 Azure 标识文档中找到有关不同身份验证方式及其相应凭据类型的详细信息。
// DefaultAzureCredential creates a credential based on the environment it is executed in.
TokenCredential credential = new DefaultAzureCredentialBuilder().build();
// 'fullyQualifiedNamespace' will look similar to "{your-namespace}.servicebus.windows.net"
ServiceBusAdministrationAsyncClient client = new ServiceBusAdministrationClientBuilder()
.credential(fullyQualifiedNamespace, new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
示例:创建队列
以下示例创建具有默认值的队列。 默认值在 中 CreateQueueOptions()列出。
// `.subscribe()` is a non-blocking call. It'll move onto the next
// instruction after setting up the `consumer` and `errorConsumer` callbacks.
client.createQueue("my-new-queue").subscribe(queue -> {
System.out.printf("Queue created. Name: %s. Lock Duration: %s.%n",
queue.getName(), queue.getLockDuration());
}, error -> {
System.err.println("Error creating queue: " + error);
});
示例:编辑现有订阅
以下代码示例演示如何更新现有订阅。 用户应提取订阅的属性、修改属性,然后将 对象传递给更新方法。
// To update the subscription we have to:
// 1. Get the subscription info from the service.
// 2. Update the SubscriptionProperties we want to change.
// 3. Call the updateSubscription() with the updated object.
// `.subscribe()` is a non-blocking call. It'll move onto the next
// instruction after setting up the `consumer` and `errorConsumer` callbacks.
client.getSubscription("my-topic", "my-subscription")
.flatMap(subscription -> {
System.out.println("Original delivery count: " + subscription.getMaxDeliveryCount());
// Updating it to a new value.
subscription.setMaxDeliveryCount(5);
// Persisting the updates to the subscription object.
return client.updateSubscription(subscription);
})
.subscribe(subscription -> {
System.out.printf("Subscription updated. Name: %s. Delivery count: %s.%n",
subscription.getSubscriptionName(), subscription.getMaxDeliveryCount());
}, error -> {
System.err.println("Error updating subscription: " + error);
});
示例:列出所有队列
下面的代码示例列出了服务总线命名空间中的所有队列。
// `.subscribe()` is a non-blocking call. It'll move onto the next
// instruction after setting up the `consumer` and `errorConsumer` callbacks.
client.listQueues().subscribe(queue -> {
System.out.printf("Queue [%s]. Lock Duration: %s.%n",
queue.getName(), queue.getLockDuration());
}, error -> {
System.err.println("Error fetching queues: " + error);
});
示例:删除队列
下面的代码示例演示如何删除现有队列。
// `.subscribe()` is a non-blocking call. It'll move onto the next
// instruction after setting up the `consumer`, `errorConsumer`, `completeConsumer` callbacks.
asyncClient.deleteQueue("my-existing-queue").subscribe(unused -> {
}, error -> {
System.err.println("Error deleting queue: " + error);
}, () -> {
System.out.println("Deleted queue.");
});
方法摘要
方法继承自 java.lang.Object
方法详细信息
createQueue
public Mono
创建具有给定名称的队列。
Parameters:
Returns:
createQueue
public Mono
使用 和 给定的 CreateQueueOptions 队列名称创建队列。
Parameters:
Returns:
createQueueWithResponse
public Mono
创建队列并返回创建的队列以及 HTTP 响应。
Parameters:
Returns:
createRule
public Mono
在给定主题和订阅下创建规则
Parameters:
Returns:
createRule
public Mono
使用 CreateRuleOptions创建规则。
Parameters:
Returns:
createRuleWithResponse
public Mono
创建一个规则,并返回创建的规则以及 HTTP 响应。
Parameters:
Returns:
createSubscription
public Mono
创建具有给定主题和订阅名称的订阅。
Parameters:
Returns:
createSubscription
public Mono
使用 CreateSubscriptionOptions创建订阅。
Parameters:
Returns:
createSubscription
public Mono
使用 和 CreateRuleOptions创建具有默认规则的CreateSubscriptionOptions订阅。
Parameters:
Returns:
createSubscriptionWithResponse
public Mono
创建订阅并返回创建的订阅以及 HTTP 响应。
Parameters:
Returns:
createSubscriptionWithResponse
public Mono
创建具有默认规则的订阅,并返回创建的订阅以及 HTTP 响应。
Parameters:
Returns:
createTopic
public Mono
创建具有给定名称的主题。
Parameters:
Returns:
createTopic
public Mono
使用 CreateTopicOptions创建主题。
Parameters:
Returns:
createTopicWithResponse
public Mono
创建主题并返回创建的主题以及 HTTP 响应。
Parameters:
Returns:
deleteQueue
public Mono
删除匹配 queueName
的队列。
Parameters:
Returns:
deleteQueueWithResponse
public Mono
删除匹配 queueName
项的队列,并返回 HTTP 响应。
Parameters:
Returns:
deleteRule
public Mono
删除匹配 ruleName
的规则。
Parameters:
Returns:
deleteRuleWithResponse
public Mono
删除匹配 ruleName
的规则并返回 HTTP 响应。
Parameters:
Returns:
deleteSubscription
public Mono
删除匹配 subscriptionName
的订阅。
Parameters:
Returns:
deleteSubscriptionWithResponse
public Mono
删除匹配 subscriptionName
的订阅并返回 HTTP 响应。
Parameters:
Returns:
deleteTopic
public Mono
删除匹配 topicName
的主题。
Parameters:
Returns:
deleteTopicWithResponse
public Mono
删除匹配 topicName
的主题并返回 HTTP 响应。
Parameters:
Returns:
getNamespaceProperties
public Mono
获取有关服务总线命名空间的信息。
Returns:
getNamespacePropertiesWithResponse
public Mono
获取有关服务总线命名空间及其 HTTP 响应的信息。
Returns:
getQueue
public Mono
获取有关队列的信息。
Parameters:
Returns:
getQueueExists
public Mono
获取服务总线命名空间中是否存在具有 的 queueName
队列。
Parameters:
Returns:
getQueueExistsWithResponse
public Mono
获取服务总线命名空间中是否存在具有 的 queueName
队列。
Parameters:
Returns:
getQueueRuntimeProperties
public Mono
获取有关队列的运行时属性。
Parameters:
Returns:
getQueueRuntimePropertiesWithResponse
public Mono
获取有关队列的运行时属性及其 HTTP 响应。
Parameters:
Returns:
getQueueWithResponse
public Mono
获取有关队列及其 HTTP 响应的信息。
Parameters:
Returns:
getRule
public Mono
从服务命名空间获取规则。 筛选器和操作参数(string、int、long、boolean、double 和 OffsetDateTime)中仅反序列化以下数据类型。 其他数据类型将返回其字符串值。
Parameters:
Returns:
getRuleWithResponse
public Mono
从服务命名空间获取规则。 筛选器和操作参数(string、int、long、bool、double 和 OffsetDateTime)中仅反序列化以下数据类型。 其他数据类型将返回其字符串值。
Parameters:
Returns:
getSubscription
public Mono
获取有关队列的信息。
Parameters:
Returns:
getSubscriptionExists
public Mono
获取主题中的订阅是否存在。
Parameters:
Returns:
getSubscriptionExistsWithResponse
public Mono
获取主题中的订阅是否存在。
Parameters:
Returns:
getSubscriptionRuntimeProperties
public Mono
获取有关订阅的运行时属性。
Parameters:
Returns:
getSubscriptionRuntimePropertiesWithResponse
public Mono
获取有关订阅的运行时属性。
Parameters:
Returns:
getSubscriptionWithResponse
public Mono
获取有关订阅及其 HTTP 响应的信息。
Parameters:
Returns:
getTopic
public Mono
获取有关主题的信息。
Parameters:
Returns:
getTopicExists
public Mono
获取服务总线命名空间中是否存在具有 的主题 topicName
。
Parameters:
Returns:
getTopicExistsWithResponse
public Mono
获取服务总线命名空间中是否存在具有 的主题 topicName
。
Parameters:
Returns:
getTopicRuntimeProperties
public Mono
获取有关主题的运行时属性。
Parameters:
Returns:
getTopicRuntimePropertiesWithResponse
public Mono
获取主题的运行时属性及其 HTTP 响应。
Parameters:
Returns:
getTopicWithResponse
public Mono
获取有关主题及其 HTTP 响应的信息。
Parameters:
Returns:
listQueues
listRules
public PagedFlux
提取主题和订阅的所有规则。
Parameters:
Returns:
listSubscriptions
public PagedFlux
提取主题的所有订阅。
Parameters:
Returns:
topicName
listTopics
updateQueue
public Mono
使用给定 QueueProperties的 汇报队列。 QueueProperties在替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getQueue(String queueName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
有一部分属性可以更新。 有关详细信息,请参阅以下链接。 它们分别是:
- setDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
- setLockDuration(Duration lockDuration)
- setDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow)
- setMaxDeliveryCount(Integer maxDeliveryCount)
Parameters:
Returns:
updateQueueWithResponse
public Mono
使用给定 QueueProperties的 汇报队列。 QueueProperties在替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getQueue(String queueName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
有一部分属性可以更新。 有关详细信息,请参阅以下链接。 它们分别是:
- setDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
- setLockDuration(Duration lockDuration)
- setDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow)
- setMaxDeliveryCount(Integer maxDeliveryCount)
Parameters:
Returns:
updateRule
public Mono
使用给定 RuleProperties的 汇报规则。 RuleProperties在替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getRule(String topicName, String subscriptionName, String ruleName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
Parameters:
Returns:
updateRuleWithResponse
public Mono
使用给定 RuleProperties的 汇报规则。 RuleProperties替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getRule(String topicName, String subscriptionName, String ruleName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
Parameters:
Returns:
updateSubscription
public Mono
使用给定 SubscriptionProperties的 汇报订阅。 SubscriptionProperties替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getSubscription(String topicName, String subscriptionName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
有一部分属性可以更新。 有关详细信息,请参阅以下链接。 它们分别是:
- setDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
- setLockDuration(Duration lockDuration)
- setMaxDeliveryCount(int maxDeliveryCount)
Parameters:
Returns:
updateSubscriptionWithResponse
public Mono
使用给定 SubscriptionProperties的 汇报订阅。 SubscriptionProperties替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getSubscription(String topicName, String subscriptionName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
有一部分属性可以更新。 有关详细信息,请参阅以下链接。 它们分别是:
- setDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
- setLockDuration(Duration lockDuration)
- setMaxDeliveryCount(int maxDeliveryCount)
Parameters:
Returns:
updateTopic
public Mono
使用给定 TopicProperties的 汇报主题。 TopicProperties替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getTopic(String topicName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
有一部分属性可以更新。 有关详细信息,请参阅以下链接。 它们分别是:
- setDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
- setDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow)
Parameters:
Returns:
updateTopicWithResponse
public Mono
使用给定 TopicProperties的 汇报主题。 TopicProperties替换所有属性时,必须完全填充 。 如果未设置属性,则使用服务默认值。 建议的流为:
- getTopic(String topicName)
- 更新所需的元素。
- 将更新的说明传递到此方法中。
有一部分属性可以更新。 有关详细信息,请参阅以下链接。 它们分别是:
- setDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
- setDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow)
Parameters:
Returns: