Azure根据请求ID java sdk获取操作状态

时间:2015-11-02 03:23:22

标签: java azure azure-resource-manager

在Azure资源组java API中,没有基于请求ID获取操作状态的功能。现在在sdk中获取操作状态的方法是什么?

服务管理API中存在类似的功能,例如服务管理客户端: http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/management/compute/ComputeManagementClient.html#getOperationStatus-java.lang.String-

客户端中不存在类似的功能: http://azure.github.io/azure-sdk-for-java/com/microsoft/azure/management/compute/VirtualMachineOperations.html

我看到了类似的功能:

  

LongRunningOperationResponse getLongRunningOperationStatus(java.lang.String   operationStatusLink)

Get Operation Status操作返回指定操作的状态。

如何生成operationStatusLink?

1 个答案:

答案 0 :(得分:0)

我检查了Azure参考文档,发现Asynchronous Request (classic) REST的引用包含Get Operation Status REST API,需要<subscription-id><request-id>和请求标头{{1用于服务管理。请参阅https://msdn.microsoft.com/en-us/library/azure/ee460783.aspx

然后,我查看了Azure SDK的JavaDocs,找到了类x-ms-versioncom.microsoft.windowsazure.core.OperationStatusResponse。它们具有返回枚举com.microsoft.windowsazure.core.AzureAsyncOperationResponse之一的函数getStatus()。  有关详细信息,请参阅http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/core/OperationStatusResponse.htmlhttp://azure.github.io/azure-sdk-for-java/com/microsoft/azure/management/network/models/AzureAsyncOperationResponse.html以及http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/core/OperationStatus.html

它们适用于Azure服务管理。因此,您需要从maven repo com.microsoft.windowsazure.core.OperationStatus http://mvnrepository.com/artifact/com.microsoft.azure/azure-svc-mgmt/0.9.0导入这些类,请参阅下面的maven配置:

azure-svc-mgmt

使用类<dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure-svc-mgmt</artifactId> <version>0.9.0</version> </dependency> 的函数OperationStatusResponse getOperationStatus(String requestId)来获取对象com.microsoft.windowsazure.management.ManagementClient以获得您的需求。请参阅http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/management/ManagementClient.html

最诚挚的问候。