/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package qa.qcri.aidr.predictui.entities; import java.io.Serializable; import java.util.Collection; import javax.persistence.Basic; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.OneToMany; import javax.persistence.Table; import javax.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; //import org.codehaus.jackson.annotate.JsonBackReference; //import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.annotate.JsonIgnoreProperties; //import org.codehaus.jackson.annotate.JsonManagedReference; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnore; //import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonManagedReference; /** * * @author Imran */ @XmlRootElement @JsonIgnoreProperties(ignoreUnknown=true) public class ModelFamily implements Serializable { private static final long serialVersionUID = 1L; @XmlElement private Integer modelFamilyID; @XmlElement private boolean isActive; @JsonManagedReference private Collection<Model> modelCollection; @JsonBackReference private NominalAttribute nominalAttribute; @JsonBackReference private Crisis crisis; public ModelFamily() { } public ModelFamily(Integer modelFamilyID) { this.modelFamilyID = modelFamilyID; } public ModelFamily(Integer modelFamilyID, boolean isActive) { this.modelFamilyID = modelFamilyID; this.isActive = isActive; } public Integer getModelFamilyID() { return modelFamilyID; } public void setModelFamilyID(Integer modelFamilyID) { this.modelFamilyID = modelFamilyID; } public boolean getIsActive() { return isActive; } public void setIsActive(boolean isActive) { this.isActive = isActive; } @XmlTransient @JsonIgnore public Collection<Model> getModelCollection() { return modelCollection; } public void setModelCollection(Collection<Model> modelCollection) { this.modelCollection = modelCollection; } public NominalAttribute getNominalAttribute() { return nominalAttribute; } public void setNominalAttribute(NominalAttribute nominalAttribute) { this.nominalAttribute = nominalAttribute; } // public Model getModel() { // return model; // } // // public void setModel(Model model) { // this.model = model; // } @XmlTransient @JsonIgnore public Crisis getCrisis() { return crisis; } public void setCrisis(Crisis crisis) { this.crisis = crisis; } @Override public int hashCode() { int hash = 0; hash += (modelFamilyID != null ? modelFamilyID.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof ModelFamily)) { return false; } ModelFamily other = (ModelFamily) object; if ((this.modelFamilyID == null && other.modelFamilyID != null) || (this.modelFamilyID != null && !this.modelFamilyID.equals(other.modelFamilyID))) { return false; } return true; } @Override public String toString() { return "qa.qcri.aidr.predictui.entities.ModelFamily[ modelFamilyID=" + modelFamilyID + " ]"; } }