[jboss-user] [jBPM] - Re: Where can we find TwitterWorkItemHandler?
Kris Verlaenen
do-not-reply at jboss.com
Wed Jul 10 19:55:41 EDT 2013
Kris Verlaenen [https://community.jboss.org/people/KrisVerlaenen] created the discussion
"Re: Where can we find TwitterWorkItemHandler?"
To view the discussion, visit: https://community.jboss.org/message/827434#827434
--------------------------------------------------------------
Jose,
You are correct. I just tested and updating twitter4j to version 3.0.3 seems to work well.
Kris
/**
* Copyright 2010 JBoss Inc
*
* Licensed 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 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.jbpm.process.workitem.twitter;
import java.util.Properties;
import org.kie.api.runtime.process.WorkItem;
import org.kie.api.runtime.process.WorkItemHandler;
import org.kie.api.runtime.process.WorkItemManager;
import twitter4j.Twitter;
import twitter4j.TwitterFactory;
import twitter4j.conf.ConfigurationBuilder;
public class TwitterWorkItemHandler implements WorkItemHandler {
private Twitter twitter;
public void setCredentials(String consumerKey, String consumerSecret, String accessKey, String accessSecret) {
ConfigurationBuilder configBuilder = new ConfigurationBuilder();
configBuilder
.setDebugEnabled(true)
.setOAuthConsumerKey(consumerKey)
.setOAuthConsumerSecret(consumerSecret)
.setOAuthAccessToken(accessKey)
.setOAuthAccessTokenSecret(accessSecret);
twitter = new TwitterFactory(configBuilder.build()).getInstance();
}
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
try {
if (twitter == null) {
initTwitter();
}
String message = (String)workItem.getParameter("Message");
if (message != null && message.trim().length() > 0) {
twitter.updateStatus(message);
}
}
catch(Throwable t) {
t.printStackTrace();
manager.abortWorkItem(workItem.getId());
}
manager.completeWorkItem(workItem.getId(), null);
}
private void initTwitter() throws Exception {
Properties p = new Properties();
p.load(TwitterWorkItemHandler.class.getResourceAsStream("/twitter.properties"));
setCredentials(
p.getProperty("twitter.consumerKey"),
p.getProperty("twitter.consumerSecret"),
p.getProperty("twitter.accessKey"),
p.getProperty("twitter.accessSecret"));
}
public void abortWorkItem(WorkItem workitem, WorkItemManager workitemmanager) {
}
}
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/827434#827434]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20130710/a63f6c6e/attachment.html
More information about the jboss-user
mailing list