/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package edu.asu.spring.quadriga.dto; import java.util.Date; import javax.persistence.Entity; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; /** *This class represents the column mappings for project collaborator *table. * @author Karthik */ @Entity @Table(name = "tbl_project_collaborator") @XmlRootElement @NamedQueries({ @NamedQuery(name = "ProjectCollaboratorDTO.findAll", query = "SELECT p FROM ProjectCollaboratorDTO p"), @NamedQuery(name = "ProjectCollaboratorDTO.findByProjectid", query = "SELECT p FROM ProjectCollaboratorDTO p WHERE p.collaboratorDTOPK.projectid = :projectid"), @NamedQuery(name = "ProjectCollaboratorDTO.findByCollaboratoruser", query = "SELECT p FROM ProjectCollaboratorDTO p WHERE p.collaboratorDTOPK.collaboratoruser = :collaboratoruser"), @NamedQuery(name = "ProjectCollaboratorDTO.findByCollaboratorrole", query = "SELECT p FROM ProjectCollaboratorDTO p WHERE p.collaboratorDTOPK.collaboratorrole = :collaboratorrole"), }) public class ProjectCollaboratorDTO extends CollaboratorDTO<ProjectCollaboratorDTOPK, ProjectCollaboratorDTO> { private static final long serialVersionUID = 1L; @JoinColumn(name = "projectid", referencedColumnName = "projectid", insertable = false, updatable = false) @ManyToOne(optional = false) private ProjectDTO projectDTO; public ProjectCollaboratorDTO() { } public ProjectCollaboratorDTO(ProjectCollaboratorDTOPK projectCollaboratorDTOPK, String updatedby, Date updateddate, String createdby, Date createddate) { this.collaboratorDTOPK = projectCollaboratorDTOPK; this.updatedby = updatedby; this.updateddate = updateddate; this.createdby = createdby; this.createddate = createddate; } public ProjectCollaboratorDTO(String projectid, String collaboratoruser, String collaboratorrole, String updatedby, Date updateddate, String createdby, Date createddate) { this.collaboratorDTOPK = new ProjectCollaboratorDTOPK(projectid, collaboratoruser, collaboratorrole); this.updatedby = updatedby; this.updateddate = updateddate; this.createdby = createdby; this.createddate = createddate; } public ProjectDTO getProjectDTO() { return projectDTO; } public void setProjectDTO(ProjectDTO projectDTO) { this.projectDTO = projectDTO; } @Override public int hashCode() { int hash = 0; hash += (collaboratorDTOPK != null ? collaboratorDTOPK.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { if (!(object instanceof ProjectCollaboratorDTO)) { return false; } ProjectCollaboratorDTO other = (ProjectCollaboratorDTO) object; if ((this.collaboratorDTOPK == null && other.collaboratorDTOPK != null) || (this.collaboratorDTOPK != null && !this.collaboratorDTOPK.equals(other.collaboratorDTOPK))) { return false; } return true; } @Override public void setRelatedDTO( CollaboratingDTO<ProjectCollaboratorDTOPK, ProjectCollaboratorDTO> relatedDto) { projectDTO = (ProjectDTO) relatedDto; } }