class Megam::Mixins::Assembly
Constants
- DEFAULT_DOCKER_PREFIX
- DEFAULT_VERTICE_PREFIX
- TORPEDO
Attributes
components[R]
envs[R]
id[R]
mixins[R]
name[R]
outputs[R]
policies[R]
Public Class Methods
new(params)
click to toggle source
# File lib/megam/mixins/assembly.rb, line 12 def initialize(params) params = Hash[params.map { |k, v| [k.to_sym, v] }] @id = params[:id] || params[:assemblyID] || '' @name = params[:assemblyname] @mixins = CommonDeployable.new(params) @outputs = Outputs.new(params) @components = add_components(params) @tosca_type = add_assembly_tosca_type(params) @policies = [] end
Public Instance Methods
to_hash()
click to toggle source
# File lib/megam/mixins/assembly.rb, line 23 def to_hash result = @mixins.to_hash result[:id] = @id if @id result[:name] = @name if @name result[:components] = @components if @components result[:outputs] = @outputs.to_array if @outputs result[:policies] = @policies if @policies result[:tosca_type] = @tosca_type if @tosca_type result end
Private Instance Methods
add_assembly_tosca_type(params)
click to toggle source
# File lib/megam/mixins/assembly.rb, line 49 def add_assembly_tosca_type(params) if params[:scm_name] == DEFAULT_DOCKER_PREFIX @tosca_type = params[:scm_name] + ".#{TORPEDO.downcase}.#{params[:os_name].downcase}" if params[:os_name] != nil else @tosca_type = DEFAULT_VERTICE_PREFIX + ".#{TORPEDO.downcase}.#{params[:os_name].downcase}" if params[:os_name] != nil end end
add_components(params)
click to toggle source
# File lib/megam/mixins/assembly.rb, line 41 def add_components(params) if components_enabled?(params) @components = Components.new(params).to_a else @components = [] end end
components_enabled?(params)
click to toggle source
If @components_enabled for type
# File lib/megam/mixins/assembly.rb, line 37 def components_enabled?(params) true if params[:cattype] != 'TORPEDO'.freeze end