use of org.orcid.jaxb.model.record_rc4.PersonalDetails in project ORCID-Source by ORCID.
the class ValidateV2RC4SamplesTest method testMarshallPersonalDetails.
@Test
public void testMarshallPersonalDetails() throws JAXBException, SAXException, URISyntaxException {
PersonalDetails object = (PersonalDetails) unmarshallFromPath("/record_2.0_rc4/samples/personal-details-2.0_rc4.xml", PersonalDetails.class);
marshall(object, "/record_2.0_rc4/personal-details-2.0_rc4.xsd");
}
use of org.orcid.jaxb.model.record_rc4.PersonalDetails in project ORCID-Source by ORCID.
the class ValidateV2RC4SamplesTest method unmarshallFromPath.
private Object unmarshallFromPath(String path, Class<?> type, String schemaPath) throws SAXException, URISyntaxException {
try (Reader reader = new InputStreamReader(getClass().getResourceAsStream(path))) {
Object obj = unmarshall(reader, type, schemaPath);
Object result = null;
if (ResearcherUrls.class.equals(type)) {
result = (ResearcherUrls) obj;
} else if (ResearcherUrl.class.equals(type)) {
result = (ResearcherUrl) obj;
} else if (PersonalDetails.class.equals(type)) {
result = (PersonalDetails) obj;
} else if (PersonExternalIdentifier.class.equals(type)) {
result = (PersonExternalIdentifier) obj;
} else if (PersonExternalIdentifiers.class.equals(type)) {
result = (PersonExternalIdentifiers) obj;
} else if (Biography.class.equals(type)) {
result = (Biography) obj;
} else if (Name.class.equals(type)) {
result = (Name) obj;
} else if (CreditName.class.equals(type)) {
result = (CreditName) obj;
} else if (OtherName.class.equals(type)) {
result = (OtherName) obj;
} else if (OtherNames.class.equals(type)) {
result = (OtherNames) obj;
} else if (Keywords.class.equals(type)) {
result = (Keywords) obj;
} else if (Keyword.class.equals(type)) {
result = (Keyword) obj;
} else if (Addresses.class.equals(type)) {
result = (Addresses) obj;
} else if (Address.class.equals(type)) {
result = (Address) obj;
} else if (Emails.class.equals(type)) {
result = (Emails) obj;
} else if (Email.class.equals(type)) {
result = (Email) obj;
} else if (Person.class.equals(type)) {
result = (Person) obj;
} else if (Deprecated.class.equals(type)) {
result = (Deprecated) obj;
} else if (Preferences.class.equals(type)) {
result = (Preferences) obj;
} else if (History.class.equals(type)) {
result = (History) obj;
} else if (Record.class.equals(type)) {
result = (Record) obj;
} else if (ActivitiesSummary.class.equals(type)) {
result = (ActivitiesSummary) obj;
}
return result;
} catch (IOException e) {
throw new RuntimeException("Error reading notification from classpath", e);
}
}
use of org.orcid.jaxb.model.record_rc4.PersonalDetails in project ORCID-Source by ORCID.
the class ValidateV2RC3SamplesTest method testUnmarshallPersonalDetails.
@Test
public void testUnmarshallPersonalDetails() throws SAXException, URISyntaxException {
PersonalDetails personalDetails = (PersonalDetails) unmarshallFromPath("/record_2.0_rc3/samples/personal-details-2.0_rc3.xml", PersonalDetails.class, "/record_2.0_rc3/personal-details-2.0_rc3.xsd");
assertNotNull(personalDetails);
// Check bio
assertNotNull(personalDetails.getBiography());
assertEquals("Biography", personalDetails.getBiography().getContent());
assertEquals(Visibility.PUBLIC.value(), personalDetails.getBiography().getVisibility().value());
// Check names
assertNotNull(personalDetails.getName());
assertNotNull(personalDetails.getName().getCreditName());
assertEquals("Credit Name", personalDetails.getName().getCreditName().getContent());
assertNotNull(personalDetails.getName().getGivenNames());
assertEquals("Give Names", personalDetails.getName().getGivenNames().getContent());
assertNotNull(personalDetails.getName().getFamilyName());
assertEquals("Family Name", personalDetails.getName().getFamilyName().getContent());
assertEquals(Visibility.PUBLIC.value(), personalDetails.getName().getVisibility().value());
// Check other names
assertNotNull(personalDetails.getOtherNames());
assertNotNull(personalDetails.getOtherNames().getOtherNames());
assertEquals(2, personalDetails.getOtherNames().getOtherNames().size());
assertEquals("Other Name #1", personalDetails.getOtherNames().getOtherNames().get(0).getContent());
assertEquals("Other Name #2", personalDetails.getOtherNames().getOtherNames().get(1).getContent());
assertEquals(Visibility.PUBLIC, personalDetails.getOtherNames().getOtherNames().get(0).getVisibility());
assertEquals(Visibility.LIMITED, personalDetails.getOtherNames().getOtherNames().get(1).getVisibility());
}
use of org.orcid.jaxb.model.record_rc4.PersonalDetails in project ORCID-Source by ORCID.
the class ValidateV2RC2SamplesTest method testUnmarshallPersonalDetails.
@Test
public void testUnmarshallPersonalDetails() throws SAXException, URISyntaxException {
PersonalDetails personalDetails = (PersonalDetails) unmarshallFromPath("/record_2.0_rc2/samples/personal-details-2.0_rc2.xml", PersonalDetails.class, "/record_2.0_rc2/personal-details-2.0_rc2.xsd");
assertNotNull(personalDetails);
// Check bio
assertNotNull(personalDetails.getBiography());
assertEquals("Biography", personalDetails.getBiography().getContent());
assertEquals(Visibility.PUBLIC.value(), personalDetails.getBiography().getVisibility().value());
// Check names
assertNotNull(personalDetails.getName());
assertNotNull(personalDetails.getName().getCreditName());
assertEquals("Credit Name", personalDetails.getName().getCreditName().getContent());
assertNotNull(personalDetails.getName().getGivenNames());
assertEquals("Give Names", personalDetails.getName().getGivenNames().getContent());
assertNotNull(personalDetails.getName().getFamilyName());
assertEquals("Family Name", personalDetails.getName().getFamilyName().getContent());
assertEquals(Visibility.PUBLIC.value(), personalDetails.getName().getVisibility().value());
// Check other names
assertNotNull(personalDetails.getOtherNames());
assertNotNull(personalDetails.getOtherNames().getOtherNames());
assertEquals(2, personalDetails.getOtherNames().getOtherNames().size());
assertEquals("Other Name #1", personalDetails.getOtherNames().getOtherNames().get(0).getContent());
assertEquals("Other Name #2", personalDetails.getOtherNames().getOtherNames().get(1).getContent());
assertEquals(Visibility.PUBLIC, personalDetails.getOtherNames().getOtherNames().get(0).getVisibility());
assertEquals(Visibility.LIMITED, personalDetails.getOtherNames().getOtherNames().get(1).getVisibility());
}
use of org.orcid.jaxb.model.record_rc4.PersonalDetails in project ORCID-Source by ORCID.
the class PersonalDetailsManagerReadOnlyImpl method getPersonalDetails.
@Override
public PersonalDetails getPersonalDetails(String orcid) {
Date lastModified = getLastModifiedDate(orcid);
long lastModifiedTime = lastModified.getTime();
PersonalDetails personalDetails = new PersonalDetails();
Name name = recordNameManager.getRecordName(orcid, lastModifiedTime);
if (name != null) {
personalDetails.setName(name);
}
Biography bio = biographyManager.getBiography(orcid, lastModifiedTime);
if (bio != null) {
personalDetails.setBiography(bio);
}
OtherNames otherNames = otherNameManager.getOtherNames(orcid, lastModifiedTime);
OtherNames filteredOtherNames = new OtherNames();
personalDetails.setOtherNames(filteredOtherNames);
if (otherNames != null && otherNames.getOtherNames() != null && !otherNames.getOtherNames().isEmpty()) {
// Lets copy the list so we don't modify the cached collection
List<OtherName> filteredList = new ArrayList<OtherName>(otherNames.getOtherNames());
filteredOtherNames.setOtherNames(filteredList);
}
if (personalDetails.getLastModifiedDate() == null || personalDetails.getLastModifiedDate().getValue() == null) {
personalDetails.setLastModifiedDate(new LastModifiedDate(DateUtils.convertToXMLGregorianCalendar(lastModified)));
}
return personalDetails;
}
Aggregations