use of ihe.iti.xds_b._2007.DocumentRepositoryPortType in project nhin-d by DirectProject.
the class DocumentRepositoryUtils method getDocumentRepositoryPortType.
/**
* Construct a DocumentRepositoryPortType object using the provided
* endpoint.
*
* @param endpoint
* The XDR endpoint.
* @param wsdlPath
* The path to the WSDL.
* @return a DocumentRepositoryPortType object.
* @throws Exception
*/
public static DocumentRepositoryPortType getDocumentRepositoryPortType(String endpoint, URL wsdlPath) throws Exception {
QName qname = new QName("urn:ihe:iti:xds-b:2007", "DocumentRepository_Service");
DocumentRepositoryService service = new DocumentRepositoryService(wsdlPath, qname);
service.setHandlerResolver(new RepositoryHandlerResolver());
DocumentRepositoryPortType port = service.getDocumentRepositoryPortSoap12(new MTOMFeature(true, 1));
BindingProvider bp = (BindingProvider) port;
SOAPBinding binding = (SOAPBinding) bp.getBinding();
binding.setMTOMEnabled(true);
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, endpoint);
return port;
}
use of ihe.iti.xds_b._2007.DocumentRepositoryPortType in project nhin-d by DirectProject.
the class XDClient method forward.
private String forward(String endpoint, ProvideAndRegisterDocumentSetRequestType request) throws Exception {
LOGGER.trace("Sending XD* request to endpoint " + endpoint);
this.to = endpoint;
this.messageId = UUID.randomUUID().toString();
this.action = "urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-bResponse";
setHeaderData();
DocumentRepositoryPortType port;
try {
port = DocumentRepositoryUtils.getDocumentRepositoryPortType(endpoint);
} catch (Exception e) {
throw new Exception("Unable to create port.", e);
}
RegistryResponseType rrt = port.documentRepositoryProvideAndRegisterDocumentSetB(request);
String response = rrt.getStatus();
LOGGER.trace("Sending complete.");
return response;
}
Aggregations