@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((CFDANo == null) ? 0 : CFDANo.hashCode()); result = prime * result + ((PIEligibilityWaiver == null) ? 0 : PIEligibilityWaiver.hashCode()); long temp; temp = Double.doubleToLongBits(PIFringe); result = prime * result + (int) (temp ^ (temp >>> 32)); temp = Double.doubleToLongBits(PISalary); result = prime * result + (int) (temp ^ (temp >>> 32)); result = prime * result + ((anticipatedSubRecipientsNames == null) ? 0 : anticipatedSubRecipientsNames.hashCode()); result = prime * result + ((baseInfo == null) ? 0 : baseInfo.hashCode()); result = prime * result + ((conflictOfInterestForms == null) ? 0 : conflictOfInterestForms.hashCode()); result = prime * result + ((departmentId == null) ? 0 : departmentId.hashCode()); result = prime * result + ((excludedPartyListChecked == null) ? 0 : excludedPartyListChecked.hashCode()); result = prime * result + ((fundingSource == null) ? 0 : fundingSource.hashCode()); result = prime * result + ((institutionalCostDocumented == null) ? 0 : institutionalCostDocumented.hashCode()); result = prime * result + (isAnticipatedSubRecipients ? 1231 : 1237); result = prime * result + (isPISalaryIncluded ? 1231 : 1237); result = prime * result + ((listAgency == null) ? 0 : listAgency.hashCode()); result = prime * result + ((programNo == null) ? 0 : programNo.hashCode()); result = prime * result + ((programTitle == null) ? 0 : programTitle.hashCode()); result = prime * result + ((proposalNotes == null) ? 0 : proposalNotes.hashCode()); result = prime * result + ((recovery == null) ? 0 : recovery.hashCode()); result = prime * result + ((researchAdministrator == null) ? 0 : researchAdministrator.hashCode()); result = prime * result + ((thirdPartyCostDocumented == null) ? 0 : thirdPartyCostDocumented.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; OSPSectionInfo other = (OSPSectionInfo) obj; if (CFDANo == null) { if (other.CFDANo != null) return false; } else if (!CFDANo.equals(other.CFDANo)) return false; if (PIEligibilityWaiver == null) { if (other.PIEligibilityWaiver != null) return false; } else if (!PIEligibilityWaiver.equals(other.PIEligibilityWaiver)) return false; if (Double.doubleToLongBits(PIFringe) != Double.doubleToLongBits(other.PIFringe)) return false; if (Double.doubleToLongBits(PISalary) != Double.doubleToLongBits(other.PISalary)) return false; if (anticipatedSubRecipientsNames == null) { if (other.anticipatedSubRecipientsNames != null) return false; } else if (!anticipatedSubRecipientsNames.equals(other.anticipatedSubRecipientsNames)) return false; if (baseInfo == null) { if (other.baseInfo != null) return false; } else if (!baseInfo.equals(other.baseInfo)) return false; if (conflictOfInterestForms == null) { if (other.conflictOfInterestForms != null) return false; } else if (!conflictOfInterestForms.equals(other.conflictOfInterestForms)) return false; if (departmentId == null) { if (other.departmentId != null) return false; } else if (!departmentId.equals(other.departmentId)) return false; if (excludedPartyListChecked == null) { if (other.excludedPartyListChecked != null) return false; } else if (!excludedPartyListChecked.equals(other.excludedPartyListChecked)) return false; if (fundingSource == null) { if (other.fundingSource != null) return false; } else if (!fundingSource.equals(other.fundingSource)) return false; if (institutionalCostDocumented == null) { if (other.institutionalCostDocumented != null) return false; } else if (!institutionalCostDocumented.equals(other.institutionalCostDocumented)) return false; if (isAnticipatedSubRecipients != other.isAnticipatedSubRecipients) return false; if (isPISalaryIncluded != other.isPISalaryIncluded) return false; if (listAgency == null) { if (other.listAgency != null) return false; } else if (!listAgency.equals(other.listAgency)) return false; if (programNo == null) { if (other.programNo != null) return false; } else if (!programNo.equals(other.programNo)) return false; if (programTitle == null) { if (other.programTitle != null) return false; } else if (!programTitle.equals(other.programTitle)) return false; if (proposalNotes == null) { if (other.proposalNotes != null) return false; } else if (!proposalNotes.equals(other.proposalNotes)) return false; if (recovery == null) { if (other.recovery != null) return false; } else if (!recovery.equals(other.recovery)) return false; if (researchAdministrator == null) { if (other.researchAdministrator != null) return false; } else if (!researchAdministrator.equals(other.researchAdministrator)) return false; if (thirdPartyCostDocumented == null) { if (other.thirdPartyCostDocumented != null) return false; } else if (!thirdPartyCostDocumented.equals(other.thirdPartyCostDocumented)) return false; return true; }