Sha256: 4c9d1bdae5d80273fc88332d2c5a6c8e1ba69633a8ef7ad3c3f5a2bdda05abef

Contents?: true

Size: 504 Bytes

Versions: 32

Compression:

Stored size: 504 Bytes

Contents

require 'intercom/client_collection_proxy'

module Intercom
  module Service
    class BaseService
      attr_reader :client

      def initialize(client)
        @client = client
      end

      def collection_class
        raise NotImplementedError
      end

      def collection_proxy_class
        Intercom::ClientCollectionProxy
      end

      def from_api(api_response)
        object = collection_class.new
        object.from_response(api_response)
        object
      end
    end
  end
end

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
intercom-3.9.5 lib/intercom/service/base_service.rb
intercom-3.9.4 lib/intercom/service/base_service.rb
intercom-3.9.3 lib/intercom/service/base_service.rb
intercom-3.9.2 lib/intercom/service/base_service.rb
intercom-3.9.0 lib/intercom/service/base_service.rb
intercom-3.8.1 lib/intercom/service/base_service.rb
intercom-3.8.0 lib/intercom/service/base_service.rb
intercom-3.7.7 lib/intercom/service/base_service.rb
intercom-3.7.6 lib/intercom/service/base_service.rb
intercom-3.7.5 lib/intercom/service/base_service.rb
intercom-3.7.4 lib/intercom/service/base_service.rb
intercom-3.7.3 lib/intercom/service/base_service.rb
intercom-3.7.2 lib/intercom/service/base_service.rb
intercom-3.7.1 lib/intercom/service/base_service.rb
intercom-3.7.0 lib/intercom/service/base_service.rb
intercom-3.6.2 lib/intercom/service/base_service.rb
intercom-3.6.1 lib/intercom/service/base_service.rb
intercom-3.6.0 lib/intercom/service/base_service.rb
intercom-3.5.26 lib/intercom/service/base_service.rb
intercom-3.5.25 lib/intercom/service/base_service.rb