Class: Puppet::Plugins::DataProviders::Registry Private

Inherits:
Object
  • Object
show all
Defined in:
lib/puppet/plugins/data_providers/registry.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.

Since:

  • Puppet 4.0.0

Class Method Summary collapse

Class Method Details

.hash_of_environment_data_providersObject

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.

Since:

  • Puppet 4.0.0



22
23
24
25
# File 'lib/puppet/plugins/data_providers/registry.rb', line 22

def self.hash_of_environment_data_providers
  @@HASH_OF_ENV_DATA_PROVIDERS ||= Puppet::Pops::Types::TypeFactory.hash_of(
    Puppet::Pops::Types::TypeFactory.type_of(ENV_DATA_PROVIDERS_TYPE))
end

.hash_of_module_data_providersObject

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.

Since:

  • Puppet 4.0.0



17
18
19
20
# File 'lib/puppet/plugins/data_providers/registry.rb', line 17

def self.hash_of_module_data_providers
  @@HASH_OF_MODULE_DATA_PROVIDERS ||= Puppet::Pops::Types::TypeFactory.hash_of(
    Puppet::Pops::Types::TypeFactory.type_of(MODULE_DATA_PROVIDERS_TYPE))
end

.hash_of_path_based_data_provider_factoriesObject

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.

Since:

  • Puppet 4.0.0



27
28
29
30
# File 'lib/puppet/plugins/data_providers/registry.rb', line 27

def self.hash_of_path_based_data_provider_factories
  @@HASH_OF_PATH_BASED_DATA_PROVIDER_FACTORIES ||= Puppet::Pops::Types::TypeFactory.hash_of(
    Puppet::Pops::Types::TypeFactory.type_of(PATH_BASED_DATA_PROVIDER_FACTORIES_TYPE))
end

.hash_of_per_module_data_providerObject

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.

Since:

  • Puppet 4.0.0



13
14
15
# File 'lib/puppet/plugins/data_providers/registry.rb', line 13

def self.hash_of_per_module_data_provider
  @@HASH_OF_PER_MODULE_DATA_PROVIDERS ||= Puppet::Pops::Types::TypeFactory.hash_of(PER_MODULE_DATA_PROVIDER_TYPE)
end

.register_defaults(default_bindings) ⇒ Object

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.

Registers a ‘none’ environment data provider, and a ‘none’ module data provider as the defaults. This is only done to allow that something binds to ‘none’ rather than removing the entire binding (which has the same effect).

Since:

  • Puppet 4.0.0



36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/puppet/plugins/data_providers/registry.rb', line 36

def self.register_defaults(default_bindings)
  default_bindings.bind do
    name('none')
    in_multibind(ENV_DATA_PROVIDERS_KEY)
    to_instance(ENV_DATA_PROVIDERS_TYPE)
  end

  default_bindings.bind do
    name('none')
    in_multibind(MODULE_DATA_PROVIDERS_KEY)
    to_instance(MODULE_DATA_PROVIDERS_TYPE)
  end
end

.register_extensions(extensions) ⇒ Object

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.

Since:

  • Puppet 4.0.0



6
7
8
9
10
11
# File 'lib/puppet/plugins/data_providers/registry.rb', line 6

def self.register_extensions(extensions)
  extensions.multibind(PER_MODULE_DATA_PROVIDER_KEY).name(PER_MODULE_DATA_PROVIDER_KEY).hash_of(PER_MODULE_DATA_PROVIDER_TYPE)
  extensions.multibind(ENV_DATA_PROVIDERS_KEY).name(ENV_DATA_PROVIDERS_KEY).hash_of(ENV_DATA_PROVIDERS_TYPE)
  extensions.multibind(MODULE_DATA_PROVIDERS_KEY).name(MODULE_DATA_PROVIDERS_KEY).hash_of(MODULE_DATA_PROVIDERS_TYPE)
  extensions.multibind(PATH_BASED_DATA_PROVIDER_FACTORIES_KEY).name(PATH_BASED_DATA_PROVIDER_FACTORIES_KEY).hash_of(PATH_BASED_DATA_PROVIDER_FACTORIES_TYPE)
end