Class: EM::P::Redwood::JSONFilter

Inherits:
Object
  • Object
show all
Defined in:
lib/sup/protocol.rb

Instance Method Summary collapse

Constructor Details

#initializeJSONFilter

Returns a new instance of JSONFilter.



91
92
93
# File 'lib/sup/protocol.rb', line 91

def initialize
  @parser = Yajl::Parser.new :check_utf8 => false
end

Instance Method Details

#decode(chunk) ⇒ Object



95
96
97
98
99
100
# File 'lib/sup/protocol.rb', line 95

def decode chunk
  parsed = []
  @parser.on_parse_complete = lambda { |o| parsed << o }
  @parser << chunk
  parsed
end

#encode(*os) ⇒ Object



102
103
104
# File 'lib/sup/protocol.rb', line 102

def encode *os
  os.inject('') { |s, o| s << Yajl::Encoder.encode(o) }
end