Class | Yapra::PipelineBase |
In: |
lib/yapra/pipeline_base.rb
|
Parent: | Object |
context | [R] | |
logger | [W] | |
yapra | [R] |
# File lib/yapra/pipeline_base.rb, line 9 9: def initialize pipeline_name, yapra=Yapra::Runtime.new 10: @logger = nil 11: @yapra = yapra 12: @context = { 'pipeline_name' => pipeline_name } 13: 14: @module_name_prefix = construct_module_name_prefix yapra.env 15: end
# File lib/yapra/pipeline_base.rb, line 25 25: def load plugin_name 26: load_error_stack = [] 27: plugin_class = nil 28: @module_name_prefix.each do |prefix| 29: yapra_module_name = "#{prefix}#{plugin_name}" 30: begin 31: plugin_class = Yapra.load_class_constant(yapra_module_name) 32: break if plugin_class 33: rescue LoadError, NameError => ex 34: load_error_stack << ex 35: end 36: end 37: raise_load_error(load_error_stack, command) unless plugin_class 38: 39: plugin = initialize_plugin( plugin_class ) 40: 41: plugin 42: end
# File lib/yapra/pipeline_base.rb, line 21 21: def logger 22: return @logger || Yapra::Runtime.logger 23: end
# File lib/yapra/pipeline_base.rb, line 53 53: def construct_module_name_prefix env 54: module_name_prefix = [ 'Yapra::Plugin::', '' ] 55: if env['module_name_prefix'] 56: if env['module_name_prefix'].kind_of?(Array) 57: module_name_prefix = env['module_name_prefix'] 58: else 59: module_name_prefix = [ env['module_name_prefix'] ] 60: end 61: end 62: module_name_prefix 63: end