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 2012/06/11 09:07:06 UTC
svn commit: r1348725 -
/camel/trunk/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/producer/UserProducer.java
Author: davsclaus
Date: Mon Jun 11 07:07:06 2012
New Revision: 1348725
URL: http://svn.apache.org/viewvc?rev=1348725&view=rev
Log:
CAMEL-5351: You can now tweet using a StatusUpdate instance. Thanks to Bruno Borges for the patch.
Modified:
camel/trunk/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/producer/UserProducer.java
Modified: camel/trunk/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/producer/UserProducer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/producer/UserProducer.java?rev=1348725&r1=1348724&r2=1348725&view=diff
==============================================================================
--- camel/trunk/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/producer/UserProducer.java (original)
+++ camel/trunk/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/producer/UserProducer.java Mon Jun 11 07:07:06 2012
@@ -22,10 +22,10 @@ import org.apache.camel.component.twitte
import org.apache.camel.impl.DefaultProducer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import twitter4j.StatusUpdate;
/**
* Produces text as a status update.
- *
*/
public class UserProducer extends DefaultProducer implements Processor {
@@ -39,8 +39,21 @@ public class UserProducer extends Defaul
public void process(Exchange exchange) throws Exception {
// update user's status
- String status = exchange.getIn().getBody(String.class);
+ Object in = exchange.getIn().getBody();
+ if (in instanceof StatusUpdate) {
+ updateStatus((StatusUpdate) in);
+ } else {
+ String s = exchange.getIn().getMandatoryBody(String.class);
+ updateStatus(s);
+ }
+ }
+
+ private void updateStatus(StatusUpdate status) throws Exception {
+ te.getTwitter().updateStatus(status);
+ LOG.debug("Updated status: {}", status);
+ }
+ private void updateStatus(String status) throws Exception {
if (status.length() > 160) {
LOG.warn("Message is longer than 160 characters. Message will be truncated!");
status = status.substring(0, 160);