Class: DTK::DSL::ServiceAndComponentInfo::ModuleRef

Inherits:
Object
  • Object
show all
Defined in:
lib/dsl/service_and_component_info/module_ref.rb

Constant Summary collapse

NAMESPACE_NAME_DELIM =
'/'

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(namespace, module_name, version) ⇒ ModuleRef

Returns a new instance of ModuleRef.



22
23
24
25
26
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 22

def initialize(namespace, module_name, version)
  @namespace = namespace
  @module_name = module_name
  @version     = version || 'master'
end

Instance Attribute Details

#module_nameObject (readonly)

Returns the value of attribute module_name.



21
22
23
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 21

def module_name
  @module_name
end

#namespaceObject (readonly)

Returns the value of attribute namespace.



21
22
23
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 21

def namespace
  @namespace
end

#versionObject (readonly)

Returns the value of attribute version.



21
22
23
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 21

def version
  @version
end

Instance Method Details

#combined_module_formObject



30
31
32
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 30

def combined_module_form
  { "#{@namespace}#{NAMESPACE_NAME_DELIM}#{@module_name}" => @version }
end


40
41
42
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 40

def print_form
  "#{@namespace}#{NAMESPACE_NAME_DELIM}#{@module_name}(#{@version})"
end

#raise_error_if_conflict(ndx_existing_modules) ⇒ Object



34
35
36
37
38
# File 'lib/dsl/service_and_component_info/module_ref.rb', line 34

def raise_error_if_conflict(ndx_existing_modules)
  if matching_module_info = ndx_existing_modules[@module_name]
    fail Error::Usage, conflict_error_msg(matching_module_info) unless match?(matching_module_info)
  end
end