class RJR::Messages::Intermediate

Intermediate representation of a JSON-RPC data containing extracted/parsed data which has not been analysed.

Attributes

data[RW]

Data extracted from message

json[RW]

JSON from which data is extracted from

Public Class Methods

new(args = {}) click to toggle source
# File lib/rjr/messages/intermediate.rb, line 21
def initialize(args = {})
  @json = args[:json] || nil
  @data = args[:data] ||  {}
end
parse(json) click to toggle source
# File lib/rjr/messages/intermediate.rb, line 38
def self.parse(json)
  parsed = nil

  #allow parsing errs to propagate up
  parsed = JSONParser.parse(json)

  self.new :json => json,
           :data => parsed
end

Public Instance Methods

[](key) click to toggle source
# File lib/rjr/messages/intermediate.rb, line 30
def [](key)
  data[key.to_s]
end
has?(key) click to toggle source
# File lib/rjr/messages/intermediate.rb, line 34
def has?(key)
  data.key?(key)
end
keys() click to toggle source
# File lib/rjr/messages/intermediate.rb, line 26
def keys
  data.keys
end