Sha256: e6b5c5d89a29fc82c61ace2db1f214f0b9e193086fadaf1ac59a490e1578cdc9

Contents?: true

Size: 570 Bytes

Versions: 38

Compression:

Stored size: 570 Bytes

Contents

module MuckEngine
  class JsonParser
  
    # The various json parsers can choke on various json so try them all
    def self.json_parse(data)
      try_crack(data) || try_json(data) || try_active_json(data)
    end
  
    def self.try_crack(data)
      Crack::JSON.parse(data)
    rescue => ex
      #puts ex
      nil
    end
  
    def self.try_json(data)
     JSON.parse(data)
    rescue => ex
      #puts ex
      nil
    end
  
    def self.try_active_json(data)
      ActiveSupport::JSON.decode(data)
    rescue => ex
      #puts ex
      nil
    end
  
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
muck-engine-3.5.0 lib/muck-engine/json.rb
muck-engine-3.4.0 lib/muck-engine/json.rb
muck-engine-3.3.18 lib/muck-engine/json.rb
muck-engine-3.3.17 lib/muck-engine/json.rb
muck-engine-3.3.16 lib/muck-engine/json.rb
muck-engine-3.3.15 lib/muck-engine/json.rb
muck-engine-3.3.14 lib/muck-engine/json.rb
muck-engine-3.3.13 lib/muck-engine/json.rb
muck-engine-3.3.12 lib/muck-engine/json.rb
muck-engine-3.3.11 lib/muck-engine/json.rb
muck-engine-3.3.10 lib/muck-engine/json.rb
muck-engine-3.3.9 lib/muck-engine/json.rb
muck-engine-3.3.8 lib/muck-engine/json.rb
muck-engine-3.3.7 lib/muck-engine/json.rb
muck-engine-3.3.6 lib/muck-engine/json.rb
muck-engine-3.3.5 lib/muck-engine/json.rb
muck-engine-3.3.4 lib/muck-engine/json.rb
muck-engine-3.3.3 lib/muck-engine/json.rb
muck-engine-3.3.2 lib/muck-engine/json.rb
muck-engine-3.3.1 lib/muck-engine/json.rb