下面列出了怎么用com.amazonaws.services.s3.model.lifecycle.LifecycleFilter的API类实例代码及写法,或者点击链接到github查看源代码。
BucketLifecycleConfiguration makeLifecycleConfiguration(BucketLifecycleConfiguration existing, int expirationInDays) {
BucketLifecycleConfiguration.Rule rule = new BucketLifecycleConfiguration.Rule()
.withId(LIFECYCLE_EXPIRATION_RULE_ID)
.withFilter(new LifecycleFilter(
new LifecycleTagPredicate(DELETED_TAG)))
.withExpirationInDays(expirationInDays)
.withStatus(BucketLifecycleConfiguration.ENABLED.toString());
if (existing != null) {
existing.getRules().add(rule);
return existing;
} else {
return new BucketLifecycleConfiguration().withRules(rule);
}
}
private BucketLifecycleConfiguration.Rule createExpirationRule(String id, String prefix,
int expiration) {
return new BucketLifecycleConfiguration.Rule()
.withId(id)
.withFilter(new LifecycleFilter(new LifecyclePrefixPredicate(prefix)))
.withExpirationInDays(expiration)
.withStatus(BucketLifecycleConfiguration.ENABLED);
}
@Override
protected void doStartElement(
String uri,
String name,
String qName,
Attributes attrs) {
if (in("LifecycleConfiguration")) {
if (name.equals("Rule")) {
currentRule = new Rule();
}
} else if (in("LifecycleConfiguration", "Rule")) {
if (name.equals("Transition")) {
currentTransition = new Transition();
} else if (name.equals("NoncurrentVersionTransition")) {
currentNcvTransition = new NoncurrentVersionTransition();
} else if (name.equals("AbortIncompleteMultipartUpload")) {
abortIncompleteMultipartUpload = new
AbortIncompleteMultipartUpload();
} else if (name.equals("Filter")) {
currentFilter = new LifecycleFilter();
}
} else if (in("LifecycleConfiguration", "Rule", "Filter")) {
if (name.equals("And")) {
andOperandsList = new ArrayList<LifecycleFilterPredicate>();
}
}
}