public PnRRequest(String sourceID, String submissionSetUID, String patID, String srcPatID) {
if (sourceID == null || submissionSetUID == null || patID == null || srcPatID == null) {
StringBuilder sb = new StringBuilder();
sb.append("Parameter values must not be null! (");
if (sourceID == null) sb.append("sourceID,");
if (submissionSetUID == null) sb.append("submissionSetUID,");
if (patID == null) sb.append("patID,");
if (srcPatID == null) sb.append("srcPatID,");
sb.setCharAt(sb.length()-1, ')');
throw new IllegalArgumentException(sb.toString());
}
this.submissionSetUID = submissionSetUID;
patientID = patID;
srcPatIDSlot = Util.createSlot(XDSConstants.SLOT_NAME_SOURCE_PATIENT_ID, null, srcPatID);
provideAndRegisterDocumentSetRequest = iheFactory.createProvideAndRegisterDocumentSetRequestType();
SubmitObjectsRequest sor = Util.rimFactory.createSubmitObjectsRequest();
registryObjectList = Util.rimFactory.createRegistryObjectListType();
sor.setRegistryObjectList(registryObjectList);
provideAndRegisterDocumentSetRequest.setSubmitObjectsRequest(sor);
submissionSet = Util.rimFactory.createRegistryPackageType();
submissionSet.setId(SUBMISSION_SET_ID);
submissionSet.getExternalIdentifier().add(Util.createExternalIdentifier(nextID(), XDSConstants.UUID_XDSSubmissionSet_uniqueId,
SUBMISSION_SET_ID, submissionSetUID, "XDSSubmissionSet.uniqueId"));
submissionSet.getExternalIdentifier().add(Util.createExternalIdentifier(nextID(), XDSConstants.UUID_XDSSubmissionSet_patientId,
SUBMISSION_SET_ID, patID, "XDSSubmissionSet.patientId"));
submissionSet.getExternalIdentifier().add(Util.createExternalIdentifier(nextID(), XDSConstants.UUID_XDSSubmissionSet_sourceId,
SUBMISSION_SET_ID, sourceID, "XDSSubmissionSet.sourceId"));
registryObjectList.getIdentifiable().add(Util.rimFactory.createRegistryPackage(submissionSet));
submissionSet.getClassification().add(Util.createClassification(nextID(), XDSConstants.UUID_XDSSubmissionSet, SUBMISSION_SET_ID));
}