更新时间:2025-08-18 15:54:14
您可以通过WosClient.listBuckets列举存储空间。以下代码展示如何获取空间列表:
String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// 创建WosClient实例
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);
// 列举空间
List<WosBucket> buckets = wosClient.listBuckets();
for(WosBucket bucket : buckets){
System.out.println("BucketName:" + bucket.getBucketName());
System.out.println("CreationDate:" + bucket.getCreationDate());
System.out.println("Endpoint:" + bucket.getEndpoint());
}
说明:返回的空间列表将按存储空间名字典序排列。
您可通过WosClient.headBucket判断空间是否存在。以下代码展示如何判断指定空间是否存在:
String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// 创建WosClient实例
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);
boolean exists = wosClient.headBucket("bucketname");
WOS允许您对空间设置生命周期规则,实现自动转换对象的存储类型、自动淘汰过期的对象,以有效利用存储特性,优化存储空间。针对不同前缀的对象,您可以同时设置多条规则。一条规则包含:
您可以通过WosClient.setBucketLifecycleConfiguration设置空间的生命周期规则。
String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// 创建WosClient实例
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);
final String ruleId = "delete obsoleted files";
final String matchPrefix = "obsoleted/";
StringBuffer sb = new StringBuffer();
LifecycleConfiguration lifecycleConfig = new LifecycleConfiguration();
LifecycleConfiguration.Rule rule = lifecycleConfig.new Rule();
rule.setEnabled(true);
rule.setId(ruleId);
rule.setPrefix(matchPrefix);
LifecycleConfiguration.Expiration expiration = lifecycleConfig.new Expiration();
expiration.setDays(10);
rule.setExpiration(expiration);
lifecycleConfig.addRule(rule);
sb.append("Setting bucket lifecycle\n\n");
HeaderResponse headerResponse = wosClient.setBucketLifecycleConfiguration(bucketName, lifecycleConfig);
System.out.println(headerResponse);
您可以通过WosClient.getBucketLifecycle查看空间的生命周期规则。以下代码展示了如何查看空间的生命周期规则:
String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// 创建WosClient实例
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);
LifecycleConfiguration config = wosClient.getBucketLifecycle("bucketname");
for (Rule rule : config.getRules())
{
System.out.println(rule.getId());
System.out.println(rule.getPrefix());
for(Transition transition : rule.getTransitions()){
System.out.println(transition.getDays());
System.out.println(transition.getStorageClass());
}
System.out.println(rule.getExpiration() != null ? rule.getExpiration().getDays() : "");
}
您可以通过WosClient.deleteBucketLifecycle删除空间的生命周期规则。以下代码展示了如何删除空间的生命周期规则:
String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// 创建WosClient实例
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);
wosClient.deleteBucketLifecycle("bucketname");