@Override public boolean equals( Object o ) { if ( this == o ) return true; if ( o == null || getClass() != o.getClass() ) return false; final Range range = ( Range ) o; if ( begin != null ? !begin.equals( range.begin ) : range.begin != null ) return false; if ( beginInterval != null ? !beginInterval.equals( range.beginInterval ) : range.beginInterval != null ) return false; if ( end != null ? !end.equals( range.end ) : range.end != null ) return false; if ( endInterval != null ? !endInterval.equals( range.endInterval ) : range.endInterval != null ) return false; if ( !endStatus.equals( range.endStatus ) ) return false; if ( isLink != null ? !isLink.equals( range.isLink ) : range.isLink != null ) return false; if ( !startStatus.equals( range.startStatus ) ) return false; return true; }
private boolean isStatusOfType( RangeStatus status, String psimiName, String psimiIdentifier ) { boolean hasMiNumber = false; if (status.getXref() != null){ if (status.getXref().getPrimaryRef() != null){ final DbReference ref = status.getXref().getPrimaryRef(); if (ref.getDbAc() != null){ if (ref.getDbAc().equals(CvDatabase.PSI_MI_MI_REF)){ hasMiNumber = true; } else if (ref.getDb().equalsIgnoreCase(CvDatabase.PSI_MI)){ hasMiNumber = true; } } } } if ( status.getXref() != null && psimiIdentifier != null && hasMiNumber) { final DbReference ref = status.getXref().getPrimaryRef(); return psimiIdentifier.equalsIgnoreCase( ref.getId() ); } else if (status.getNames() != null){ final Names names = status.getNames(); return psimiName.equalsIgnoreCase(names.getShortLabel()) || psimiName.equalsIgnoreCase(names.getFullName()); } return false; }
@Override public int hashCode() { int result; result = startStatus.hashCode(); result = 29 * result + ( begin != null ? begin.hashCode() : 0 ); result = 29 * result + ( beginInterval != null ? beginInterval.hashCode() : 0 ); result = 29 * result + endStatus.hashCode(); result = 29 * result + ( end != null ? end.hashCode() : 0 ); result = 29 * result + ( endInterval != null ? endInterval.hashCode() : 0 ); result = 29 * result + ( isLink != null ? isLink.hashCode() : 0 ); return result; } }
RangeStatus status = new RangeStatus(); status.setNames(names); status.setXref(xref);