From 65ff8f4b9b6bd849385d210f8ce2bd983d2a3345 Mon Sep 17 00:00:00 2001 From: Jonathan Anstey Date: Sat, 1 Nov 2008 17:46:44 +0000 Subject: [PATCH] AMQ-1986 - Upgrade to Camel 1.5.0 git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@709735 13f79535-47bb-0310-9956-ffa450edef68 --- .../camel/component/JournalEndpoint.java | 8 +++--- .../AutoExposeQueuesInCamelTest.java | 25 +++++++++++++++---- pom.xml | 2 +- 3 files changed, 26 insertions(+), 9 deletions(-) diff --git a/activemq-camel/src/main/java/org/apache/activemq/camel/component/JournalEndpoint.java b/activemq-camel/src/main/java/org/apache/activemq/camel/component/JournalEndpoint.java index 59dee59e0b..c7770d5dfa 100644 --- a/activemq-camel/src/main/java/org/apache/activemq/camel/component/JournalEndpoint.java +++ b/activemq-camel/src/main/java/org/apache/activemq/camel/component/JournalEndpoint.java @@ -27,6 +27,7 @@ import org.apache.activemq.util.ByteSequence; import org.apache.camel.CamelExchangeException; import org.apache.camel.Consumer; import org.apache.camel.Exchange; +import org.apache.camel.NoTypeConversionAvailableException; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.RuntimeCamelException; @@ -188,9 +189,10 @@ public class JournalEndpoint extends DefaultEndpoint { public void process(Exchange exchange) throws Exception { incrementReference(); try { - - ByteSequence body = exchange.getIn().getBody(ByteSequence.class); - if (body == null) { + ByteSequence body = null; + try { + body = exchange.getIn().getBody(ByteSequence.class); + } catch(NoTypeConversionAvailableException e) { byte[] bytes = exchange.getIn().getBody(byte[].class); if (bytes != null) { body = new ByteSequence(bytes); diff --git a/activemq-camel/src/test/java/org/apache/activemq/camel/component/AutoExposeQueuesInCamelTest.java b/activemq-camel/src/test/java/org/apache/activemq/camel/component/AutoExposeQueuesInCamelTest.java index 07a38241cc..f712d4af1b 100644 --- a/activemq-camel/src/test/java/org/apache/activemq/camel/component/AutoExposeQueuesInCamelTest.java +++ b/activemq-camel/src/test/java/org/apache/activemq/camel/component/AutoExposeQueuesInCamelTest.java @@ -16,15 +16,17 @@ */ package org.apache.activemq.camel.component; +import java.util.ArrayList; +import java.util.Collection; import java.util.List; -import org.apache.activemq.EmbeddedBrokerTestSupport; -import org.apache.activemq.broker.BrokerService; import org.apache.activemq.command.ActiveMQDestination; import org.apache.activemq.command.ActiveMQQueue; import org.apache.activemq.command.ActiveMQTopic; +import org.apache.activemq.EmbeddedBrokerTestSupport; +import org.apache.activemq.broker.BrokerService; import org.apache.camel.CamelContext; -import org.apache.camel.CamelTemplate; +import org.apache.camel.Endpoint; import org.apache.camel.impl.DefaultCamelContext; import org.apache.camel.spi.BrowsableEndpoint; import org.apache.camel.util.CamelContextHelper; @@ -44,18 +46,31 @@ public class AutoExposeQueuesInCamelTest extends EmbeddedBrokerTestSupport { protected ActiveMQTopic sampleTopic = new ActiveMQTopic("cheese"); protected CamelContext camelContext = new DefaultCamelContext(); - protected CamelTemplate template; public void testWorks() throws Exception { Thread.sleep(2000); LOG.debug("Looking for endpoints..."); - List endpoints = CamelContextHelper.getSingletonEndpoints(camelContext, BrowsableEndpoint.class); + // Changed from using CamelContextHelper.getSingletonEndpoints here because JMS Endpoints in Camel + // are always non-singleton + List endpoints = getEndpoints(camelContext, BrowsableEndpoint.class); for (BrowsableEndpoint endpoint : endpoints) { LOG.debug("Endpoint: " + endpoint); } assertEquals("Should have found an endpoint: "+ endpoints, 1, endpoints.size()); } + public List getEndpoints(CamelContext camelContext, Class type) { + List answer = new ArrayList(); + Collection endpoints = camelContext.getEndpoints(); + for (Endpoint endpoint : endpoints) { + if (type.isInstance(endpoint)) { + T value = type.cast(endpoint); + answer.add(value); + } + } + return answer; + } + @Override protected void setUp() throws Exception { super.setUp(); diff --git a/pom.xml b/pom.xml index 24bfc4a025..259b4509de 100755 --- a/pom.xml +++ b/pom.xml @@ -42,7 +42,7 @@ 1.0 1.0-M3-dev 1.2-RC1 - 1.4.0 + 1.5.0 2.0 1.6.1 3.1