use of org.orcid.jaxb.model.message.CompletionDate in project ORCID-Source by ORCID.
the class T2OrcidApiServiceVersionedDelegatorTest method testCreateProfileWithInvalidHistoryElements.
@Test
public void testCreateProfileWithInvalidHistoryElements() {
OrcidMessage orcidMessage = createStubOrcidMessage();
orcidMessage.setMessageVersion("1.2");
//Claimed should be null
try {
OrcidHistory history = new OrcidHistory();
history.setClaimed(new Claimed(false));
orcidMessage.getOrcidProfile().setOrcidHistory(history);
t2OrcidApiServiceDelegatorLatest.createProfile(mockedUriInfo, orcidMessage);
} catch (OrcidValidationException obe) {
assertTrue(obe.getMessage().contains("Claimed status should not be specified when creating a profile"));
}
//Creation method should be null
try {
OrcidHistory history = new OrcidHistory();
history.setCreationMethod(CreationMethod.API);
orcidMessage.getOrcidProfile().setOrcidHistory(history);
t2OrcidApiServiceDelegatorLatest.createProfile(mockedUriInfo, orcidMessage);
} catch (OrcidValidationException obe) {
assertTrue(obe.getMessage().contains("Creation method should not be specified when creating a profile"));
}
//Completion date should be null
try {
OrcidHistory history = new OrcidHistory();
history.setCompletionDate(new CompletionDate());
orcidMessage.getOrcidProfile().setOrcidHistory(history);
t2OrcidApiServiceDelegatorLatest.createProfile(mockedUriInfo, orcidMessage);
} catch (OrcidValidationException obe) {
assertTrue(obe.getMessage().contains("Completion date should not be specified when creating a profile"));
}
//Submission date should be null
try {
OrcidHistory history = new OrcidHistory();
history.setSubmissionDate(new SubmissionDate());
orcidMessage.getOrcidProfile().setOrcidHistory(history);
t2OrcidApiServiceDelegatorLatest.createProfile(mockedUriInfo, orcidMessage);
} catch (OrcidValidationException obe) {
assertTrue(obe.getMessage().contains("Submission date should not be specified when creating a profile"));
}
//Last modified date should be null
try {
OrcidHistory history = new OrcidHistory();
history.setLastModifiedDate(new LastModifiedDate());
orcidMessage.getOrcidProfile().setOrcidHistory(history);
t2OrcidApiServiceDelegatorLatest.createProfile(mockedUriInfo, orcidMessage);
} catch (OrcidValidationException obe) {
assertTrue(obe.getMessage().contains("Last modified date should not be specified when creating a profile"));
}
}
use of org.orcid.jaxb.model.message.CompletionDate in project ORCID-Source by ORCID.
the class Jaxb2JpaAdapterImpl method setHistoryDetails.
private void setHistoryDetails(ProfileEntity profileEntity, OrcidHistory orcidHistory) {
if (orcidHistory != null) {
CompletionDate completionDate = orcidHistory.getCompletionDate();
profileEntity.setCompletedDate(completionDate == null ? null : toDate(completionDate.getValue()));
SubmissionDate submissionDate = orcidHistory.getSubmissionDate();
profileEntity.setSubmissionDate(submissionDate == null ? null : toDate(submissionDate.getValue()));
DeactivationDate deactivationDate = orcidHistory.getDeactivationDate();
profileEntity.setDeactivationDate(deactivationDate == null ? null : toDate(deactivationDate.getValue()));
profileEntity.setClaimed(orcidHistory.isClaimed());
CreationMethod creationMethod = orcidHistory.getCreationMethod();
profileEntity.setCreationMethod(creationMethod != null ? creationMethod.value() : null);
Source source = orcidHistory.getSource();
if (source != null) {
SourceEntity sourceEntity = new SourceEntity();
ClientDetailsEntity clientDetailsEntity = new ClientDetailsEntity();
clientDetailsEntity.setId(source.retrieveSourcePath());
sourceEntity.setSourceClient(clientDetailsEntity);
profileEntity.setSource(sourceEntity);
}
}
}
Aggregations