Sha256: 24f2d88967a30723aeaf8feeba324d16d37950a09964f9d5db46e90af7192a40

Contents?: true

Size: 1.84 KB

Versions: 2

Compression:

Stored size: 1.84 KB

Contents

# frozen_string_literal: true

module Shark
  module AssetService
    module Resource
      mattr_accessor :site
    end
  end

  module ContactService
    module Resource
      mattr_accessor :site
    end
  end

  module ConsentService
    module Resource
      mattr_accessor :site
    end
  end

  module DoubleOptIn
    class ExceededNumberOfVerificationRequestsError < Error; end
    class RequestedUnverifiedExecutionError < Error; end
    class VerificationExpiredError < Error; end

    module Resource
      mattr_accessor :site
    end
  end

  module NotificationService
    module Resource
      mattr_accessor :site
    end
  end

  module SubscriptionService
    module Resource
      mattr_accessor :site
    end
  end

  module SurveyService
    module Resource
      mattr_accessor :site
    end
  end

  class Configuration
    class Service
      attr_accessor :site
      attr_reader :headers

      def initialize
        @headers = {}
      end

      def headers=(value)
        @headers.merge!(value)
      end
    end

    #
    # Shark Configuration
    #
    attr_accessor :cache, :logger
    attr_reader :contact_service
    attr_reader :consent_service
    attr_reader :double_opt_in
    attr_reader :form_service
    attr_reader :survey_service
    attr_reader :notification_service
    attr_reader :subscription_service
    attr_reader :asset_service
    attr_reader :mailing_service

    def initialize
      @asset_service = AssetService::Resource
      @contact_service = ContactService::Resource
      @consent_service = ConsentService::Resource
      @double_opt_in = DoubleOptIn::Resource
      @form_service = Service.new
      @mailing_service = Service.new
      @notification_service = NotificationService::Resource
      @subscription_service = SubscriptionService::Resource
      @survey_service = SurveyService::Resource
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bima-shark-sdk-2.3.1 lib/shark/configuration.rb
bima-shark-sdk-2.3.0 lib/shark/configuration.rb