Sha256: 1c487e7dd1f7ade08a8d267254e338b172c92002d2808a7fd6e53bda682420b7

Contents?: true

Size: 1.45 KB

Versions: 3

Compression:

Stored size: 1.45 KB

Contents

module Braintree
  class Address
    include BaseModule

    attr_reader :company
    attr_reader :country_code_alpha2
    attr_reader :country_code_alpha3
    attr_reader :country_code_numeric
    attr_reader :country_name
    attr_reader :created_at
    attr_reader :customer_id
    attr_reader :extended_address
    attr_reader :first_name
    attr_reader :id
    attr_reader :international_phone
    attr_reader :last_name
    attr_reader :locality
    attr_reader :phone_number
    attr_reader :postal_code
    attr_reader :region
    attr_reader :street_address
    attr_reader :updated_at

    def self.create(*args)
      Configuration.gateway.address.create(*args)
    end

    def self.create!(*args)
      Configuration.gateway.address.create!(*args)
    end

    def self.delete(*args)
      Configuration.gateway.address.delete(*args)
    end

    def self.find(*args)
      Configuration.gateway.address.find(*args)
    end

    def self.update(*args)
      Configuration.gateway.address.update(*args)
    end

    def self.update!(*args)
      Configuration.gateway.address.update!(*args)
    end

    def initialize(gateway, attributes)
      @gateway = gateway
      set_instance_variables_from_hash(attributes)
    end

    def ==(other)
      return false unless other.is_a?(Address)
      id == other.id && customer_id == other.customer_id
    end

    class << self
      protected :new
    end

    def self._new(*args)
      self.new(*args)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
braintree-4.23.0 lib/braintree/address.rb
braintree-4.22.0 lib/braintree/address.rb
braintree-4.21.0 lib/braintree/address.rb