Class: R509::Config::CAConfigPool

Inherits:
Object
  • Object
show all
Defined in:
lib/r509/config.rb

Overview

pool of configs, so we can support multiple CAs from a single config file

Class Method Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (CAConfigPool) initialize(configs)

A new instance of CAConfigPool

Parameters:

  • configs (Hash)

    a customizable set of options

Options Hash (configs):



257
258
259
# File 'lib/r509/config.rb', line 257

def initialize(configs)
  @configs = configs
end

Class Method Details

+ (Object) from_yaml(name, yaml_data, opts = {})

Loads the named configuration config from a yaml string.

Parameters:

  • name (String)

    The name of the config within the file. Note that a single yaml file can contain more than one configuration.

  • yaml_data (String)

    The filename to load yaml config data from.



280
281
282
283
284
285
286
287
# File 'lib/r509/config.rb', line 280

def self.from_yaml(name, yaml_data, opts = {})
  conf = YAML.load(yaml_data)
  configs = {}
  conf[name].each_pair do |ca_name, data|
    configs[ca_name] = R509::Config::CAConfig.load_from_hash(data, opts)
  end
  R509::Config::CAConfigPool.new(configs)
end

Instance Method Details

- (Object) [](name)

retrieve a particular config by its name



267
268
269
# File 'lib/r509/config.rb', line 267

def [](name)
  @configs[name]
end

- (Object) all

A list of all the configs in this pool

Returns:

  • a list of all the configs in this pool



272
273
274
# File 'lib/r509/config.rb', line 272

def all
  @configs.values
end

- (Object) names

get all the config names



262
263
264
# File 'lib/r509/config.rb', line 262

def names
  @configs.keys
end