class OpenVidu::Responder
Attributes
object[R]
response[R]
Public Instance Methods
execute(server, object, response)
click to toggle source
# File lib/open_vidu/responder.rb, line 6 def execute(server, object, response) @object = object @response = response klass = Object.const_get(klass_name) return true if record_destroyed? return klass.new(server, mapped_params(response)) if complete_record? return klass.new(server).find(response['id']) if record_lookup? response[content_key].map { |hash| klass.new(server, mapped_params(hash)) } end
Private Instance Methods
complete_record?()
click to toggle source
# File lib/open_vidu/responder.rb, line 36 def complete_record? # Token response. (!response['id'].nil? && !response['role'].nil?) || # Session response. !response['sessionId'].nil? || # Config response. !response['version'].nil? end
content_key()
click to toggle source
# File lib/open_vidu/responder.rb, line 24 def content_key klass.content_key end
klass()
click to toggle source
# File lib/open_vidu/responder.rb, line 20 def klass Object.const_get(klass_name) end
klass_name()
click to toggle source
# File lib/open_vidu/responder.rb, line 28 def klass_name "OpenVidu::#{object.to_s.split('_').map(&:capitalize).join('')}" end
mapped_params(hash)
click to toggle source
# File lib/open_vidu/responder.rb, line 49 def mapped_params(hash) Hash[hash.map { |key, value| [key.to_sym, value] }] end
record_destroyed?()
click to toggle source
# File lib/open_vidu/responder.rb, line 32 def record_destroyed? response.nil? end
record_lookup?()
click to toggle source
# File lib/open_vidu/responder.rb, line 45 def record_lookup? !response['id'].nil? && !response['createdAt'].nil? end