class DTK::DSL::ServiceAndComponentInfo::TransformTo::Parser::ModuleRefs

Public Instance Methods

update_output_hash?() click to toggle source
# File lib/dsl/service_and_component_info/transform_to/parser/module_refs.rb, line 21
def update_output_hash?
  if module_dsl_canonical_hash = input_file_hash?(:module)
    if dependencies = module_dsl_canonical_hash.val(:DependentModules)
      add_dependencies_to_output_hash!(dependencies)
      output_hash
    end
  end
end

Private Instance Methods

add_dependencies_to_output_hash!(dependencies_canonical_array) click to toggle source
# File lib/dsl/service_and_component_info/transform_to/parser/module_refs.rb, line 32
def add_dependencies_to_output_hash!(dependencies_canonical_array)
  component_modules = dependencies_canonical_array.inject({}) do |h, dependency_canonical_hash|
    module_name = dependency_canonical_hash.val(:ModuleName)
    namespace   = dependency_canonical_hash.val(:Namespace)
    version     = version?(dependency_canonical_hash)

    module_info = { 'namespace' => namespace }
    module_info.merge!('version' => version) if version
    h.merge(module_name => module_info)
  end

  output_hash.merge!('component_modules' => component_modules) unless component_modules.empty?
end
version?(dependency_canonical_hash) click to toggle source
# File lib/dsl/service_and_component_info/transform_to/parser/module_refs.rb, line 46
def version?(dependency_canonical_hash)
  if version = dependency_canonical_hash.val(:ModuleVersion)
    version == 'master' ? nil : version
  end
end