当用Java写blobstore时出现警告WARNING

当用Java写blobstore时出现警告WARNING如下:

在这里插入图片描述
运行的原程序是:

package jclouds_swift.jclouds.swift;

import java.util.Properties;

import org.jclouds.ContextBuilder;
import org.jclouds.blobstore.BlobStore;
import org.jclouds.blobstore.BlobStoreContext;
import org.jclouds.blobstore.domain.StorageMetadata;
import org.jclouds.blobstore.domain.StorageType;
import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
import org.jclouds.openstack.keystone.config.KeystoneProperties;
import org.jclouds.openstack.swift.v1.blobstore.RegionScopedBlobStoreContext;

import com.google.common.collect.ImmutableSet;
import com.google.inject.Module;

public class BlobListTest {
	private String endpointString="http://192.168.1.120:5000/v3/";
	private String identityString="Default:demo";
	private String passwordString="8f0928ff047b4498";
	private String providerString="openstack-swift";
	private final BlobStoreContext context;
	private final BlobStore blobStore;
	public BlobListTest() {
		Iterable<Module> modules = ImmutableSet.<Module>of(
	            new SLF4JLoggingModule());

	    final Properties overrides = new Properties();
	    overrides.put(KeystoneProperties.KEYSTONE_VERSION, "3");
	    overrides.put(KeystoneProperties.SCOPE, "project:demo");
		context=ContextBuilder.newBuilder(providerString)
				.credentials(identityString, passwordString)
				.overrides(overrides)
	            //.modules(modules)
				.endpoint(endpointString)
				.buildView(BlobStoreContext.class);
		blobStore=context.getBlobStore();
	}
	public void list(String container) {
		for(StorageMetadata resourceMd:blobStore.list(container)) {
			if(resourceMd.getType()==StorageType.BLOB) {
				System.out.println(resourceMd.getName()+":"+
			resourceMd.getCreationDate());
			}
		}
	}
	public static void main(String[] args) {
		BlobListTest test=new BlobListTest();
		test.list("jclouds-example");
	}
}

若想要修改警告
查询官网上的API后:
由包:org.jclouds.openstack.swift.v1.blobstore中的RegionScopedBlobStoreContext类可知:

在这里插入图片描述
将程序修改成:

package jclouds_swift.jclouds.swift;

import java.util.Properties;

import org.jclouds.ContextBuilder;
import org.jclouds.blobstore.BlobStore;
import org.jclouds.blobstore.BlobStoreContext;
import org.jclouds.blobstore.domain.StorageMetadata;
import org.jclouds.blobstore.domain.StorageType;
import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
import org.jclouds.openstack.keystone.config.KeystoneProperties;
import org.jclouds.openstack.swift.v1.blobstore.RegionScopedBlobStoreContext;

import com.google.common.collect.ImmutableSet;
import com.google.inject.Module;

public class BlobListTest {
	private String endpointString="http://192.168.1.120:5000/v3/";
	private String identityString="Default:demo";
	private String passwordString="8f0928ff047b4498";
	private String providerString="openstack-swift";
	private final RegionScopedBlobStoreContext context;
	private final BlobStore blobStore;
	public BlobListTest() {
		Iterable<Module> modules = ImmutableSet.<Module>of(
	            new SLF4JLoggingModule());

	    final Properties overrides = new Properties();
	    overrides.put(KeystoneProperties.KEYSTONE_VERSION, "3");
	    overrides.put(KeystoneProperties.SCOPE, "project:demo");
		context=ContextBuilder.newBuilder(providerString)
				.credentials(identityString, passwordString)
				.overrides(overrides)
	            //.modules(modules)
				.endpoint(endpointString)
				.buildView(RegionScopedBlobStoreContext.class);
		blobStore=context.getBlobStore("RegionOne");
	}
	public void list(String container) {
		for(StorageMetadata resourceMd:blobStore.list(container)) {
			if(resourceMd.getType()==StorageType.BLOB) {
				System.out.println(resourceMd.getName()+":"+
			resourceMd.getCreationDate());
			}
		}
	}
	public static void main(String[] args) {
		BlobListTest test=new BlobListTest();
		test.list("jclouds-example");
	}
}

将BlobStore换成RegionScopedBlobStoreContext,并加上RegionOne即可。
运行成功后的结果为:

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值