适用于Azure Blob的JClouds

时间:2011-11-16 05:00:38

标签: azure location azure-storage azure-storage-blobs jclouds

我找不到有关如何使用JClouds创建具有特定位置(新加坡)的新容器/存储桶的示例。我在google上找到的所有示例都使用null作为默认位置。

azureBlobStore.createContainerInLocation(null,containerName);

你们中的任何人,JClouds的老兵,能帮助我吗?

2 个答案:

答案 0 :(得分:1)

我没有使用过JClouds,但只是查看了Azure存储的文档。他们展示的第一件事是创建一个blob上下文:

BlobStoreContext context = new BlobStoreContextFactory().createContext("azureblob", accesskeyid, secretkey);

根据Javadocs,参数是提供者,身份和凭证。在这种情况下,您可能需要将存储帐户和密钥从Windows Azure门户传递到第二个和第三个参数。执行此操作后,您的位置将设置为您设置存储帐户的数据中心(在Windows Azure中,存储帐户在创建时与特定数据中心相关联 - 然后在此创建所有容器和对象数据中心)。设置Azure blob容器时,我认为Location参数没有意义。该Location参数可以为空,因为它仅适用于基于该提供程序API的云提供程序子集(有关详细信息,请参阅Javadocs)。

答案 1 :(得分:0)

前几天我正在寻找同样的答案,只想回应大卫所说的话。以下是jclouds 1.5

中AzureBlobStore.java的代码
   @Override
   public boolean createContainerInLocation(Location location, String container) {
      return sync.createContainer(container);
   }

如您所见,该位置将被忽略,因为您的Azure帐户已绑定到特定位置。