/* * chombo: Hadoop Map Reduce and Storm utility * Author: Pranab Ghosh * * 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 * * 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.chombo.storm; import java.util.Map; import org.chombo.util.ConfigUtility; import redis.clients.jedis.Jedis; /** * Redis queue * @author pranab * */ public class RedisQueue extends MessageQueue{ private Jedis jedis; /** * @param conf * @param queue */ public RedisQueue(Map conf, String queueName) { String redisHost = ConfigUtility.getString(conf, "redis.server.host"); int redisPort = ConfigUtility.getInt(conf,"redis.server.port"); jedis = new Jedis(redisHost, redisPort); this.queueName = queueName; } /* (non-Javadoc) * @see org.chombo.storm.MessageQueue#send(java.lang.String) */ public void send(String msg) { jedis.lpush(queueName, msg); } /* (non-Javadoc) * @see org.chombo.storm.MessageQueue#receive() */ public String receive() { String msg = jedis.rpop(queueName); return msg; } }