class Acme::Client::Resources::Directory
def assign_attributes(directory:)
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
def caa_identities
def caa_identities meta[DIRECTORY_META[:caa_identities]] end
def endpoint_for(key)
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
def external_account_required
def external_account_required meta[DIRECTORY_META[:external_account_required]] end
def initialize(client, **arguments)
def initialize(client, **arguments) @client = client assign_attributes(**arguments) end
def meta
def meta @directory[:meta] end
def terms_of_service
def terms_of_service meta[DIRECTORY_META[:terms_of_service]] end
def website
def website meta[DIRECTORY_META[:website]] end