Sha256: 4063429f8a6a47499a044375fafb971a62167415f5f073c371571184b2021ab9

Contents?: true

Size: 1.19 KB

Versions: 2

Compression:

Stored size: 1.19 KB

Contents

# Copyright (c) 2022 Contrast Security, Inc. See https://www.contrastsecurity.com/enduser-terms-0317a for more details.
# frozen_string_literal: true

require 'contrast/components/base'

module Contrast
  module Components
    module Polling
      # A wrapper build around the agent.polling config
      class Interface
        include Contrast::Components::ComponentBase

        # @return [Integer, nil]
        attr_reader :server_settings_ms
        # @return [Integer, nil]
        attr_reader :app_settings_ms
        # @return [String]
        attr_reader :canon_name
        # @return [Array]
        attr_reader :config_values
        # @return [Integer, nil]
        attr_reader :batch_reporting_interval_ms

        CANON_NAME = 'agent.polling'
        CONFIG_VALUES = %w[server_settings_ms app_settings_ms batch_reporting_interval_ms].cs__freeze

        def initialize hsh = {}
          @config_values = CONFIG_VALUES
          @canon_name = CANON_NAME
          return unless hsh

          @server_settings_ms = hsh[:server_settings_ms]
          @batch_reporting_interval_ms = hsh[:batch_reporting_interval_ms]
          @app_settings_ms = hsh[:app_settings_ms]
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
contrast-agent-6.11.0 lib/contrast/components/polling.rb
contrast-agent-6.10.0 lib/contrast/components/polling.rb