class Wamp::Client::Message::Yield
Yield
Actual yield from an endpoint sent by a Callee to Dealer. Formats:
[YIELD, INVOCATION.Request|id, Options|dict] [YIELD, INVOCATION.Request|id, Options|dict, Arguments|list] [YIELD, INVOCATION.Request|id, Options|dict, Arguments|list, ArgumentsKw|dict]
Attributes
arguments[RW]
argumentskw[RW]
invocation_request[RW]
options[RW]
Public Class Methods
new(invocation_request, options, arguments=nil, argumentskw=nil)
click to toggle source
# File lib/wamp/client/message.rb, line 1034 def initialize(invocation_request, options, arguments=nil, argumentskw=nil) self.class.check_id('invocation_request', invocation_request) self.class.check_dict('options', options) self.class.check_list('arguments', arguments, true) self.class.check_dict('argumentskw', argumentskw, true) self.invocation_request = invocation_request self.options = options self.arguments = arguments self.argumentskw = argumentskw end
parse(params)
click to toggle source
# File lib/wamp/client/message.rb, line 1052 def self.parse(params) self.check_gte('params list', 3, params.count) self.check_equal('message type', self.type, params[0]) params.shift self.new(*params) end
type()
click to toggle source
# File lib/wamp/client/message.rb, line 1048 def self.type Types::YIELD end
Public Instance Methods
payload()
click to toggle source
# File lib/wamp/client/message.rb, line 1062 def payload self.arguments ||= [] self.argumentskw ||= {} payload = [self.class.type] payload.push(self.invocation_request) payload.push(self.options) return payload if (self.arguments.empty? and self.argumentskw.empty?) payload.push(self.arguments) return payload if (self.argumentskw.empty?) payload.push(self.argumentskw) payload end
to_s()
click to toggle source
# File lib/wamp/client/message.rb, line 1079 def to_s 'YIELD > ' + self.payload.to_s end