class Acme::Client::Resources::Directory
Constants
- DIRECTORY_META
- DIRECTORY_RESOURCES
Public Class Methods
new(client, **arguments)
click to toggle source
# File lib/acme/client/resources/directory.rb, line 20 def initialize(client, **arguments) @client = client assign_attributes(**arguments) end
Public Instance Methods
caa_identities()
click to toggle source
# File lib/acme/client/resources/directory.rb, line 40 def caa_identities meta[DIRECTORY_META[:caa_identities]] end
endpoint_for(key)
click to toggle source
# File lib/acme/client/resources/directory.rb, line 25 def endpoint_for(key) @directory.fetch(key) do |missing_key| raise Acme::Client::Error::UnsupportedOperation, "Directory at #{@url} does not include `#{missing_key}`" end end
external_account_required()
click to toggle source
# File lib/acme/client/resources/directory.rb, line 44 def external_account_required meta[DIRECTORY_META[:external_account_required]] end
meta()
click to toggle source
# File lib/acme/client/resources/directory.rb, line 48 def meta @directory[:meta] end
terms_of_service()
click to toggle source
# File lib/acme/client/resources/directory.rb, line 32 def terms_of_service meta[DIRECTORY_META[:terms_of_service]] end
website()
click to toggle source
# File lib/acme/client/resources/directory.rb, line 36 def website meta[DIRECTORY_META[:website]] end
Private Instance Methods
assign_attributes(directory:)
click to toggle source
# File lib/acme/client/resources/directory.rb, line 54 def assign_attributes(directory:) @directory = {} @directory[:meta] = directory.delete('meta') DIRECTORY_RESOURCES.each do |key, entry| @directory[key] = URI(directory[entry]) if directory[entry] end end