Class: Puppet::Pops::Loaders::LoaderModuleData

Inherits:
Object
  • Object
show all
Defined in:
lib/puppet/pops/loaders.rb

Overview

LoaderModuleData

Information about a Module and its loaders. TODO: should have reference to real model element containing all module data; this is faking it TODO: Should use Puppet::Module to get the metadata (as a hash) - a somewhat blunt instrument, but that is

what is available with a reasonable API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(puppet_module) ⇒ LoaderModuleData

Returns a new instance of LoaderModuleData.

Parameters:

  • puppet_module (Puppet::Module)

    the module instance for the module being represented



252
253
254
255
256
257
258
# File 'lib/puppet/pops/loaders.rb', line 252

def initialize(puppet_module)
  @state = :initial
  @puppet_module = puppet_module
  @resolutions = []
  @public_loader = nil
  @private_loader = nil
end

Instance Attribute Details

#private_loaderObject



244
245
246
# File 'lib/puppet/pops/loaders.rb', line 244

def private_loader
  @private_loader
end

#public_loaderObject



243
244
245
# File 'lib/puppet/pops/loaders.rb', line 243

def public_loader
  @public_loader
end

#puppet_moduleObject (readonly)

The Puppet::Module this LoaderModuleData represents in the loader configuration



248
249
250
# File 'lib/puppet/pops/loaders.rb', line 248

def puppet_module
  @puppet_module
end

#resolutionsObject



245
246
247
# File 'lib/puppet/pops/loaders.rb', line 245

def resolutions
  @resolutions
end

#stateObject



242
243
244
# File 'lib/puppet/pops/loaders.rb', line 242

def state
  @state
end

Instance Method Details

#dependency_namesObject



284
285
286
# File 'lib/puppet/pops/loaders.rb', line 284

def dependency_names
  @puppet_module.dependencies_as_modules.collect(&:name)
end

#nameObject



260
261
262
# File 'lib/puppet/pops/loaders.rb', line 260

def name
  @puppet_module.name
end

#pathObject



268
269
270
# File 'lib/puppet/pops/loaders.rb', line 268

def path
  @puppet_module.path
end

#resolved?Boolean

Returns:

  • (Boolean)


272
273
274
# File 'lib/puppet/pops/loaders.rb', line 272

def resolved?
  @state == :resolved
end

#restrict_to_dependencies?Boolean

Returns:

  • (Boolean)


276
277
278
# File 'lib/puppet/pops/loaders.rb', line 276

def restrict_to_dependencies?
  @puppet_module.has_metadata?
end

#unmet_dependencies?Boolean

Returns:

  • (Boolean)


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

def unmet_dependencies?
  @puppet_module.unmet_dependencies.any?
end

#versionObject



264
265
266
# File 'lib/puppet/pops/loaders.rb', line 264

def version
  @puppet_module.version
end