Sha256: 45891b2deefb3b0ea9379a3a20144801023d4830dd1863f7a91069bafd9dd5ae
Contents?: true
Size: 1.26 KB
Versions: 4
Compression:
Stored size: 1.26 KB
Contents
module AirbrakeAPI class Error < AirbrakeAPI::Base def self.find(*args) setup results = case args.first when Fixnum find_individual(args) when :all find_all(args) else raise AirbrakeError.new('Invalid argument') end raise AirbrakeError.new('No results found.') if results.nil? raise AirbrakeError.new(results.errors.error) if results.errors results.group || results.groups end def self.update(error, options) setup response = put(error_path(error), :body => options) if response.code == 403 raise AirbrakeError.new('SSL should be enabled - use Airbrake.secure = true in configuration') end results = Hashie::Mash.new(response) raise AirbrakeError.new(results.errors.error) if results.errors results.group end private def self.find_all(args) options = args.extract_options! fetch(collection_path, options) end def self.find_individual(args) id = args.shift options = args.extract_options! fetch(error_path(id), options) end def self.collection_path '/errors.xml' end def self.error_path(error_id) "/errors/#{error_id}.xml" end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
airbrake-api-3.3.0 | lib/airbrake-api/error.rb |
airbrake-api-3.2.3 | lib/airbrake-api/error.rb |
airbrake-api-3.2.2 | lib/airbrake-api/error.rb |
airbrake-api-3.2.1 | lib/airbrake-api/error.rb |