class Goodall::Handler::Json

Public Instance Methods

parse_payload(payload) click to toggle source
# File lib/goodall/handler/json.rb, line 11
def parse_payload(payload)
  payload = if payload.class == String
    # assue it's a string of json
    begin
      MultiJson.load(payload)
    rescue MultiJson::LoadError
      # probably not JSON, return as-is
      return payload+"\n"
    end
  else
    payload
  end

  # detect "pretty" json by seeing if there are CRs in here
  if (json = MultiJson.dump(payload)) =~ /\n/
    json
  else
    pretty_print_json(json)
    # json
  end
end