Class: RedPack::SyncRedisResponder

Inherits:
Object
  • Object
show all
Includes:
Responder
Defined in:
lib/redpack-ruby/responders.rb

Instance Method Summary collapse

Constructor Details

#initialize(redis, transcoder) ⇒ SyncRedisResponder

Returns a new instance of SyncRedisResponder.



31
32
33
34
# File 'lib/redpack-ruby/responders.rb', line 31

def initialize(redis, transcoder)
  @redis = redis
  @transcoder = transcoder
end

Instance Method Details

#fail(ctx, err) ⇒ Object



47
48
49
50
51
# File 'lib/redpack-ruby/responders.rb', line 47

def fail(ctx, err)
  if ctx.REQUEST? then
    self.send(ctx.response_queue_name, ctx.msg_id, err, nil)        
  end
end

#ok(ctx, result) ⇒ Object



41
42
43
44
45
# File 'lib/redpack-ruby/responders.rb', line 41

def ok(ctx, result)
  if ctx.REQUEST? then
    self.send(ctx.response_queue_name, ctx.msg_id, nil, result)
  end
end

#send(response_queue_name, msg_id, err, retval) ⇒ Object



36
37
38
39
# File 'lib/redpack-ruby/responders.rb', line 36

def send(response_queue_name, msg_id, err, retval)
  v = {:data => [RedPack::Consts::RESPONSE, msg_id, err, retval]}
  @redis.rpush(response_queue_name, @transcoder.pack(v))                   
end