Sha256: 9c3ef2e684b9e88448c7fed254837841fed91d98924ccb07c4767a1f41813a73

Contents?: true

Size: 646 Bytes

Versions: 96

Compression:

Stored size: 646 Bytes

Contents

module Recurly
  # This class represents a request to Recurly.
  # It's used to validate requests data as well as
  # cast and serialize the request data to JSON.
  class Request
    extend Schema::SchemaFactory
    extend Schema::RequestCaster
    extend Schema::ResourceCaster
    include Schema::SchemaValidator

    attr_reader :attributes

    def ==(other_resource)
      self.attributes == other_resource.attributes
    end

    def to_s
      self.inspect
    end

    protected

    def initialize(attributes = {})
      @attributes = self.class.cast_request(attributes)
    end

    def schema
      self.class.schema
    end
  end
end

Version data entries

96 entries across 96 versions & 1 rubygems

Version Path
recurly-4.37.0 lib/recurly/request.rb
recurly-3.28.0 lib/recurly/request.rb
recurly-4.36.0 lib/recurly/request.rb
recurly-4.35.0 lib/recurly/request.rb
recurly-3.27.0 lib/recurly/request.rb
recurly-4.34.0 lib/recurly/request.rb
recurly-3.26.0 lib/recurly/request.rb
recurly-4.33.0 lib/recurly/request.rb
recurly-4.32.0 lib/recurly/request.rb
recurly-4.31.0 lib/recurly/request.rb
recurly-4.30.0 lib/recurly/request.rb
recurly-4.29.0 lib/recurly/request.rb
recurly-3.25.0 lib/recurly/request.rb
recurly-4.28.0 lib/recurly/request.rb
recurly-4.27.0 lib/recurly/request.rb
recurly-3.24.0 lib/recurly/request.rb
recurly-3.23.0 lib/recurly/request.rb
recurly-4.26.0 lib/recurly/request.rb
recurly-4.25.0 lib/recurly/request.rb
recurly-4.24.0 lib/recurly/request.rb