Class: Puppet::Pops::Loader::LoaderPaths::ResourceTypeImplPP

Inherits:
PuppetSmartPath show all
Defined in:
lib/puppet/pops/loader/loader_paths.rb

Constant Summary collapse

RESOURCE_TYPES_PATH_PP =
File.join('.resource_types')

Constants inherited from PuppetSmartPath

PuppetSmartPath::EXTENSION

Instance Attribute Summary

Attributes inherited from SmartPath

#generic_path

Instance Method Summary collapse

Methods inherited from PuppetSmartPath

#extension

Methods inherited from SmartPath

#initialize

Constructor Details

This class inherits a constructor from Puppet::Pops::Loader::LoaderPaths::SmartPath

Instance Method Details

#effective_path(typed_name, start_index_in_name) ⇒ Object

The effect paths for resource type impl is the full name since resource types are not name spaced. This overrides the default PuppetSmartPath.



189
190
191
192
193
# File 'lib/puppet/pops/loader/loader_paths.rb', line 189

def effective_path(typed_name, start_index_in_name)
  # Resource type to name does not skip the name-space
  # i.e. <module>/mymodule/resource_types/foo.pp is the reource type foo
  "#{File.join(generic_path, typed_name.name_parts)}.pp"
end

#instantiatorObject



181
182
183
# File 'lib/puppet/pops/loader/loader_paths.rb', line 181

def instantiator()
  Puppet::Pops::Loader::PuppetResourceTypeImplInstantiator
end

#relative_pathObject



173
174
175
# File 'lib/puppet/pops/loader/loader_paths.rb', line 173

def relative_path
  RESOURCE_TYPES_PATH_PP
end

#root_pathObject



177
178
179
# File 'lib/puppet/pops/loader/loader_paths.rb', line 177

def root_path
  @loader.path
end