/** * Create an instance of {@link Affiliation } * */ public Affiliation createAffiliation() { return new Affiliation(); }
public List<Affiliation> getAffiliationsByType(AffiliationType affiliationType) { List<Affiliation> filteredAffilations = new ArrayList<Affiliation>(); if (affiliation != null && affiliationType != null) { for (Affiliation aff : affiliation) { if (affiliationType.equals(aff.getType())) { filteredAffilations.add(aff); } } } return filteredAffilations; }
/** * Add source to the affiliations * * @param affiliations * The list of affiliations * @param source * The source element */ private void addSourceToAffiliations(Affiliations affiliations, Source source) { for (Affiliation affiliation : affiliations.getAffiliation()) { if (PojoUtil.isEmpty(affiliation.getPutCode())) { affiliation.setSource(source); } } }
Affiliation affiliation = new Affiliation(); affiliation.setPutCode(Long.toString(orgAffiliationRelationEntity.getId())); if(orgAffiliationRelationEntity.getAffiliationType() != null) { affiliation.setType(AffiliationType.valueOf(orgAffiliationRelationEntity.getAffiliationType())); affiliation.setRoleTitle(orgAffiliationRelationEntity.getTitle()); affiliation.setStartDate(startDate != null ? new FuzzyDate(startDate.getYear(), startDate.getMonth(), startDate.getDay()) : null); affiliation.setEndDate(endDate != null ? new FuzzyDate(endDate.getYear(), endDate.getMonth(), endDate.getDay()) : null); affiliation.setVisibility(Visibility.valueOf(orgAffiliationRelationEntity.getVisibility())); affiliation.setDepartmentName(orgAffiliationRelationEntity.getDepartment()); affiliation.setSource(getSource(orgAffiliationRelationEntity)); affiliation.setOrganization(organization); affiliation.setCreatedDate(new CreatedDate(toXMLGregorianCalendar(orgAffiliationRelationEntity.getDateCreated()))); affiliation.setLastModifiedDate(new LastModifiedDate(toXMLGregorianCalendar(orgAffiliationRelationEntity.getLastModified())));
String putCode = affiliation.getPutCode(); if (StringUtils.isNotBlank(putCode) && !"-1".equals(putCode)) { throw new IllegalArgumentException("Invalid put-code was supplied for an affiliation: " + putCode); orgRelationEntity.clean(); FuzzyDate startDate = affiliation.getStartDate(); FuzzyDate endDate = affiliation.getEndDate(); if(affiliation.getType() != null) { orgRelationEntity.setAffiliationType(affiliation.getType().name()); if(affiliation.getVisibility() != null) { orgRelationEntity.setVisibility(affiliation.getVisibility().name()); } else { orgRelationEntity.setVisibility(org.orcid.jaxb.model.common_v2.Visibility.PRIVATE.name()); orgRelationEntity.setDepartment(affiliation.getDepartmentName()); orgRelationEntity.setEndDate(endDate != null ? FuzzyDateUtils.getEndDateEntity(endDate) : null); orgRelationEntity.setOrg(orgEntity); orgRelationEntity.setTitle(affiliation.getRoleTitle()); orgRelationEntity.setStartDate(startDate != null ? FuzzyDateUtils.getStartDateEntity(startDate) : null); if (affiliation.getCreatedDate() != null && affiliation.getCreatedDate().getValue() != null) orgRelationEntity.setDateCreated(affiliation.getCreatedDate().getValue().toGregorianCalendar().getTime()); if (affiliation.getLastModifiedDate() != null && affiliation.getLastModifiedDate().getValue() != null) orgRelationEntity.setLastModified(affiliation.getLastModifiedDate().getValue().toGregorianCalendar().getTime());
@Override public OrgAffiliationRelationEntity getUpdatedAffiliationRelationEntity(Affiliation updatedAffiliation) { if (PojoUtil.isEmpty(updatedAffiliation.getPutCode())) throw new IllegalArgumentException("Affiliation must contain a put code to be edited"); long affiliationId = Long.valueOf(updatedAffiliation.getPutCode()); OrgAffiliationRelationEntity exisitingOrgAffiliationEntity = orgAffiliationRelationDao.find(affiliationId); OrgAffiliationRelationEntity orgAffiliationRelationEntity = getOrgAffiliationRelationEntity(updatedAffiliation, exisitingOrgAffiliationEntity); return orgAffiliationRelationEntity; }
private void checkAndUpdateDisambiguatedOrganization(List<Affiliation> affiliations) { if (affiliations != null && !affiliations.isEmpty()) { for (Affiliation affiliation : affiliations) { Organization org = affiliation.getOrganization(); OrgEntity orgEntity = orgManager.getOrgEntity(org); // If the org exists if (orgEntity != null) { // And it have a disambiguated org if (orgEntity.getOrgDisambiguated() != null) { // Update the desambiguated org org.setDisambiguatedOrganization(adapter.getDisambiguatedOrganization(orgEntity.getOrgDisambiguated())); } else { // Null the disambiguated organization org.setDisambiguatedOrganization(null); } } } } }
private void setAffiliationPrivacy(Affiliations incomingAffiliations, Visibility defaultVisibility, boolean isClaimed) { for (Affiliation incomingAffiliation : incomingAffiliations.getAffiliation()) { if (StringUtils.isBlank(incomingAffiliation.getPutCode())) { choosePrivacy(incomingAffiliation, defaultVisibility, isClaimed); } } }
if (allowPrivateAffiliations && Affiliation.class.isAssignableFrom(clazz)) { Affiliation affiliation = (Affiliation) obj; Source source = affiliation.getSource(); if (source != null) { String sourcePath = source.retrieveSourcePath();
private OrgEntity getOrgEntity(Affiliation affiliation) { if (affiliation != null) { OrgEntity orgEntity = new OrgEntity(); Organization organization = affiliation.getOrganization(); orgEntity.setName(organization.getName()); OrganizationAddress address = organization.getAddress(); orgEntity.setCity(address.getCity()); orgEntity.setRegion(address.getRegion()); orgEntity.setCountry(address.getCountry().name()); if (organization.getDisambiguatedOrganization() != null && organization.getDisambiguatedOrganization().getDisambiguatedOrganizationIdentifier() != null) { orgEntity.setOrgDisambiguated(orgDisambiguatedDao.findBySourceIdAndSourceType(organization.getDisambiguatedOrganization() .getDisambiguatedOrganizationIdentifier(), organization.getDisambiguatedOrganization().getDisambiguationSource())); } return orgManager.createUpdate(orgEntity); } return null; }
for (Affiliation affiliation : affiliations.getAffiliation()) { OrgAffiliationRelationEntity orgRelationEntity = getOrgAffiliationRelationEntity(affiliation, existingOrgAffiliationsEntitiesMap.get(affiliation.getPutCode())); orgRelationEntity.setProfile(profileEntity); updatedOrgAffiliationEntities.add(orgRelationEntity);