Class: Google::Auth::IDTokens::AggregateKeySource

Inherits:
Object
  • Object
show all
Defined in:
lib/googleauth/id_tokens/key_sources.rb

Overview

A key source that aggregates other key sources. This means it will aggregate the keys provided by its constituent sources. Additionally, when asked to refresh, it will refresh all its constituent sources.

Instance Method Summary collapse

Constructor Details

#initialize(sources) ⇒ AggregateKeySource

Create a key source that aggregates other key sources.

Parameters:

  • sources (Array<key source>)

    The key sources to aggregate.



369
370
371
# File 'lib/googleauth/id_tokens/key_sources.rb', line 369

def initialize sources
  @sources = Array(sources)
end

Instance Method Details

#current_keysArray<KeyInfo>

Return the current keys, without attempting to refresh.

Returns:



378
379
380
# File 'lib/googleauth/id_tokens/key_sources.rb', line 378

def current_keys
  @sources.flat_map(&:current_keys)
end

#refresh_keysArray<KeyInfo>

Attempt to refresh keys and return the new keys.

Returns:

Raises:



388
389
390
# File 'lib/googleauth/id_tokens/key_sources.rb', line 388

def refresh_keys
  @sources.flat_map(&:refresh_keys)
end