Sha256: 767a06d95a75022485d2762b50af6255b602c1ab482c1d096a8eb3047f1db6e1

Contents?: true

Size: 789 Bytes

Versions: 9

Compression:

Stored size: 789 Bytes

Contents

require "digicert/request"
require "digicert/actions"

module Digicert
  class Base
    def initialize(attributes = {})
      @attributes = attributes
      extract_base_attribute_ids

      extract_local_attribute_ids
    end

    private

    attr_reader :attributes, :resource_id, :query_params

    # Override this method to extract ids that are specific
    # to each of the specific sub classes, for example: if
    # you want to extract `order_id` from the attributes
    #
    # @order_id = attributes.delete(:order_id)
    #
    def extract_local_attribute_ids
    end

    def extract_base_attribute_ids
      @query_params = attributes.delete(:params)
      @resource_id = attributes.delete(:resource_id)
    end

    def request_klass
      Digicert::Request
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
digicert-1.0.0 lib/digicert/base.rb
digicert-0.5.0 lib/digicert/base.rb
digicert-0.4.1 lib/digicert/base.rb
digicert-0.4.0 lib/digicert/base.rb
digicert-0.3.1 lib/digicert/base.rb
digicert-0.3.0 lib/digicert/base.rb
digicert-0.2.0 lib/digicert/base.rb
digicert-0.1.2 lib/digicert/base.rb
digicert-0.1.1 lib/digicert/base.rb