package org.tomdz.storm.esper.example;
import org.tomdz.storm.esper.EsperBolt;
import backtype.storm.Config;
import backtype.storm.LocalCluster;
import backtype.storm.topology.TopologyBuilder;
import backtype.storm.utils.Utils;
public class TwitterEsperSample
{
public static void main(String[] args)
{
final String username = args[0];
final String pwd = args[1];
TopologyBuilder builder = new TopologyBuilder();
TwitterSpout spout = new TwitterSpout(username, pwd);
EsperBolt bolt = new EsperBolt.Builder()
.inputs().aliasComponent("spout1").toEventType("Tweets")
.outputs().onDefaultStream().emit("tps", "maxRetweets")
.statements().add("select count(*) as tps, max(retweetCount) as maxRetweets from Tweets.win:time_batch(1 sec)")
.build();
builder.setSpout("spout1", spout);
builder.setBolt("bolt1", bolt).shuffleGrouping("spout1");
Config conf = new Config();
conf.setDebug(true);
LocalCluster cluster = new LocalCluster();
cluster.submitTopology("test", conf, builder.createTopology());
Utils.sleep(10000);
cluster.shutdown();
}
}