package net.sourceforge.seqware.common.model; import java.io.Serializable; import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apache.commons.lang3.builder.ToStringBuilder; /** * <p> * ExperimentSpotDesignReadSpec class. * </p> * * @author boconnor * @version $Id: $Id */ public class ExperimentSpotDesignReadSpec implements Serializable, Comparable<ExperimentSpotDesignReadSpec>, SecondTierModel { /** * LEFT OFF WITH: FINSIH THIS OBJECT */ private static final long serialVersionUID = 17328392935613893L; private Integer experimentSpotDesignReadSpecId; private ExperimentSpotDesign experimentSpotDesign; private Integer readIndex; private String readLabel; private String readClass; private String readType; private Integer baseCoord; private Integer cycleCoord; private Integer length; // FIXME: what is this!? Is this where I would store tags!? private String expectedBaseCall; /** * <p> * Constructor for ExperimentSpotDesignReadSpec. * </p> */ public ExperimentSpotDesignReadSpec() { super(); } /** * {@inheritDoc} * * @param that */ @Override public int compareTo(ExperimentSpotDesignReadSpec that) { if (that == null) return -1; if (that.getExperimentSpotDesignReadSpecId() == null && this.getExperimentSpotDesignReadSpecId() == null) // when both names are // null return 0; if (that.getExperimentSpotDesignReadSpecId() == null) return -1; // when only the other name is null return (that.getExperimentSpotDesignReadSpecId().compareTo(this.getExperimentSpotDesignReadSpecId())); } /** {@inheritDoc} */ @Override public String toString() { return new ToStringBuilder(this).append("experimentSpotDesignReadSpecId", getExperimentSpotDesignReadSpecId()).toString(); } /** * {@inheritDoc} * * @param other */ @Override public boolean equals(Object other) { if ((this == other)) return true; if (!(other instanceof ExperimentSpotDesignReadSpec)) return false; ExperimentSpotDesignReadSpec castOther = (ExperimentSpotDesignReadSpec) other; return new EqualsBuilder().append(this.getExperimentSpotDesignReadSpecId(), castOther.getExperimentSpotDesignReadSpecId()) .isEquals(); } /** {@inheritDoc} */ @Override public int hashCode() { return new HashCodeBuilder().append(getExperimentSpotDesignReadSpecId()).toHashCode(); } /** * <p> * Getter for the field <code>length</code>. * </p> * * @return a {@link java.lang.Integer} object. */ public Integer getLength() { return length; } /** * <p> * Setter for the field <code>length</code>. * </p> * * @param length * a {@link java.lang.Integer} object. */ public void setLength(Integer length) { this.length = length; } /** * <p> * Getter for the field <code>experimentSpotDesignReadSpecId</code>. * </p> * * @return a {@link java.lang.Integer} object. */ public Integer getExperimentSpotDesignReadSpecId() { return experimentSpotDesignReadSpecId; } /** * <p> * Setter for the field <code>experimentSpotDesignReadSpecId</code>. * </p> * * @param experimentSpotDesignReadSpecId * a {@link java.lang.Integer} object. */ public void setExperimentSpotDesignReadSpecId(Integer experimentSpotDesignReadSpecId) { this.experimentSpotDesignReadSpecId = experimentSpotDesignReadSpecId; } /** * <p> * Getter for the field <code>experimentSpotDesign</code>. * </p> * * @return a {@link net.sourceforge.seqware.common.model.ExperimentSpotDesign} object. */ public ExperimentSpotDesign getExperimentSpotDesign() { return experimentSpotDesign; } /** * <p> * Setter for the field <code>experimentSpotDesign</code>. * </p> * * @param experimentSpotDesign * a {@link net.sourceforge.seqware.common.model.ExperimentSpotDesign} object. */ public void setExperimentSpotDesign(ExperimentSpotDesign experimentSpotDesign) { this.experimentSpotDesign = experimentSpotDesign; } /** * <p> * Getter for the field <code>readIndex</code>. * </p> * * @return a {@link java.lang.Integer} object. */ public Integer getReadIndex() { return readIndex; } /** * <p> * Setter for the field <code>readIndex</code>. * </p> * * @param readIndex * a {@link java.lang.Integer} object. */ public void setReadIndex(Integer readIndex) { this.readIndex = readIndex; } /** * <p> * Getter for the field <code>readLabel</code>. * </p> * * @return a {@link java.lang.String} object. */ public String getReadLabel() { return readLabel; } /** * <p> * Setter for the field <code>readLabel</code>. * </p> * * @param readLabel * a {@link java.lang.String} object. */ public void setReadLabel(String readLabel) { this.readLabel = readLabel; } /** * <p> * Getter for the field <code>readClass</code>. * </p> * * @return a {@link java.lang.String} object. */ public String getReadClass() { return readClass; } /** * <p> * Setter for the field <code>readClass</code>. * </p> * * @param readClass * a {@link java.lang.String} object. */ public void setReadClass(String readClass) { this.readClass = readClass; } /** * <p> * Getter for the field <code>readType</code>. * </p> * * @return a {@link java.lang.String} object. */ public String getReadType() { return readType; } /** * <p> * Setter for the field <code>readType</code>. * </p> * * @param readType * a {@link java.lang.String} object. */ public void setReadType(String readType) { this.readType = readType; } /** * <p> * Getter for the field <code>baseCoord</code>. * </p> * * @return a {@link java.lang.Integer} object. */ public Integer getBaseCoord() { return baseCoord; } /** * <p> * Setter for the field <code>baseCoord</code>. * </p> * * @param baseCoord * a {@link java.lang.Integer} object. */ public void setBaseCoord(Integer baseCoord) { this.baseCoord = baseCoord; } /** * <p> * Getter for the field <code>cycleCoord</code>. * </p> * * @return a {@link java.lang.Integer} object. */ public Integer getCycleCoord() { return cycleCoord; } /** * <p> * Setter for the field <code>cycleCoord</code>. * </p> * * @param cycleCoord * a {@link java.lang.Integer} object. */ public void setCycleCoord(Integer cycleCoord) { this.cycleCoord = cycleCoord; } /** * <p> * Getter for the field <code>expectedBaseCall</code>. * </p> * * @return a {@link java.lang.String} object. */ public String getExpectedBaseCall() { return expectedBaseCall; } /** * <p> * Setter for the field <code>expectedBaseCall</code>. * </p> * * @param expectedBaseCall * a {@link java.lang.String} object. */ public void setExpectedBaseCall(String expectedBaseCall) { this.expectedBaseCall = expectedBaseCall; } @Override public int getModelId() { return this.getExperimentSpotDesignReadSpecId(); } }