Skip to content

Instantly share code, notes, and snippets.

@paultyng
Created July 9, 2014 02:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save paultyng/26fe49cfe425fbc1be14 to your computer and use it in GitHub Desktop.
Save paultyng/26fe49cfe425fbc1be14 to your computer and use it in GitHub Desktop.
RedisQueue mock for SQS
require 'redis'
RedisMessage = Struct.new(:body)
class RedisQueue
def initialize(redis)
@redis = redis
end
def poll(&block)
loop do
queue, message = @redis.brpop("smartchat-queue")
# queue could be nil if a timeout happened
if queue
block.call(RedisMessage.new(message))
end
end
end
def send_message(message_json)
@redis.lpush("smartchat-queue", message_json)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment