public RegistryResponseType provideAndRegisterDocumentSetB( ProvideAndRegisterDocumentSetRequestType msg, AssertionType assertion) { LOG.debug("Begin provideAndRegisterDocumentSetb()"); XDRHelper helper = new XDRHelper(); RegistryErrorList errorList = helper.validateDocumentMetaData(msg); RegistryResponseType result = null; if (errorList.getHighestSeverity().equals(NhincConstants.XDS_REGISTRY_ERROR_SEVERITY_ERROR)) { result = helper.createErrorResponse(errorList); } else { LOG.info(" Request contained " + msg.getDocument().size() + " documents."); LOG.info(" Request Id: " + msg.getSubmitObjectsRequest().getId()); List<String> recips = helper.getIntendedRecepients(msg); if (recips != null) { List<String> xdrBeans = helper.getRoutingBeans(recips); RoutingObjectFactory factory = new RoutingObjectFactory(); for (String bean : xdrBeans) { LOG.debug("Bean name = " + bean); XDRRouting proxy = factory.getNhinXDRRouting(bean); result = proxy.provideAndRegisterDocumentSetB(msg, assertion); } } else { LOG.debug("No beans to forward the message to"); result = helper.createPositiveAck(); } } return result; }
@Test public void testgetIntendedRecepients_NullSubmitObj() { System.out.println("testgetIntendedRecepients_NullSubmitObj"); ProvideAndRegisterDocumentSetRequestType body = new XDRMessageHelper().getSampleMessage(); XDRHelper instance = createHelper(); body.setSubmitObjectsRequest(null); List<String> result = instance.getIntendedRecepients(body); assertNull(result); }
@Test public void testValidateDocumentMetaData_MissingDoc() { System.out.println("testValidateDocumentMetaData_ValidMessage"); ProvideAndRegisterDocumentSetRequestType body = new XDRMessageHelper().getSampleMessage(); body.getDocument().clear(); XDRHelper instance = createHelper(); RegistryErrorList result = instance.validateDocumentMetaData(body); assertNotNull(result); assertEquals(1, result.getRegistryError().size()); assertEquals(XDRHelper.XDS_ERROR_SEVERITY_ERROR, result.getHighestSeverity()); assertEquals( XDRHelper.XDS_ERROR_SEVERITY_ERROR, result.getRegistryError().get(0).getSeverity()); assertEquals( XDRHelper.XDR_EC_XDSMissingDocument, result.getRegistryError().get(0).getErrorCode()); assertNotNull(result.getRegistryError().get(0).getCodeContext()); }