最終更新日: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/";
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);
System.out.println("Setting bucket lifecycle\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");