io.minio.messages.ObjectLockConfiguration Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of minio Show documentation
Show all versions of minio Show documentation
MinIO Java SDK for Amazon S3 Compatible Cloud Storage
The newest version!
/*
* MinIO Java SDK for Amazon S3 Compatible Cloud Storage, (C) 2019 MinIO, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.minio.messages;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.Namespace;
import org.simpleframework.xml.Root;
/**
* Object representation of request XML of PutObjectLockConfiguration
* API and response XML of GetObjectLockConfiguration
* API.
*/
@Root(name = "ObjectLockConfiguration", strict = false)
@Namespace(reference = "http://s3.amazonaws.com/doc/2006-03-01/")
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(value = "URF_UNREAD_FIELD")
public class ObjectLockConfiguration {
@Element(name = "ObjectLockEnabled")
private String objectLockEnabled = "Enabled";
@Element(name = "Rule", required = false)
private Rule rule;
public ObjectLockConfiguration() {}
/** Constructs a new ObjectLockConfiguration object with given retention. */
public ObjectLockConfiguration(RetentionMode mode, RetentionDuration duration)
throws IllegalArgumentException {
this.rule = new Rule(mode, duration);
}
/** Returns retention mode. */
public RetentionMode mode() {
return (rule != null) ? rule.mode() : null;
}
/** Returns retention duration. */
public RetentionDuration duration() {
return (rule != null) ? rule.duration() : null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy