You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2016/04/09 14:10:05 UTC

[1/4] camel git commit: camel-xmpp: fix private chat response issue

Repository: camel
Updated Branches:
  refs/heads/camel-2.16.x eed00f12d -> 3f48f0604
  refs/heads/camel-2.17.x 5732ceb1c -> f7d0c2dcb
  refs/heads/master 4ad8bcfde -> 342c21829


camel-xmpp: fix private chat response issue

Responding to a private chat wasn't able because the message was always sent to

    String participant = exchange.getIn().getHeader(XmppConstants.TO, String.class);

However, the `XmppConstants.TO` in such messages is the camel instance
(which received the message) and not the chat's other participant.
Thus, responding to a chat message always resultet in a message to itself.
This patch fixes that issue and addresses messages always to

    String participant = endpoint.getParticipant();


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f4146a75
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f4146a75
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f4146a75

Branch: refs/heads/master
Commit: f4146a7594bdc6d22ae392afc203f3a876c190ed
Parents: 4ad8bcf
Author: Martin Scharm <ma...@binfalse.de>
Authored: Sat Apr 9 11:53:12 2016 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sat Apr 9 13:31:11 2016 +0200

----------------------------------------------------------------------
 .../org/apache/camel/component/xmpp/XmppPrivateChatProducer.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/f4146a75/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java b/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
index 322980b..d56e108 100644
--- a/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
+++ b/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
@@ -65,7 +65,7 @@ public class XmppPrivateChatProducer extends DefaultProducer {
             throw new RuntimeException("Could not connect to XMPP server.", e);
         }
 
-        String participant = exchange.getIn().getHeader(XmppConstants.TO, String.class);
+        String participant = endpoint.getParticipant();
         String thread = endpoint.getChatId();
         if (participant == null) {
             participant = getParticipant();


[3/4] camel git commit: camel-xmpp: fix private chat response issue

Posted by da...@apache.org.
camel-xmpp: fix private chat response issue

Responding to a private chat wasn't able because the message was always sent to

    String participant = exchange.getIn().getHeader(XmppConstants.TO, String.class);

However, the `XmppConstants.TO` in such messages is the camel instance
(which received the message) and not the chat's other participant.
Thus, responding to a chat message always resultet in a message to itself.
This patch fixes that issue and addresses messages always to

    String participant = endpoint.getParticipant();


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/3f48f060
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/3f48f060
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/3f48f060

Branch: refs/heads/camel-2.16.x
Commit: 3f48f0604cdd39e10606353687c033788288739f
Parents: eed00f1
Author: Martin Scharm <ma...@binfalse.de>
Authored: Sat Apr 9 11:53:12 2016 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sat Apr 9 13:34:03 2016 +0200

----------------------------------------------------------------------
 .../org/apache/camel/component/xmpp/XmppPrivateChatProducer.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/3f48f060/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java b/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
index 322980b..d56e108 100644
--- a/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
+++ b/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
@@ -65,7 +65,7 @@ public class XmppPrivateChatProducer extends DefaultProducer {
             throw new RuntimeException("Could not connect to XMPP server.", e);
         }
 
-        String participant = exchange.getIn().getHeader(XmppConstants.TO, String.class);
+        String participant = endpoint.getParticipant();
         String thread = endpoint.getChatId();
         if (participant == null) {
             participant = getParticipant();


[4/4] camel git commit: CAMEL-9789: Fixed proxy/export to startup and shutdown correctly. That also fixes the JMS test failure.

Posted by da...@apache.org.
CAMEL-9789: Fixed proxy/export to startup and shutdown correctly. That also fixes the JMS test failure.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/342c2182
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/342c2182
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/342c2182

Branch: refs/heads/master
Commit: 342c21829ba595ff8927fd134d8a6aab8c691972
Parents: f4146a7
Author: Claus Ibsen <da...@apache.org>
Authored: Sat Apr 9 14:09:54 2016 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sat Apr 9 14:09:54 2016 +0200

----------------------------------------------------------------------
 .../camel/blueprint/CamelProxyFactoryBean.java     |  7 +++++--
 .../apache/camel/component/jms/remoting/ISay.java  |  7 +++----
 .../component/jms/remoting/JmsRemotingTest.java    |  4 ++--
 .../camel/component/jms/remoting/SayService.java   | 17 ++++-------------
 .../spring/remoting/CamelProxyFactoryBean.java     |  7 +++++--
 .../spring/remoting/CamelServiceExporter.java      | 14 +++++++++++---
 6 files changed, 30 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/342c2182/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelProxyFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelProxyFactoryBean.java b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelProxyFactoryBean.java
index 6491bbc..8f23210 100644
--- a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelProxyFactoryBean.java
+++ b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelProxyFactoryBean.java
@@ -109,8 +109,11 @@ public class CamelProxyFactoryBean extends AbstractCamelFactoryBean<Object> {
         boolean bind = getBinding() != null ? getBinding() : true;
 
         try {
+            // need to start endpoint before we create producer
+            ServiceHelper.startService(endpoint);
             producer = endpoint.createProducer();
-            ServiceHelper.startService(producer);
+            // add and start producer
+            getCamelContext().addService(producer, true, true);
             Class<?> clazz = blueprintContainer.loadClass(getServiceInterface());
             serviceProxy = ProxyHelper.createProxy(endpoint, bind, producer, clazz);
         } catch (Exception e) {
@@ -119,7 +122,7 @@ public class CamelProxyFactoryBean extends AbstractCamelFactoryBean<Object> {
     }
 
     public void destroy() throws Exception {
-        ServiceHelper.stopService(producer);
+        // we let CamelContext manage the lifecycle of the producer and shut it down when Camel stops
     }
 
     public String getServiceUrl() {

http://git-wip-us.apache.org/repos/asf/camel/blob/342c2182/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/ISay.java
----------------------------------------------------------------------
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/ISay.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/ISay.java
index ed8629e..b15d2a5 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/ISay.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/ISay.java
@@ -19,9 +19,8 @@ package org.apache.camel.component.jms.remoting;
 import java.rmi.Remote;
 import java.rmi.RemoteException;
 
-/**
- *
- */
 public interface ISay extends Remote {
-    String say() throws RemoteException;
+
+    String say(String name) throws RemoteException;
+
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/342c2182/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/JmsRemotingTest.java
----------------------------------------------------------------------
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/JmsRemotingTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/JmsRemotingTest.java
index 842c574..b15c34c 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/JmsRemotingTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/JmsRemotingTest.java
@@ -32,7 +32,7 @@ public class JmsRemotingTest extends CamelSpringTestSupport {
     @Test
     public void testRemoting() throws Exception {
         ISay proxy = applicationContext.getBean("sayProxy", ISay.class);
-        String rc = proxy.say();
-        assertEquals("Hello", rc);
+        String rc = proxy.say("Camel");
+        assertEquals("Hello Camel", rc);
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/342c2182/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/SayService.java
----------------------------------------------------------------------
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/SayService.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/SayService.java
index 30e2c2a..7f649ab 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/SayService.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/remoting/SayService.java
@@ -19,26 +19,17 @@ package org.apache.camel.component.jms.remoting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-/**
- *
- */
 public class SayService implements ISay {
 
     private static final Logger LOG = LoggerFactory.getLogger(SayService.class);
-
-    String message = "Hello";
+    private String message = "Hello";
 
     public SayService() {
     }
 
-    public SayService(String message) {
-        this.message = message;
-    }
-
-    public String say() {
-        LOG.info("Invoking say() method with message: " + message);
-
-        return message;
+    public String say(String name) {
+        LOG.info("Invoking say() method with {}", name);
+        return message + " " + name;
     }
 
     public String getMessage() {

http://git-wip-us.apache.org/repos/asf/camel/blob/342c2182/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelProxyFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelProxyFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelProxyFactoryBean.java
index d2d7132..eac6e40 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelProxyFactoryBean.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelProxyFactoryBean.java
@@ -75,8 +75,11 @@ public class CamelProxyFactoryBean extends UrlBasedRemoteAccessor implements Fac
         boolean bind = getBinding() != null ? getBinding() : true;
 
         try {
+            // need to start endpoint before we create producer
+            ServiceHelper.startService(endpoint);
             producer = endpoint.createProducer();
-            ServiceHelper.startService(producer);
+            // add and start producer
+            camelContext.addService(producer, true, true);
             serviceProxy = ProxyHelper.createProxy(endpoint, bind, producer, getServiceInterface());
         } catch (Exception e) {
             throw new FailedToCreateProducerException(endpoint, e);
@@ -84,7 +87,7 @@ public class CamelProxyFactoryBean extends UrlBasedRemoteAccessor implements Fac
     }
 
     public void destroy() throws Exception {
-        ServiceHelper.stopService(producer);
+        // we let CamelContext manage the lifecycle of the producer and shut it down when Camel stops
     }
 
     public Class<?> getServiceInterface() {

http://git-wip-us.apache.org/repos/asf/camel/blob/342c2182/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelServiceExporter.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelServiceExporter.java b/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelServiceExporter.java
index fd5bb4e..1caee1a 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelServiceExporter.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/remoting/CamelServiceExporter.java
@@ -20,6 +20,7 @@ import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
 import org.apache.camel.Consumer;
 import org.apache.camel.Endpoint;
+import org.apache.camel.FailedToCreateConsumerException;
 import org.apache.camel.component.bean.BeanProcessor;
 import org.apache.camel.spring.util.CamelContextResolverHelper;
 import org.apache.camel.util.CamelContextHelper;
@@ -98,12 +99,19 @@ public class CamelServiceExporter extends RemoteExporter implements Initializing
         notNull(getService(), "service");
         Object proxy = getProxyForService();
 
-        consumer = endpoint.createConsumer(new BeanProcessor(proxy, camelContext));
-        ServiceHelper.startService(consumer);
+        try {
+            // need to start endpoint before we create consumer
+            ServiceHelper.startService(endpoint);
+            consumer = endpoint.createConsumer(new BeanProcessor(proxy, camelContext));
+            // add and start consumer
+            camelContext.addService(consumer, true, true);
+        } catch (Exception e) {
+            throw new FailedToCreateConsumerException(endpoint, e);
+        }
     }
 
     public void destroy() throws Exception {
-        ServiceHelper.startService(consumer);
+        // we let CamelContext manage the lifecycle of the consumer and shut it down when Camel stops
     }
 
 }


[2/4] camel git commit: camel-xmpp: fix private chat response issue

Posted by da...@apache.org.
camel-xmpp: fix private chat response issue

Responding to a private chat wasn't able because the message was always sent to

    String participant = exchange.getIn().getHeader(XmppConstants.TO, String.class);

However, the `XmppConstants.TO` in such messages is the camel instance
(which received the message) and not the chat's other participant.
Thus, responding to a chat message always resultet in a message to itself.
This patch fixes that issue and addresses messages always to

    String participant = endpoint.getParticipant();


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f7d0c2dc
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f7d0c2dc
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f7d0c2dc

Branch: refs/heads/camel-2.17.x
Commit: f7d0c2dcb1e6a5192c6293db5e6623da64eb61b2
Parents: 5732ceb
Author: Martin Scharm <ma...@binfalse.de>
Authored: Sat Apr 9 11:53:12 2016 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sat Apr 9 13:33:50 2016 +0200

----------------------------------------------------------------------
 .../org/apache/camel/component/xmpp/XmppPrivateChatProducer.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/f7d0c2dc/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java b/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
index 322980b..d56e108 100644
--- a/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
+++ b/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java
@@ -65,7 +65,7 @@ public class XmppPrivateChatProducer extends DefaultProducer {
             throw new RuntimeException("Could not connect to XMPP server.", e);
         }
 
-        String participant = exchange.getIn().getHeader(XmppConstants.TO, String.class);
+        String participant = endpoint.getParticipant();
         String thread = endpoint.getChatId();
         if (participant == null) {
             participant = getParticipant();