public DocumentEntry(PnRRequest pnrReq, String uniqueID, byte[] content, String mime) {
this.pnrRequest = pnrReq;
doc = PnRRequest.iheFactory.createProvideAndRegisterDocumentSetRequestTypeDocument();
ProvideAndRegisterDocumentSetRequestType pnr = pnrRequest.getProvideAndRegisterDocumentSetRequest();
pnr.getDocument().add(doc);
id = pnrReq.nextDocumentID();
doc.setId(id);
doc.setValue(content);
metadata = Util.rimFactory.createExtrinsicObjectType();
metadata.setObjectType(XDSConstants.UUID_XDSDocumentEntry);
metadata.setId(id);
metadata.setMimeType(mime);
List<JAXBElement<? extends IdentifiableType>> list = pnrRequest.getRegistryObjectList().getIdentifiable();
list.add(Util.rimFactory.createExtrinsicObject(metadata));
metadata.getExternalIdentifier().add(Util.createExternalIdentifier(pnrRequest.nextID(), XDSConstants.UUID_XDSDocumentEntry_patientId,
id, pnrRequest.getPatientID(), XDS_DOCUMENT_ENTRY_PATIENT_ID));
metadata.getSlot().add(pnrRequest.getSrcPatIDSlot());
if (pnrRequest.getSrcPatInfo() != null) {
metadata.getSlot().add(pnrRequest.getSrcPatInfo());
}
metadata.getExternalIdentifier().add(Util.createExternalIdentifier(pnrRequest.nextID(), XDSConstants.UUID_XDSDocumentEntry_uniqueId,
id, uniqueID, XDS_DOCUMENT_ENTRY_UNIQUE_ID));
this.uniqueID = uniqueID;
assoc = pnrReq.addAssociation(PnRRequest.SUBMISSION_SET_ID, id, XDSConstants.HAS_MEMBER);
}