class HttpSignatures::KeyStore

Public Class Methods

new(key_hash) click to toggle source
# File lib/http_signatures/key_store.rb, line 4
def initialize(key_hash)
  @keys = {}
  key_hash.each { |id, secret| self[id] = secret }
end

Public Instance Methods

fetch(id) click to toggle source
# File lib/http_signatures/key_store.rb, line 9
def fetch(id)
  @keys.fetch(id)
end
only_key() click to toggle source
# File lib/http_signatures/key_store.rb, line 13
def only_key
  if @keys.one?
    @keys.values.first
  else
    raise KeyError, "Expected 1 key, found #{@keys.size}"
  end
end

Private Instance Methods

[]=(id, secret) click to toggle source
# File lib/http_signatures/key_store.rb, line 23
def []=(id, secret)
  @keys[id] = Key.new(id: id, secret: secret)
end