Sha256: 4f7e93120865bbf3580bc757dac2e4d922da003fb5a0a35c597ca8a2960f3545

Contents?: true

Size: 1.52 KB

Versions: 21

Compression:

Stored size: 1.52 KB

Contents

module SparkApi
  
  # All known response codes listed in the API
  module ResponseCodes
    NOT_FOUND = 404
    METHOD_NOT_ALLOWED = 405
    INVALID_KEY = 1000
    DISABLED_KEY = 1010
    API_USER_REQUIRED = 1015
    SESSION_TOKEN_EXPIRED = 1020
    SSL_REQUIRED = 1030
    INVALID_JSON = 1035
    INVALID_FIELD = 1040
    MISSING_PARAMETER = 1050
    INVALID_PARAMETER = 1053
    CONFLICTING_DATA = 1055
    NOT_AVAILABLE= 1500
    RATE_LIMIT_EXCEEDED = 1550
  end
  
  # Errors built from API responses
  class InvalidResponse < StandardError; end
  class ClientError < StandardError
    attr_reader :code, :status, :details, :request_path, :request_id, :errors
    def initialize (options = {})
      # Support the standard initializer for errors
      opts = options.is_a?(Hash) ? options : {:message => options.to_s}
      @code = opts[:code]
      @status = opts[:status]
      @details = opts[:details]
      @request_path = opts[:request_path]
      @request_id = opts[:request_id]
      @errors = opts[:errors]
      super(opts[:message])
    end
    
  end
  class NotFound < ClientError; end
  class PermissionDenied < ClientError; end
  class NotAllowed < ClientError; end
  class BadResourceRequest < ClientError; end
   
  # =Errors
  # Error messages and other error handling
  module Errors
    def self.ssl_verification_error
      "SSL verification problem: if connecting to a trusted but non production API endpoint, " + 
      "set 'ssl_verify' to false in the configuration or add '--no_verify' to the CLI command."
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
spark_api-2.0.0 lib/spark_api/errors.rb
spark_api-1.6.3 lib/spark_api/errors.rb
spark_api-1.6.2 lib/spark_api/errors.rb
spark_api-1.6.1 lib/spark_api/errors.rb
spark_api-1.5.7 lib/spark_api/errors.rb
spark_api-1.6.0 lib/spark_api/errors.rb
spark_api-1.5.6 lib/spark_api/errors.rb
spark_api-1.5.5 lib/spark_api/errors.rb
spark_api-1.5.4 lib/spark_api/errors.rb
spark_api-1.5.3 lib/spark_api/errors.rb
spark_api-1.5.2 lib/spark_api/errors.rb
spark_api-1.5.1 lib/spark_api/errors.rb
spark_api-1.5.0 lib/spark_api/errors.rb
spark_api-1.4.34 lib/spark_api/errors.rb
spark_api-1.4.32 lib/spark_api/errors.rb
spark_api-1.4.31 lib/spark_api/errors.rb
spark_api-1.4.29 lib/spark_api/errors.rb
spark_api-1.4.28 lib/spark_api/errors.rb
spark_api-1.4.27 lib/spark_api/errors.rb
spark_api-1.4.26 lib/spark_api/errors.rb