class FaradayMiddleware::Avro::ParseAvro

Public Instance Methods

parse(body, schema_name) click to toggle source
# File lib/faraday_middleware/avro/response/parse_avro.rb, line 7
def parse(body, schema_name)
  avro = AvroTurf.new(schemas_path: schemas_path)
  avro.decode(body, schema_name: schema_name) unless body.empty?
end
process_response(env) click to toggle source
# File lib/faraday_middleware/avro/response/parse_avro.rb, line 2
def process_response(env)
  env[:raw_body] = env[:body] if preserve_raw?(env)
  env[:body] = parse(env[:body], env[:response_headers]['Avro-Schema'])
end

Private Instance Methods

schemas_path() click to toggle source
# File lib/faraday_middleware/avro/response/parse_avro.rb, line 14
def schemas_path
  @options[:schemas_path] || File.expand_path(File.dirname(__FILE__))
end