use of org.apache.camel.impl.DefaultExchange in project camel by apache.
the class CassandraAggregationRepositoryTest method testRemoveNotExists.
@Test
public void testRemoveNotExists() {
if (!canTest()) {
return;
}
// Given
String key = "RemoveNotExists";
Exchange exchange = new DefaultExchange(camelContext);
assertFalse(exists(key));
// When
aggregationRepository.remove(camelContext, key, exchange);
// Then
assertFalse(exists(key));
}
use of org.apache.camel.impl.DefaultExchange in project camel by apache.
the class CassandraAggregationRepositoryTest method testAdd.
@Test
public void testAdd() {
// Given
String key = "Add";
assertFalse(exists(key));
Exchange exchange = new DefaultExchange(camelContext);
// When
aggregationRepository.add(camelContext, key, exchange);
// Then
assertTrue(exists(key));
}
use of org.apache.camel.impl.DefaultExchange in project camel by apache.
the class CxfHeaderHelperTest method testPropagateCamelToCxf.
@Test
public void testPropagateCamelToCxf() {
Exchange exchange = new DefaultExchange(context);
exchange.getIn().setHeader("soapAction", "urn:hello:world");
exchange.getIn().setHeader("MyFruitHeader", "peach");
exchange.getIn().setHeader("MyBrewHeader", Arrays.asList("cappuccino", "espresso"));
exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "text/xml");
exchange.getIn().setHeader(Exchange.HTTP_RESPONSE_CODE, "200");
exchange.getIn().setHeader(Exchange.HTTP_URI, "/hello/cxf");
exchange.getIn().setHeader(Exchange.HTTP_METHOD, "GET");
exchange.getIn().setHeader(Exchange.HTTP_PATH, "/hello/cxf");
Map<String, Object> requestContext = Collections.singletonMap("request", "true");
Map<String, Object> responseContext = Collections.singletonMap("response", "true");
exchange.getIn().setHeader(Client.REQUEST_CONTEXT, requestContext);
exchange.getIn().setHeader(Client.RESPONSE_CONTEXT, responseContext);
org.apache.cxf.message.Message cxfMessage = new org.apache.cxf.message.MessageImpl();
CxfHeaderHelper.propagateCamelToCxf(new DefaultHeaderFilterStrategy(), exchange.getIn().getHeaders(), cxfMessage, exchange);
assertEquals("text/xml", cxfMessage.get(Message.CONTENT_TYPE));
assertEquals("200", cxfMessage.get(Message.RESPONSE_CODE));
assertEquals(requestContext, cxfMessage.get(Client.REQUEST_CONTEXT));
assertEquals(responseContext, cxfMessage.get(Client.RESPONSE_CONTEXT));
assertNull(cxfMessage.get(Exchange.HTTP_RESPONSE_CODE));
// check the protocol headers
Map<String, List<String>> cxfHeaders = CastUtils.cast((Map<?, ?>) cxfMessage.get(org.apache.cxf.message.Message.PROTOCOL_HEADERS));
assertNotNull(cxfHeaders);
assertTrue(cxfHeaders.size() == 7);
verifyHeader(cxfHeaders, "soapaction", "urn:hello:world");
verifyHeader(cxfHeaders, "SoapAction", "urn:hello:world");
verifyHeader(cxfHeaders, "SOAPAction", "urn:hello:world");
verifyHeader(cxfHeaders, "myfruitheader", "peach");
verifyHeader(cxfHeaders, "myFruitHeader", "peach");
verifyHeader(cxfHeaders, "MYFRUITHEADER", "peach");
verifyHeader(cxfHeaders, "MyBrewHeader", Arrays.asList("cappuccino", "espresso"));
verifyHeader(cxfHeaders, Message.CONTENT_TYPE, "text/xml");
verifyHeader(cxfHeaders, Message.REQUEST_URI, "/hello/cxf");
verifyHeader(cxfHeaders, Message.HTTP_REQUEST_METHOD, "GET");
verifyHeader(cxfHeaders, Message.PATH_INFO, "/hello/cxf");
assertNull(cxfHeaders.get(Exchange.HTTP_RESPONSE_CODE));
assertNull(cxfHeaders.get(Exchange.HTTP_URI));
assertNull(cxfHeaders.get(Exchange.HTTP_METHOD));
assertNull(cxfHeaders.get(Exchange.HTTP_PATH));
}
use of org.apache.camel.impl.DefaultExchange in project camel by apache.
the class CxfHeaderHelperTest method testPropagateCxfToCamel.
@Test
public void testPropagateCxfToCamel() {
Exchange exchange = new DefaultExchange(context);
org.apache.cxf.message.Message cxfMessage = new org.apache.cxf.message.MessageImpl();
Map<String, List<String>> cxfHeaders = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
cxfHeaders.put("Content-Length", Arrays.asList("241"));
cxfHeaders.put("soapAction", Arrays.asList("urn:hello:world"));
cxfHeaders.put("myfruitheader", Arrays.asList("peach"));
cxfHeaders.put("mybrewheader", Arrays.asList("cappuccino", "espresso"));
cxfHeaders.put(Message.CONTENT_TYPE, Arrays.asList("text/xml"));
cxfHeaders.put(Message.ENCODING, Arrays.asList("UTF-8"));
// Ignored
cxfHeaders.put(Message.RESPONSE_CODE, Arrays.asList("201"));
cxfHeaders.put(Message.REQUEST_URI, Arrays.asList("/base/hello/cxf"));
cxfHeaders.put(Message.HTTP_REQUEST_METHOD, Arrays.asList("GET"));
cxfHeaders.put(Message.PATH_INFO, Arrays.asList("/base/hello/cxf"));
cxfHeaders.put(Message.BASE_PATH, Arrays.asList("/base"));
cxfMessage.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, cxfHeaders);
cxfMessage.put(Message.RESPONSE_CODE, "200");
Map<String, Object> requestContext = Collections.singletonMap("request", "true");
Map<String, Object> responseContext = Collections.singletonMap("response", "true");
cxfMessage.put(Client.REQUEST_CONTEXT, requestContext);
cxfMessage.put(Client.RESPONSE_CONTEXT, responseContext);
CxfHeaderHelper.propagateCxfToCamel(new DefaultHeaderFilterStrategy(), cxfMessage, exchange.getIn(), exchange);
Map<String, Object> camelHeaders = exchange.getIn().getHeaders();
assertEquals("urn:hello:world", camelHeaders.get("soapaction"));
assertEquals("urn:hello:world", camelHeaders.get("SoapAction"));
assertEquals("241", camelHeaders.get("content-length"));
assertEquals("peach", camelHeaders.get("MyFruitHeader"));
assertEquals(Arrays.asList("cappuccino", "espresso"), camelHeaders.get("MyBrewHeader"));
assertEquals("text/xml; charset=UTF-8", camelHeaders.get(Exchange.CONTENT_TYPE));
assertEquals("/base/hello/cxf", camelHeaders.get(Exchange.HTTP_URI));
assertEquals("GET", camelHeaders.get(Exchange.HTTP_METHOD));
assertEquals("/hello/cxf", camelHeaders.get(Exchange.HTTP_PATH));
assertEquals("200", camelHeaders.get(Exchange.HTTP_RESPONSE_CODE));
assertEquals(requestContext, camelHeaders.get(Client.REQUEST_CONTEXT));
assertEquals(responseContext, camelHeaders.get(Client.RESPONSE_CONTEXT));
assertNull(camelHeaders.get(Message.RESPONSE_CODE));
assertNull(camelHeaders.get(Message.REQUEST_URI));
assertNull(camelHeaders.get(Message.HTTP_REQUEST_METHOD));
assertNull(camelHeaders.get(Message.PATH_INFO));
assertNull(camelHeaders.get(Message.RESPONSE_CODE));
}
use of org.apache.camel.impl.DefaultExchange in project camel by apache.
the class CxfMessageHelperTest method testGetCxfInMessage.
// setup the default context for testing
@Test
public void testGetCxfInMessage() throws Exception {
HeaderFilterStrategy headerFilterStrategy = new CxfHeaderFilterStrategy();
org.apache.camel.Exchange exchange = new DefaultExchange(context);
// String
exchange.getIn().setBody("hello world");
org.apache.cxf.message.Message message = CxfMessageHelper.getCxfInMessage(headerFilterStrategy, exchange, false);
// test message
InputStream is = message.getContent(InputStream.class);
assertNotNull("The input stream should not be null", is);
assertEquals("Don't get the right message", toString(is), "hello world");
// DOMSource
URL request = this.getClass().getResource("RequestBody.xml");
File requestFile = new File(request.toURI());
FileInputStream inputStream = new FileInputStream(requestFile);
XMLStreamReader xmlReader = StaxUtils.createXMLStreamReader(inputStream);
DOMSource source = new DOMSource(StaxUtils.read(xmlReader));
exchange.getIn().setBody(source);
message = CxfMessageHelper.getCxfInMessage(headerFilterStrategy, exchange, false);
is = message.getContent(InputStream.class);
assertNotNull("The input stream should not be null", is);
assertEquals("Don't get the right message", toString(is), REQUEST_STRING);
// File
exchange.getIn().setBody(requestFile);
message = CxfMessageHelper.getCxfInMessage(headerFilterStrategy, exchange, false);
is = message.getContent(InputStream.class);
assertNotNull("The input stream should not be null", is);
assertEquals("Don't get the right message", toString(is), REQUEST_STRING);
// transport header's case insensitiveness
// String
exchange.getIn().setBody("hello world");
exchange.getIn().setHeader("soapAction", "urn:hello:world");
message = CxfMessageHelper.getCxfInMessage(headerFilterStrategy, exchange, false);
// test message
Map<String, List<String>> headers = CastUtils.cast((Map<?, ?>) message.get(Message.PROTOCOL_HEADERS));
// verify there is no duplicate
assertNotNull("The headers must be present", headers);
assertTrue("There must be one header entry", headers.size() == 1);
// verify the soapaction can be retrieved in case-insensitive ways
verifyHeader(headers, "soapaction", "urn:hello:world");
verifyHeader(headers, "SoapAction", "urn:hello:world");
verifyHeader(headers, "SOAPAction", "urn:hello:world");
}
Aggregations