/** * Create an instance of {@link RetrieveDocumentSetResponseType } * */ public RetrieveDocumentSetResponseType createRetrieveDocumentSetResponseType() { return new RetrieveDocumentSetResponseType(); }
/** * Create an instance of {@link ProvideAndRegisterDocumentSetRequestType.Document } * */ public ProvideAndRegisterDocumentSetRequestType.Document createProvideAndRegisterDocumentSetRequestTypeDocument() { return new ProvideAndRegisterDocumentSetRequestType.Document(); }
/** * Create an instance of {@link RetrieveDocumentSetResponseType.DocumentResponse } * */ public RetrieveDocumentSetResponseType.DocumentResponse createRetrieveDocumentSetResponseTypeDocumentResponse() { return new RetrieveDocumentSetResponseType.DocumentResponse(); }
private void logRequest(ProvideAndRegisterDocumentSetRequestType req) { log.info("###### SubmitObjectRequest:"+req.getSubmitObjectsRequest()); List<Document> docs = req.getDocument(); log.info("###### Documents:"+docs); if (docs != null) { StringBuilder sb = new StringBuilder(); sb.append("######Number of Documents:").append(docs.size()); int dumpValLen; for (Document d : docs) { sb.append("\nDocument ID:"+d.getId()) .append(" size:").append(d.getValue().length) .append(" value:"); try { dumpValLen = Math.min(d.getValue().length, 40); sb.append(new String(d.getValue(), 0, dumpValLen)); if (dumpValLen == 40) sb.append("..."); } catch (Exception x) { log.warn("Failed to convert value in String!", x); } } log.info(sb.toString()); } }
private DocumentResponse getDocumentResponse(XDSDocument doc, String repositoryUniqueId) throws IOException { RetrieveDocumentSetResponseType.DocumentResponse docRsp; docRsp = iheFactory.createRetrieveDocumentSetResponseTypeDocumentResponse(); docRsp.setDocumentUniqueId(doc.getUID()); docRsp.setMimeType(doc.getMimeType()); docRsp.setRepositoryUniqueId(repositoryUniqueId); docRsp.setDocument(doc.getContent()); return docRsp; }
public static Map<String,Document> getDocuments(ProvideAndRegisterDocumentSetRequestType req) { List<Document> docs = req.getDocument(); Map<String,Document> map = new HashMap<String,Document>(docs.size()); Document doc; for ( int i = 0, len = docs.size() ; i < len ; i++) { doc = docs.get(i); map.put(doc.getId(), doc); } return map; }
return iheFactory.createRetrieveDocumentSetResponseType(); String home = req.getDocumentRequest().get(0).getHomeCommunityId(); if (home == null) throw new XDSException( XDSException.XDS_ERR_MISSING_HOME_COMMUNITY_ID, "Missing Home Community ID in request! repositoryID: "+repositoryID, null); rsp = iheFactory.createRetrieveDocumentSetResponseType(); if (x instanceof XDSException) { XDSUtil.addError(rsp, (XDSException) x); XDSAudit.logConsumerImport(null, xdsRepositoryURI, req, !XDSConstants.XDS_B_STATUS_FAILURE.equals(rsp.getRegistryResponse().getStatus())); return addHomeCommunityID(rsp);
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); }
private RetrieveDocumentSetResponseType addHomeCommunityID(RetrieveDocumentSetResponseType rsp) { String home = XdsDevice.getXCARespondingGW().getHomeCommunityID(); if (rsp.getDocumentResponse() != null) { for (DocumentResponse docRsp : rsp.getDocumentResponse()) { if (docRsp.getHomeCommunityId() == null) docRsp.setHomeCommunityId(home); } } RegistryResponseType regRsp = rsp.getRegistryResponse(); if (regRsp != null && regRsp.getRegistryErrorList() != null) { for ( RegistryError err : regRsp.getRegistryErrorList().getRegistryError()) { if (err.getLocation() == null) err.setLocation(home); } } return rsp; }
private RetrieveDocumentSetResponseType doSourceRetrieve(RetrieveImagingDocumentSetRequestType req, boolean hasRespondingGWforHome) { RetrieveDocumentSetResponseType rsp = null, tmpRsp; for (Entry<String, List<StudyRequest>> entry : XDSUtil.splitRequestPerSrcID(req).entrySet()) { req.getStudyRequest().clear(); req.getStudyRequest().addAll(entry.getValue()); tmpRsp = doSourceRetrieve(entry.getKey(), req, hasRespondingGWforHome); if (rsp == null) { rsp = tmpRsp; } else { XDSUtil.addResponse(tmpRsp, rsp); } } if (rsp == null) rsp = iheFactory.createRetrieveDocumentSetResponseType(); return rsp; } private RetrieveDocumentSetResponseType doSourceRetrieve(String sourceID, RetrieveImagingDocumentSetRequestType req, boolean hasRespondingGWforHome) {
private RetrieveDocumentSetResponseType addHomeCommunityID(RetrieveDocumentSetResponseType rsp) { String home = XdsDevice.getXCARespondingGW().getHomeCommunityID(); if (rsp.getDocumentResponse() != null) { for (DocumentResponse docRsp : rsp.getDocumentResponse()) { docRsp.setHomeCommunityId(home); } } RegistryResponseType regRsp = rsp.getRegistryResponse(); if (regRsp != null && regRsp.getRegistryErrorList() != null) { for ( RegistryError err : regRsp.getRegistryErrorList().getRegistryError()) { err.setLocation(home); } } return rsp; }
public void removeFromRequest() { pnrRequest.getProvideAndRegisterDocumentSetRequest().getDocument().remove(doc); List<JAXBElement<? extends IdentifiableType>> list = pnrRequest.getRegistryObjectList().getIdentifiable(); for (int i = 0, len = list.size() ; i < len ; i++) { if (list.get(i).getValue().getId().equals(id)) { list.remove(i); } } pnrRequest.removeAssociation(assoc); }
private RetrieveDocumentSetResponseType addResponse(RetrieveDocumentSetResponseType rsp, RetrieveDocumentSetResponseType tmpRsp) { if (tmpRsp == null) { return rsp; } if (rsp == null) { return tmpRsp; } else { if (tmpRsp.getDocumentResponse() != null) rsp.getDocumentResponse().addAll(tmpRsp.getDocumentResponse()); if (tmpRsp.getRegistryResponse() != null) { RegistryErrorList errs = tmpRsp.getRegistryResponse().getRegistryErrorList(); if (errs != null && errs.getRegistryError().size() > 0) { RegistryErrorList rspErr = rsp.getRegistryResponse().getRegistryErrorList(); if (rspErr == null) { rsp.getRegistryResponse().setRegistryErrorList(errs); } else { rspErr.getRegistryError().addAll(errs.getRegistryError()); } } } } return rsp; }
private String getSourceID(ProvideAndRegisterDocumentSetRequestType req) { List<JAXBElement<? extends IdentifiableType>> objs = req.getSubmitObjectsRequest().getRegistryObjectList().getIdentifiable(); IdentifiableType obj; for (int i = 0, len = objs.size() ; i < len ; i++) { obj = objs.get(i).getValue(); if (obj instanceof RegistryPackageType) { return InfosetUtil.getExternalIdentifierValue(XDSConstants.UUID_XDSSubmissionSet_sourceId, (RegistryPackageType)obj); } } return null; }
/** * Create an instance of {@link RetrieveDocumentSetRequestType } * */ public RetrieveDocumentSetRequestType createRetrieveDocumentSetRequestType() { return new RetrieveDocumentSetRequestType(); }
/** * Create an instance of {@link RetrieveDocumentSetRequestType.DocumentRequest } * */ public RetrieveDocumentSetRequestType.DocumentRequest createRetrieveDocumentSetRequestTypeDocumentRequest() { return new RetrieveDocumentSetRequestType.DocumentRequest(); }
/** * Create an instance of {@link ProvideAndRegisterDocumentSetRequestType } * */ public ProvideAndRegisterDocumentSetRequestType createProvideAndRegisterDocumentSetRequestType() { return new ProvideAndRegisterDocumentSetRequestType(); }
private void logRequest(ProvideAndRegisterDocumentSetRequestType req) { log.info("###### SubmitObjectRequest:"+req.getSubmitObjectsRequest()); List<Document> docs = req.getDocument(); log.info("###### Documents:"+docs); if (docs != null) { StringBuilder sb = new StringBuilder(); sb.append("######Number of Documents:").append(docs.size()); int dumpValLen; for (Document d : docs) { sb.append("\nDocument ID:"+d.getId()) .append(" size:").append(d.getValue().length) .append(" value:"); try { dumpValLen = Math.min(d.getValue().length, 40); sb.append(new String(d.getValue(), 0, dumpValLen)); if (dumpValLen == 40) sb.append("..."); } catch (Exception x) { log.warn("Failed to convert value in String!", x); } } log.info(sb.toString()); } } private XdsRepository getConfig() {
private DocumentResponse getDocumentResponse(XDSDocument doc, String repositoryUniqueId) throws IOException { RetrieveDocumentSetResponseType.DocumentResponse docRsp; docRsp = iheFactory.createRetrieveDocumentSetResponseTypeDocumentResponse(); docRsp.setDocumentUniqueId(doc.getUID()); docRsp.setMimeType(doc.getMimeType()); docRsp.setRepositoryUniqueId(repositoryUniqueId); docRsp.setDocument(doc.getContent()); return docRsp; }
private String getSourceID(ProvideAndRegisterDocumentSetRequestType req) throws XDSException { List<JAXBElement<? extends IdentifiableType>> objs = req.getSubmitObjectsRequest().getRegistryObjectList().getIdentifiable(); IdentifiableType obj; for (int i = 0, len = objs.size() ; i < len ; i++) { obj = objs.get(i).getValue(); if (obj instanceof RegistryPackageType) { return InfosetUtil.getExternalIdentifierValue(XDSConstants.UUID_XDSSubmissionSet_sourceId, (RegistryPackageType)obj); } } throw new XDSException(XDSException.XDS_ERR_REPOSITORY_METADATA_ERROR, "Missing XDSSubmissionSet.sourceId!", null); }