package storm.cookbook.tfidf.bolt;
import java.util.Map;
import backtype.storm.task.OutputCollector;
import backtype.storm.task.TopologyContext;
import backtype.storm.topology.OutputFieldsDeclarer;
import backtype.storm.topology.base.BaseRichBolt;
import backtype.storm.tuple.Tuple;
import redis.clients.jedis.Jedis;
import twitter4j.Status;
import twitter4j.URLEntity;
public class PublishURLBolt extends BaseRichBolt {
Jedis jedis;
public void prepare(Map stormConf, TopologyContext context, OutputCollector collector) {
jedis = new Jedis("localhost");
}
public void execute(Tuple input) {
Status ret = (Status) input.getValue(0);
URLEntity[] urls = ret.getURLEntities();
for (int i = 0; i < urls.length; i++) {
jedis.rpush("url", urls[i].getURL().trim());
}
}
public void declareOutputFields(OutputFieldsDeclarer declarer) {
// TODO Auto-generated method stub
}
}