Class: Evervault::Http::RelayOutboundConfig
- Inherits:
-
Object
- Object
- Evervault::Http::RelayOutboundConfig
- Defined in:
- lib/evervault/http/relay_outbound_config.rb
Constant Summary collapse
- DEFAULT_POLL_INTERVAL =
5
- RELAY_OUTBOUND_CONFIG_API_ENDPOINT =
'v2/relay-outbound'
- @@destination_domains_cache =
nil
- @@poll_interval =
DEFAULT_POLL_INTERVAL
- @@timer =
nil
Class Method Summary collapse
Instance Method Summary collapse
- #get_destination_domains ⇒ Object
-
#initialize(base_url:, request:) ⇒ RelayOutboundConfig
constructor
A new instance of RelayOutboundConfig.
Constructor Details
#initialize(base_url:, request:) ⇒ RelayOutboundConfig
Returns a new instance of RelayOutboundConfig.
13 14 15 16 17 18 19 20 |
# File 'lib/evervault/http/relay_outbound_config.rb', line 13 def initialize(base_url:, request:) @base_url = base_url @request = request get_relay_outbound_config if @@destination_domains_cache.nil? return unless @@timer.nil? @@timer = Evervault::Threading::RepeatedTimer.new(@@poll_interval, -> { get_relay_outbound_config }) end |
Class Method Details
.clear_cache ⇒ Object
33 34 35 |
# File 'lib/evervault/http/relay_outbound_config.rb', line 33 def self.clear_cache @@destination_domains_cache = nil end |
.disable_polling ⇒ Object
26 27 28 29 30 31 |
# File 'lib/evervault/http/relay_outbound_config.rb', line 26 def self.disable_polling return if @@timer.nil? @@timer.stop @@timer = nil end |
Instance Method Details
#get_destination_domains ⇒ Object
22 23 24 |
# File 'lib/evervault/http/relay_outbound_config.rb', line 22 def get_destination_domains @@destination_domains_cache end |