package tw.com.entity;
public class ProjectAndEnv {
private String project;
private String env;
private Integer buildNumber = null;
private boolean useSns;
private String s3Bucket;
private boolean useCapabilityIAM;
private String comment = "";
public ProjectAndEnv(String project, String env) {
useSns = false;
this.project = project;
this.env = env;
}
public String getProject() {
return project;
}
public String getEnv() {
return env;
}
@Override
public String toString() {
return "ProjectAndEnv [project=" + project + ", env=" + env
+ ", buildNumber=" + buildNumber + ", useArn=" + useSns + ", useCapabilityIAM = " + useCapabilityIAM + "]";
}
public void addBuildNumber(Integer buildNumber) {
this.buildNumber = buildNumber;
}
public Integer getBuildNumber() {
return buildNumber;
}
public boolean useSNS() {
return useSns;
}
public void setUseSNS() {
useSns = true;
}
public EnvironmentTag getEnvTag() {
return new EnvironmentTag(env);
}
public boolean hasProject() {
return project!=null && !project.isEmpty();
}
public boolean hasEnv() {
return !env.isEmpty();
}
public boolean hasBucketName() {
return s3Bucket!=null && !s3Bucket.isEmpty();
}
public boolean hasBuildNumber() {
return buildNumber!=null;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result
+ ((buildNumber == null) ? 0 : buildNumber.hashCode());
result = prime * result + ((env == null) ? 0 : env.hashCode());
result = prime * result + ((project == null) ? 0 : project.hashCode());
result = prime * result + (useCapabilityIAM ? 1231 : 1237);
result = prime * result + (useSns ? 1231 : 1237);
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
ProjectAndEnv other = (ProjectAndEnv) obj;
if (buildNumber == null) {
if (other.buildNumber != null)
return false;
} else if (!buildNumber.equals(other.buildNumber))
return false;
if (env == null) {
if (other.env != null)
return false;
} else if (!env.equals(other.env))
return false;
if (project == null) {
if (other.project != null)
return false;
} else if (!project.equals(other.project))
return false;
if (useCapabilityIAM != other.useCapabilityIAM)
return false;
if (useSns != other.useSns)
return false;
return true;
}
public void setS3Bucket(String s3Bucket) {
this.s3Bucket = s3Bucket;
}
public String getS3Bucket() {
return s3Bucket;
}
public void setUseCapabilityIAM() {
useCapabilityIAM = true;
}
public boolean useCapabilityIAM() {
return useCapabilityIAM;
}
public void setComment(String comment) {
this.comment = comment;
}
public boolean hasComment() {
return !comment.isEmpty();
}
public String getComment() {
return comment;
}
}