
shiver.me.timbers.aws.codebuild.ProjectS3LogsConfig Maven / Gradle / Ivy
package shiver.me.timbers.aws.codebuild;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import shiver.me.timbers.aws.Property;
/**
* ProjectS3LogsConfig
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html
*
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonPropertyOrder({
"Status",
"EncryptionDisabled",
"Location"
})
public class ProjectS3LogsConfig implements Property
{
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-status
*
*/
@JsonProperty("Status")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-status")
private CharSequence status;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-encryptiondisabled
*
*/
@JsonProperty("EncryptionDisabled")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-encryptiondisabled")
private CharSequence encryptionDisabled;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-location
*
*/
@JsonProperty("Location")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-location")
private CharSequence location;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-status
*
*/
@JsonIgnore
public CharSequence getStatus() {
return status;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-status
*
*/
@JsonIgnore
public void setStatus(CharSequence status) {
this.status = status;
}
public ProjectS3LogsConfig withStatus(CharSequence status) {
this.status = status;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-encryptiondisabled
*
*/
@JsonIgnore
public CharSequence getEncryptionDisabled() {
return encryptionDisabled;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-encryptiondisabled
*
*/
@JsonIgnore
public void setEncryptionDisabled(CharSequence encryptionDisabled) {
this.encryptionDisabled = encryptionDisabled;
}
public ProjectS3LogsConfig withEncryptionDisabled(CharSequence encryptionDisabled) {
this.encryptionDisabled = encryptionDisabled;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-location
*
*/
@JsonIgnore
public CharSequence getLocation() {
return location;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-location
*
*/
@JsonIgnore
public void setLocation(CharSequence location) {
this.location = location;
}
public ProjectS3LogsConfig withLocation(CharSequence location) {
this.location = location;
return this;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("status", status).append("encryptionDisabled", encryptionDisabled).append("location", location).toString();
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(encryptionDisabled).append(location).append(status).toHashCode();
}
@Override
public boolean equals(Object other) {
if (other == this) {
return true;
}
if ((other instanceof ProjectS3LogsConfig) == false) {
return false;
}
ProjectS3LogsConfig rhs = ((ProjectS3LogsConfig) other);
return new EqualsBuilder().append(encryptionDisabled, rhs.encryptionDisabled).append(location, rhs.location).append(status, rhs.status).isEquals();
}
}