private List<String> getCapabilitiesFromServer() { ResponseHandler responseHandler = getResponseHandler(); if (config.isJms() && !(responseHandler instanceof RequestReplyResponseHandler)) { setResponseHandler(new RequestReplyResponseHandler()); kieServerInfo = getServerInfo().getResult(); setResponseHandler(responseHandler); } else { kieServerInfo = getServerInfo().getResult(); } logger.debug("KieServicesClient connected to: {} version {}", kieServerInfo.getServerId(), kieServerInfo.getVersion()); List<String> capabilities = kieServerInfo.getCapabilities(); logger.debug("Supported capabilities by the server: {}", capabilities); return capabilities; }
@Test public void testRest() throws Exception { MockEndpoint mockEndpoint = getMockEndpoint( "mock:result" ); mockEndpoint.expectedMessageCount( 1 ); Map<String, Object> headers = new HashMap<>(); headers.put(KIE_CLIENT, "kieServices"); headers.put(KIE_OPERATION, "getServerInfo"); template.sendBodyAndHeaders("direct:start", null, headers); assertMockEndpointsSatisfied(); KieServerInfo result = getResultMessage(mockEndpoint.getExchanges().get(0)).getBody(KieServerInfo.class); assertEquals("Server version", "1.2.3", result.getVersion()); }
@Test public void testCustomOperation() throws Exception { MockEndpoint mockEndpoint = getMockEndpoint( "mock:result" ); mockEndpoint.expectedMessageCount( 1 ); Map<String, Object> headers = new HashMap<>(); headers.put(KIE_CLIENT, "kieServices"); headers.put(KIE_OPERATION, "myCustomOperation"); template.sendBodyAndHeaders("direct:start", null, headers); assertMockEndpointsSatisfied(); KieServerInfo result = getResultMessage(mockEndpoint.getExchanges().get(0)).getBody(KieServerInfo.class); assertEquals("Server version", "1.2.3", result.getVersion()); }
@Test public void testGetServerInfo() { stubFor(get(urlEqualTo("/")) .withHeader("Accept", equalTo("application/xml")) .willReturn(aResponse() .withStatus(200) .withHeader("Content-Type", "application/xml") .withBody("<response type=\"SUCCESS\" msg=\"Kie Server info\">\n" + " <kie-server-info>\n" + " <version>1.2.3</version>\n" + " </kie-server-info>\n" + "</response>"))); KieServicesClient client = KieServicesFactory.newKieServicesClient(config); ServiceResponse<KieServerInfo> response = client.getServerInfo(); assertSuccess(response); assertEquals("Server version", "1.2.3", response.getResult().getVersion()); }