/* * Hibernate OGM, Domain model persistence for NoSQL datastores * * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.ogm.backendtck.embeddable; import javax.persistence.Embeddable; import javax.persistence.Table; /** * Identify an issue on JIRA. * <p> * Example: OGM-1243 * * @author Davide D'Alto */ @Embeddable @Table(name = JiraIssue.LABEL) public class JiraIssue { public static final String LABEL = "JIRA_ISSUE"; private Integer number; private String project; public JiraIssue() { } public JiraIssue(Integer number, String project) { this.number = number; this.project = project; } public String getProject() { return project; } public void setProject(String project) { this.project = project; } public Integer getNumber() { return number; } public void setNumber(Integer number) { this.number = number; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ( ( number == null ) ? 0 : number.hashCode() ); result = prime * result + ( ( project == null ) ? 0 : project.hashCode() ); return result; } @Override public boolean equals(Object obj) { if ( this == obj ) { return true; } if ( obj == null ) { return false; } if ( getClass() != obj.getClass() ) { return false; } JiraIssue other = (JiraIssue) obj; if ( number == null ) { if ( other.number != null ) { return false; } } else if ( !number.equals( other.number ) ) { return false; } if ( project == null ) { if ( other.project != null ) { return false; } } else if ( !project.equals( other.project ) ) { return false; } return true; } @Override public String toString() { return project + "-" + number; } }