software.amazon.awssdk.services.s3.model.PutBucketPolicyRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of s3 Show documentation
Show all versions of s3 Show documentation
The AWS Java SDK for Amazon S3 module holds the client classes that are used for communicating with
Amazon Simple Storage Service
/*
* Copyright 2012-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file 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 software.amazon.awssdk.services.s3.model;
import javax.annotation.Generated;
import software.amazon.awssdk.AmazonWebServiceRequest;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
/**
*/
@Generated("software.amazon.awssdk:codegen")
public class PutBucketPolicyRequest extends AmazonWebServiceRequest implements
ToCopyableBuilder {
private final String bucket;
private final String contentMD5;
private final String policy;
private PutBucketPolicyRequest(BuilderImpl builder) {
this.bucket = builder.bucket;
this.contentMD5 = builder.contentMD5;
this.policy = builder.policy;
}
/**
* Returns the value of the Bucket property for this object.
*
* @return The value of the Bucket property for this object.
*/
public String bucket() {
return bucket;
}
/**
* Returns the value of the ContentMD5 property for this object.
*
* @return The value of the ContentMD5 property for this object.
*/
public String contentMD5() {
return contentMD5;
}
/**
* The bucket policy as a JSON document.
*
* @return The bucket policy as a JSON document.
*/
public String policy() {
return policy;
}
@Override
public Builder toBuilder() {
return new BuilderImpl(this);
}
public static Builder builder() {
return new BuilderImpl();
}
public static Class extends Builder> serializableBuilderClass() {
return BuilderImpl.class;
}
@Override
public int hashCode() {
int hashCode = 1;
hashCode = 31 * hashCode + ((bucket() == null) ? 0 : bucket().hashCode());
hashCode = 31 * hashCode + ((contentMD5() == null) ? 0 : contentMD5().hashCode());
hashCode = 31 * hashCode + ((policy() == null) ? 0 : policy().hashCode());
return hashCode;
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (!(obj instanceof PutBucketPolicyRequest)) {
return false;
}
PutBucketPolicyRequest other = (PutBucketPolicyRequest) obj;
if (other.bucket() == null ^ this.bucket() == null) {
return false;
}
if (other.bucket() != null && !other.bucket().equals(this.bucket())) {
return false;
}
if (other.contentMD5() == null ^ this.contentMD5() == null) {
return false;
}
if (other.contentMD5() != null && !other.contentMD5().equals(this.contentMD5())) {
return false;
}
if (other.policy() == null ^ this.policy() == null) {
return false;
}
if (other.policy() != null && !other.policy().equals(this.policy())) {
return false;
}
return true;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (bucket() != null) {
sb.append("Bucket: ").append(bucket()).append(",");
}
if (contentMD5() != null) {
sb.append("ContentMD5: ").append(contentMD5()).append(",");
}
if (policy() != null) {
sb.append("Policy: ").append(policy()).append(",");
}
sb.append("}");
return sb.toString();
}
public interface Builder extends CopyableBuilder {
/**
* Sets the value of the Bucket property for this object.
*
* @param bucket
* The new value for the Bucket property for this object.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder bucket(String bucket);
/**
* Sets the value of the ContentMD5 property for this object.
*
* @param contentMD5
* The new value for the ContentMD5 property for this object.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder contentMD5(String contentMD5);
/**
* The bucket policy as a JSON document.
*
* @param policy
* The bucket policy as a JSON document.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder policy(String policy);
}
private static final class BuilderImpl implements Builder {
private String bucket;
private String contentMD5;
private String policy;
private BuilderImpl() {
}
private BuilderImpl(PutBucketPolicyRequest model) {
setBucket(model.bucket);
setContentMD5(model.contentMD5);
setPolicy(model.policy);
}
public final String getBucket() {
return bucket;
}
@Override
public final Builder bucket(String bucket) {
this.bucket = bucket;
return this;
}
public final void setBucket(String bucket) {
this.bucket = bucket;
}
public final String getContentMD5() {
return contentMD5;
}
@Override
public final Builder contentMD5(String contentMD5) {
this.contentMD5 = contentMD5;
return this;
}
public final void setContentMD5(String contentMD5) {
this.contentMD5 = contentMD5;
}
public final String getPolicy() {
return policy;
}
@Override
public final Builder policy(String policy) {
this.policy = policy;
return this;
}
public final void setPolicy(String policy) {
this.policy = policy;
}
@Override
public PutBucketPolicyRequest build() {
return new PutBucketPolicyRequest(this);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy