Class: Puppet::Environments::Combined Private

Inherits:
Object
  • Object
show all
Includes:
EnvironmentLoader
Defined in:
lib/puppet/environments.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Combine together multiple loaders to act as one.

Instance Method Summary collapse

Methods included from EnvironmentLoader

#get!

Constructor Details

#initialize(*loaders) ⇒ Combined

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Combined.



280
281
282
# File 'lib/puppet/environments.rb', line 280

def initialize(*loaders)
  @loaders = loaders
end

Instance Method Details

#get(name) ⇒ Puppet::Node::Environment?

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Find a named environment



295
296
297
298
299
300
301
302
# File 'lib/puppet/environments.rb', line 295

def get(name)
  @loaders.each do |loader|
    if env = loader.get(name)
      return env
    end
  end
  nil
end

#get_conf(name) ⇒ Puppet::Setting::EnvironmentConf?

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Attempt to obtain the initial configuration for the environment. Not all loaders can provide this.



305
306
307
308
309
310
311
312
# File 'lib/puppet/environments.rb', line 305

def get_conf(name)
  @loaders.each do |loader|
    if conf = loader.get_conf(name)
      return conf
    end
  end
  nil
end

#listArray<Puppet::Node::Environment>

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns All of the environments known to the loader.



290
291
292
# File 'lib/puppet/environments.rb', line 290

def list
  @loaders.collect(&:list).flatten
end

#search_pathsArray<String>

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

A list of indicators of where the loader is getting its environments from.



285
286
287
# File 'lib/puppet/environments.rb', line 285

def search_paths
  @loaders.collect(&:search_paths).flatten
end