You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2013/07/10 21:13:36 UTC

[1/6] git commit: CAMEL-6493 - add option to select specific user relationships

Updated Branches:
  refs/heads/master 8e0cf8cca -> a59e61c7b


CAMEL-6493 - add option to select specific user relationships


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

Branch: refs/heads/master
Commit: 3a1db5c45341ff588e4159baf3c6e4decf5dd6dd
Parents: f19f444
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Wed Jul 10 15:05:58 2013 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Wed Jul 10 15:06:05 2013 -0230

----------------------------------------------------------------------
 .../component/yammer/YammerConfiguration.java   | 11 ++++++
 .../YammerRelationshipPollingConsumer.java      | 10 ++++++
 .../YammerRelationshipConsumerOptionTest.java   | 38 ++++++++++++++++++++
 3 files changed, 59 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/3a1db5c4/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerConfiguration.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerConfiguration.java
index 92adb21..18019ca 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerConfiguration.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerConfiguration.java
@@ -49,6 +49,9 @@ public class YammerConfiguration {
     @UriParam
     private String threaded;
     
+    @UriParam
+    private String userId;
+    
     private ApiRequestor requestor;
     
     public String getConsumerKey() {
@@ -143,4 +146,12 @@ public class YammerConfiguration {
         this.threaded = threaded;
     }
 
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/3a1db5c4/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
index 6ef5ce5..2491b2d 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
@@ -22,6 +22,7 @@ import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
 import org.apache.camel.component.yammer.model.Relationships;
 import org.apache.camel.impl.ScheduledPollConsumer;
+import org.apache.camel.util.ObjectHelper;
 import org.codehaus.jackson.map.ObjectMapper;
 
 /**
@@ -55,6 +56,15 @@ public class YammerRelationshipPollingConsumer extends ScheduledPollConsumer {
             throw new Exception(String.format("%s is not a valid Yammer relationship function type.", function));
         }        
         
+        StringBuilder args = new StringBuilder();
+        
+        String userId = endpoint.getConfig().getUserId();
+        if (ObjectHelper.isNotEmpty(userId)) {
+            args.append("?user_id=");
+            args.append(userId);
+            url.append(args);
+        }        
+        
         return url.toString();
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/3a1db5c4/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipConsumerOptionTest.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipConsumerOptionTest.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipConsumerOptionTest.java
new file mode 100644
index 0000000..26f0742
--- /dev/null
+++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipConsumerOptionTest.java
@@ -0,0 +1,38 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.yammer;
+
+import org.apache.camel.builder.RouteBuilder;
+import org.junit.Test;
+
+public class YammerRelationshipConsumerOptionTest extends YammerComponentTestSupport {
+
+    @Test
+    public void testOptions() throws Exception {
+        // now check if options got applied
+        assertEquals("jcamel", yammerComponent.getConfig().getUserId());
+    }
+    
+    @Override
+    protected RouteBuilder createRouteBuilder() throws Exception {
+        return new RouteBuilder() {
+            public void configure() {
+                from("yammer:relationships?consumerKey=aConsumerKey&consumerSecret=aConsumerSecretKey&accessToken=aAccessToken&userId=jcamel").to("mock:result");
+            }
+        };
+    }
+}


[2/6] git commit: Clean up yammer model objects a bit

Posted by ja...@apache.org.
Clean up yammer model objects a bit


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

Branch: refs/heads/master
Commit: d0af10fe00c582565815e0b3e84a302b8fbf4319
Parents: 8e0cf8c
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Wed Jul 10 14:54:30 2013 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Wed Jul 10 15:06:05 2013 -0230

----------------------------------------------------------------------
 .../component/yammer/model/Attachment.java      | 24 ++++++++++----------
 .../camel/component/yammer/model/Message.java   | 18 +++++++--------
 .../camel/component/yammer/model/Meta.java      |  6 ++---
 3 files changed, 24 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/d0af10fe/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Attachment.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Attachment.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Attachment.java
index 7fae49e..49ec503 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Attachment.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Attachment.java
@@ -31,9 +31,9 @@ public class Attachment {
     private String largePreviewUrl;
     private String url;
     @JsonProperty("streaming_url")
-    private Object streamingUrl;
+    private String streamingUrl;
     @JsonProperty("group_id")
-    private Object groupId;
+    private String groupId;
     private Long id;
     @JsonProperty("last_uploaded_by_id")
     private Long lastUploadedById;
@@ -49,7 +49,7 @@ public class Attachment {
     private String type;
     private Boolean official;
     private Long height;
-    private Object transcoded;
+    private String transcoded;
     private String path;
     @JsonProperty("preview_url")
     private String previewUrl;
@@ -81,7 +81,7 @@ public class Attachment {
     private Image image;
     @JsonProperty("web_url")
     private String webUrl;
-    private Object uuid;
+    private String uuid;
 
     public String getLastUploadedAt() {
         return lastUploadedAt;
@@ -123,19 +123,19 @@ public class Attachment {
         this.url = url;
     }
 
-    public Object getStreamingUrl() {
+    public String getStreamingUrl() {
         return streamingUrl;
     }
 
-    public void setStreamingUrl(Object streamingUrl) {
+    public void setStreamingUrl(String streamingUrl) {
         this.streamingUrl = streamingUrl;
     }
 
-    public Object getGroupId() {
+    public String getGroupId() {
         return groupId;
     }
 
-    public void setGroupId(Object groupId) {
+    public void setGroupId(String groupId) {
         this.groupId = groupId;
     }
 
@@ -219,11 +219,11 @@ public class Attachment {
         this.height = height;
     }
 
-    public Object getTranscoded() {
+    public String getTranscoded() {
         return transcoded;
     }
 
-    public void setTranscoded(Object transcoded) {
+    public void setTranscoded(String transcoded) {
         this.transcoded = transcoded;
     }
 
@@ -371,11 +371,11 @@ public class Attachment {
         this.webUrl = webUrl;
     }
 
-    public Object getUuid() {
+    public String getUuid() {
         return uuid;
     }
 
-    public void setUuid(Object uuid) {
+    public void setUuid(String uuid) {
         this.uuid = uuid;
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/d0af10fe/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Message.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Message.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Message.java
index c2ccbf3..9081e13 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Message.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Message.java
@@ -25,7 +25,7 @@ import org.codehaus.jackson.annotate.JsonProperty;
 public class Message {
 
     @JsonProperty("replied_to_id")
-    private Object repliedToId;
+    private String repliedToId;
     @JsonProperty("network_id")
     private Long networkId;
     private String url;
@@ -35,7 +35,7 @@ public class Message {
     @JsonProperty("message_type")
     private String messageType;
     @JsonProperty("chat_client_sequence")
-    private Object chatClientSequence;
+    private String chatClientSequence;
     private Body body;
     @JsonProperty("client_url")
     private String clientUrl;
@@ -52,7 +52,7 @@ public class Message {
     private LikedBy likedBy;
     @JsonProperty("sender_id")
     private Long senderId;
-    private Object language;
+    private String language;
     @JsonProperty("system_message")
     private Boolean systemMessage;
     private List<Attachment> attachments;
@@ -61,11 +61,11 @@ public class Message {
     @JsonProperty("web_url")
     private String webUrl;
 
-    public Object getRepliedToId() {
+    public String getRepliedToId() {
         return repliedToId;
     }
 
-    public void setRepliedToId(Object repliedToId) {
+    public void setRepliedToId(String repliedToId) {
         this.repliedToId = repliedToId;
     }
 
@@ -109,11 +109,11 @@ public class Message {
         this.messageType = messageType;
     }
 
-    public Object getChatClientSequence() {
+    public String getChatClientSequence() {
         return chatClientSequence;
     }
 
-    public void setChatClientSequence(Object chatClientSequence) {
+    public void setChatClientSequence(String chatClientSequence) {
         this.chatClientSequence = chatClientSequence;
     }
 
@@ -189,11 +189,11 @@ public class Message {
         this.senderId = senderId;
     }
 
-    public Object getLanguage() {
+    public String getLanguage() {
         return language;
     }
 
-    public void setLanguage(Object language) {
+    public void setLanguage(String language) {
         this.language = language;
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/d0af10fe/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Meta.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Meta.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Meta.java
index 17d1264..e9a14a0 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Meta.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/model/Meta.java
@@ -34,7 +34,7 @@ public class Meta {
     private Boolean olderAvailable;
     @JsonProperty("followed_references")
     private List<FollowedReference> followedReferences;
-    private List<Object> ymodules;
+    private List<String> ymodules;
     @JsonProperty("liked_message_ids")
     private List<Long> likedMessageIds;
     @JsonProperty("feed_name")
@@ -83,11 +83,11 @@ public class Meta {
         this.followedReferences = followedReferences;
     }
 
-    public List<Object> getYmodules() {
+    public List<String> getYmodules() {
         return ymodules;
     }
 
-    public void setYmodules(List<Object> ymodules) {
+    public void setYmodules(List<String> ymodules) {
         this.ymodules = ymodules;
     }
 


[4/6] git commit: CAMEL-6493 - add yammer message producer

Posted by ja...@apache.org.
CAMEL-6493 - add yammer message producer


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

Branch: refs/heads/master
Commit: e42674e2f09e00e3bdf63edd6fb626a146535ce7
Parents: 3a1db5c
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Wed Jul 10 16:19:30 2013 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Wed Jul 10 16:19:30 2013 -0230

----------------------------------------------------------------------
 .../camel/component/yammer/ApiRequestor.java    |  5 +-
 .../component/yammer/ScribeApiRequestor.java    | 18 +++--
 .../camel/component/yammer/YammerEndpoint.java  |  2 +-
 .../yammer/YammerMessagePollingConsumer.java    |  2 +-
 .../component/yammer/YammerMessageProducer.java | 70 ++++++++++++++++++++
 .../YammerRelationshipPollingConsumer.java      |  2 +-
 .../yammer/YammerUserPollingConsumer.java       |  2 +-
 .../component/yammer/TestApiRequestor.java      | 13 +++-
 .../yammer/YammerMessageProducerRouteTest.java  | 58 ++++++++++++++++
 .../src/test/resources/message.json             | 45 +++++++++++++
 10 files changed, 203 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ApiRequestor.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ApiRequestor.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ApiRequestor.java
index 0deed1c..6a87c8c 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ApiRequestor.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ApiRequestor.java
@@ -19,6 +19,7 @@ package org.apache.camel.component.yammer;
 
 public interface ApiRequestor {
 
-    String send() throws Exception;
-
+    String get() throws Exception;
+    String post(String params) throws Exception;
+    
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ScribeApiRequestor.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ScribeApiRequestor.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ScribeApiRequestor.java
index b18ef91..6d2ac99 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ScribeApiRequestor.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/ScribeApiRequestor.java
@@ -31,12 +31,8 @@ public class ScribeApiRequestor implements ApiRequestor {
         this.apiAccessToken = apiAccessToken;
     }
     
-    /* (non-Javadoc)
-     * @see org.apache.camel.component.yammer.ApiRequestor#send()
-     */
-    @Override
-    public String send() throws Exception {
-        OAuthRequest request = new OAuthRequest(Verb.GET, apiUrl);
+    private String send(Verb verb, String params) throws Exception {
+        OAuthRequest request = new OAuthRequest(verb, apiUrl + ((params != null) ? params : ""));
         request.addQuerystringParameter(OAuthConstants.ACCESS_TOKEN, apiAccessToken);
         Response response = request.send();
         if (response.isSuccessful()) {                    
@@ -61,4 +57,14 @@ public class ScribeApiRequestor implements ApiRequestor {
     public void setApiAccessToken(String apiAccessToken) {
         this.apiAccessToken = apiAccessToken;
     }
+
+    @Override
+    public String get() throws Exception {
+        return send(Verb.GET, null);
+    }
+
+    @Override
+    public String post(String params) throws Exception {
+        return send(Verb.POST, params);
+    }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerEndpoint.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerEndpoint.java
index e48dc3d..663c4ac 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerEndpoint.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerEndpoint.java
@@ -44,7 +44,7 @@ public class YammerEndpoint extends ScheduledPollEndpoint {
     }
 
     public Producer createProducer() throws Exception {
-        throw new UnsupportedOperationException("YammerProducer is not implemented");
+        return new YammerMessageProducer(this);
     }
 
     public Consumer createConsumer(Processor processor) throws Exception {

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessagePollingConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessagePollingConsumer.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessagePollingConsumer.java
index 9432ff4..74d05c8 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessagePollingConsumer.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessagePollingConsumer.java
@@ -116,7 +116,7 @@ public class YammerMessagePollingConsumer extends ScheduledPollConsumer {
         Exchange exchange = endpoint.createExchange();
 
         try {
-            String jsonBody = endpoint.getConfig().getRequestor(apiUrl).send();   
+            String jsonBody = endpoint.getConfig().getRequestor(apiUrl).get();   
             
             if (!endpoint.getConfig().isUseJson()) {
                 ObjectMapper jsonMapper = new ObjectMapper();

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessageProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessageProducer.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessageProducer.java
new file mode 100644
index 0000000..c989f0c
--- /dev/null
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerMessageProducer.java
@@ -0,0 +1,70 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.yammer;
+
+import java.net.URLEncoder;
+
+import org.apache.camel.Exchange;
+import org.apache.camel.component.yammer.model.Messages;
+import org.apache.camel.impl.DefaultProducer;
+import org.codehaus.jackson.map.ObjectMapper;
+
+public class YammerMessageProducer extends DefaultProducer {
+
+    private final YammerEndpoint endpoint;
+    private final String apiUrl;
+    
+    public YammerMessageProducer(YammerEndpoint endpoint) throws Exception {
+        super(endpoint);
+        this.endpoint = endpoint;
+        apiUrl = getApiUrl();
+    }
+
+    private String getApiUrl() throws Exception {    
+        StringBuilder url = new StringBuilder();
+        
+        String function = endpoint.getConfig().getFunction();
+        switch (YammerFunctionType.fromUri(function)) {
+        case MESSAGES:
+            url.append(YammerConstants.YAMMER_BASE_API_URL);
+            url.append(function);
+            url.append(".json");
+            break;
+        default:
+            throw new Exception(String.format("%s is not a valid Yammer message producer function type.", function));
+        }        
+        
+        return url.toString();
+    }
+    
+    @Override
+    public void process(Exchange exchange) throws Exception {
+        String body = exchange.getIn().getBody(String.class);               
+       
+        String jsonBody = endpoint.getConfig().getRequestor(apiUrl).post("?body=" + URLEncoder.encode(body, "UTF-8"));   
+        
+        // we set the body to the message that was created on the server
+        if (!endpoint.getConfig().isUseJson()) {
+            ObjectMapper jsonMapper = new ObjectMapper();
+            Messages messages = jsonMapper.readValue(jsonBody, Messages.class);
+            exchange.getIn().setBody(messages);
+        } else {
+            exchange.getIn().setBody(jsonBody);
+        }
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
index 2491b2d..4775241 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerRelationshipPollingConsumer.java
@@ -74,7 +74,7 @@ public class YammerRelationshipPollingConsumer extends ScheduledPollConsumer {
         Exchange exchange = endpoint.createExchange();
 
         try {
-            String jsonBody = endpoint.getConfig().getRequestor(apiUrl).send();
+            String jsonBody = endpoint.getConfig().getRequestor(apiUrl).get();
 
             if (!endpoint.getConfig().isUseJson()) {
                 ObjectMapper jsonMapper = new ObjectMapper();

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerUserPollingConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerUserPollingConsumer.java b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerUserPollingConsumer.java
index 223e5d3..54826f5 100644
--- a/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerUserPollingConsumer.java
+++ b/components/camel-yammer/src/main/java/org/apache/camel/component/yammer/YammerUserPollingConsumer.java
@@ -71,7 +71,7 @@ public class YammerUserPollingConsumer extends ScheduledPollConsumer {
         Exchange exchange = endpoint.createExchange();
 
         try {
-            String jsonBody = endpoint.getConfig().getRequestor(apiUrl).send();
+            String jsonBody = endpoint.getConfig().getRequestor(apiUrl).get();
 
             if (!endpoint.getConfig().isUseJson()) {
                 ObjectMapper jsonMapper = new ObjectMapper();

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/TestApiRequestor.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/TestApiRequestor.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/TestApiRequestor.java
index 8b11eb3..a1b4628 100644
--- a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/TestApiRequestor.java
+++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/TestApiRequestor.java
@@ -25,9 +25,18 @@ public class TestApiRequestor implements ApiRequestor {
         this.body = body;
     }
     
-    @Override
-    public String send() {
+    private String send() {
         return body;
     }
 
+    @Override
+    public String get() throws Exception {
+        return send();
+    }
+
+    @Override
+    public String post(String params) throws Exception {
+        return send();
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMessageProducerRouteTest.java
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMessageProducerRouteTest.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMessageProducerRouteTest.java
new file mode 100644
index 0000000..4fb4b09
--- /dev/null
+++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMessageProducerRouteTest.java
@@ -0,0 +1,58 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.yammer;
+
+import org.apache.camel.Exchange;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.component.yammer.model.Messages;
+import org.junit.Test;
+
+public class YammerMessageProducerRouteTest extends YammerComponentTestSupport {
+
+    @Test
+    public void testCreateMessage() throws Exception {
+        MockEndpoint mock = getMockEndpoint("mock:result");
+        mock.expectedMinimumMessageCount(1);
+        
+        String messageBodyToCreate = "Hi from Camel!";
+        template.sendBody("direct:start", messageBodyToCreate);
+        
+        assertMockEndpointsSatisfied();
+        
+        Exchange exchange = mock.getExchanges().get(0);
+        Messages messages = exchange.getIn().getBody(Messages.class);
+
+        assertEquals(1, messages.getMessages().size());
+        assertEquals(messageBodyToCreate, messages.getMessages().get(0).getBody().getPlain());
+    }
+
+    @Override
+    protected String jsonFile() {
+        return "/message.json";
+    }
+    
+    @Override
+    protected RouteBuilder createRouteBuilder() throws Exception {
+        return new RouteBuilder() {
+            public void configure() {
+                // using dummy keys here since we are mocking out calls to yammer.com with static json; in a real app, please use your own keys!
+                from("direct:start").to("yammer:messages?consumerKey=aConsumerKey&consumerSecret=aConsumerSecretKey&accessToken=aAccessToken").to("mock:result");
+            }
+        };
+    }
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/e42674e2/components/camel-yammer/src/test/resources/message.json
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/test/resources/message.json b/components/camel-yammer/src/test/resources/message.json
new file mode 100644
index 0000000..e1c8c3d
--- /dev/null
+++ b/components/camel-yammer/src/test/resources/message.json
@@ -0,0 +1,45 @@
+{
+	"messages":[
+		{
+			"replied_to_id":null,
+			"network_id":7654,
+			"url":"https://www.yammer.com/api/v1/messages/305298242",
+			"thread_id":305298242,
+			"id":305298242,
+			"message_type":"update",
+			"chat_client_sequence":null,
+			"body":{
+				"parsed":"Hi from Camel!",
+				"plain":"Hi from Camel!",
+				"rich":"Hi from Camel!"
+			},
+			"client_url":"https://www.yammer.com/",
+			"content_excerpt":"Hi from Camel!",
+			"created_at":"2013/06/25 18:14:45 +0000",
+			"client_type":"Web",
+			"privacy":"public",
+			"sender_type":"user",
+			"liked_by":{
+				"count":1,
+				"names":[
+					{
+						"permalink":"janstey",
+						"full_name":"Jonathan Anstey",
+						"user_id":1499642294
+					}
+					
+				]
+				
+			},
+			"sender_id":1499642294,
+			"language":null,
+			"system_message":false,
+			"attachments":[
+				
+			],
+			"direct_message":false,
+			"web_url":"https://www.yammer.com/redhat.com/messages/305298242"
+		}
+		]
+		
+	}


[3/6] git commit: Log tests to file

Posted by ja...@apache.org.
Log tests to file


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

Branch: refs/heads/master
Commit: f19f4448d71e455e6ece6579b12a3cedf1bef93d
Parents: d0af10f
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Wed Jul 10 14:56:39 2013 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Wed Jul 10 15:06:05 2013 -0230

----------------------------------------------------------------------
 .../camel-yammer/src/test/resources/log4j.properties  | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/f19f4448/components/camel-yammer/src/test/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/components/camel-yammer/src/test/resources/log4j.properties b/components/camel-yammer/src/test/resources/log4j.properties
index 9887f12..8192189 100644
--- a/components/camel-yammer/src/test/resources/log4j.properties
+++ b/components/camel-yammer/src/test/resources/log4j.properties
@@ -17,14 +17,20 @@
 #
 # The logging properties used
 #
-log4j.rootLogger=INFO, out
+log4j.rootLogger=INFO, file
 
-# uncomment the following line to turn on Camel debugging
+log4j.logger.org.apache.camel.component.yammer=DEBUG
 #log4j.logger.org.apache.camel=DEBUG
 
 # CONSOLE appender not used by default
 log4j.appender.out=org.apache.log4j.ConsoleAppender
 log4j.appender.out.layout=org.apache.log4j.PatternLayout
-log4j.appender.out.layout.ConversionPattern=[%30.30t] %-30.30c{1} %-5p %m%n
-#log4j.appender.out.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
+log4j.appender.out.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
+
+# File appender
+log4j.appender.file=org.apache.log4j.FileAppender
+log4j.appender.file.layout=org.apache.log4j.PatternLayout
+log4j.appender.file.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
+log4j.appender.file.file=target/camel-yammer-test.log
+log4j.appender.file.append=true
 


[6/6] git commit: CAMEL-6493 - add camel-yammer to kit and karaf features xml

Posted by ja...@apache.org.
CAMEL-6493 - add camel-yammer to kit and karaf features xml


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

Branch: refs/heads/master
Commit: a59e61c7ba5d7823ec2034ea993219cc36a202a2
Parents: c33a1b9
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Wed Jul 10 16:40:24 2013 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Wed Jul 10 16:40:24 2013 -0230

----------------------------------------------------------------------
 apache-camel/pom.xml                                     | 4 ++++
 apache-camel/src/main/descriptors/common-bin.xml         | 1 +
 parent/pom.xml                                           | 5 +++++
 platforms/karaf/features/src/main/resources/features.xml | 7 +++++++
 4 files changed, 17 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/a59e61c7/apache-camel/pom.xml
----------------------------------------------------------------------
diff --git a/apache-camel/pom.xml b/apache-camel/pom.xml
index 919f899..a88aea7 100644
--- a/apache-camel/pom.xml
+++ b/apache-camel/pom.xml
@@ -620,6 +620,10 @@
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
+      <artifactId>camel-yammer</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.camel</groupId>
       <artifactId>camel-zipfile</artifactId>
     </dependency>
     <dependency>

http://git-wip-us.apache.org/repos/asf/camel/blob/a59e61c7/apache-camel/src/main/descriptors/common-bin.xml
----------------------------------------------------------------------
diff --git a/apache-camel/src/main/descriptors/common-bin.xml b/apache-camel/src/main/descriptors/common-bin.xml
index 110c694..d320052 100644
--- a/apache-camel/src/main/descriptors/common-bin.xml
+++ b/apache-camel/src/main/descriptors/common-bin.xml
@@ -166,6 +166,7 @@
         <include>org.apache.camel:camel-xmlsecurity</include>
         <include>org.apache.camel:camel-xmpp</include>
         <include>org.apache.camel:camel-xstream</include>
+        <include>org.apache.camel:camel-yammer</include>
         <include>org.apache.camel:camel-zipfile</include>
         <include>org.apache.camel:camel-zookeeper</include>
         <include>org.apache.camel.karaf:camel-karaf-commands</include>

http://git-wip-us.apache.org/repos/asf/camel/blob/a59e61c7/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index d27126e..f8671b2 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -1191,6 +1191,11 @@
       </dependency>
       <dependency>
         <groupId>org.apache.camel</groupId>
+        <artifactId>camel-yammer</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel</groupId>
         <artifactId>camel-zipfile</artifactId>
         <version>${project.version}</version>
       </dependency>

http://git-wip-us.apache.org/repos/asf/camel/blob/a59e61c7/platforms/karaf/features/src/main/resources/features.xml
----------------------------------------------------------------------
diff --git a/platforms/karaf/features/src/main/resources/features.xml b/platforms/karaf/features/src/main/resources/features.xml
index 3f60052..15e3934 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -1057,6 +1057,13 @@
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xstream/${xstream-bundle-version}</bundle>
     <bundle>mvn:org.apache.camel/camel-xstream/${project.version}</bundle>
   </feature>
+  <feature name='camel-yammer' version='${project.version}' resolver='(obr)' start-level='50'>
+    <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-core-asl/${jackson-version}</bundle>
+    <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-mapper-asl/${jackson-version}</bundle>
+    <bundle dependency='true'>wrap:mvn:org.scribe/scribe/${scribe-version}</bundle>
+    <feature version='${project.version}'>camel-core</feature>
+    <bundle>mvn:org.apache.camel/camel-yammer/${project.version}</bundle>
+  </feature>
   <feature name='camel-zipfile' version='${project.version}' resolver='(obr)' start-level='50'>
     <feature version='${project.version}'>camel-core</feature>
     <bundle>mvn:org.apache.camel/camel-zipfile/${project.version}</bundle>


[5/6] git commit: Add camel-yammer to components build

Posted by ja...@apache.org.
Add camel-yammer to components build


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

Branch: refs/heads/master
Commit: c33a1b974398fe08d9ad36a16c26ce743c0a8068
Parents: e42674e
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Wed Jul 10 16:20:49 2013 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Wed Jul 10 16:20:49 2013 -0230

----------------------------------------------------------------------
 components/pom.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/c33a1b97/components/pom.xml
----------------------------------------------------------------------
diff --git a/components/pom.xml b/components/pom.xml
index e902a89..e6fd60d 100644
--- a/components/pom.xml
+++ b/components/pom.xml
@@ -181,6 +181,7 @@
     <module>camel-xmlsecurity</module>
     <module>camel-xmpp</module>
     <module>camel-xstream</module>
+    <module>camel-yammer</module>
     <module>camel-zipfile</module>
     <module>camel-zookeeper</module>
   </modules>