class Bricolage::SrcTableParam
Public Class Methods
new( name = 'src-tables', arg_spec = 'VAR:[SCHEMA.]TABLE', description = 'Source table name.', optional: true, publish: true )
click to toggle source
Calls superclass method
Bricolage::Param::new
# File lib/bricolage/parameters.rb, line 523 def initialize( name = 'src-tables', arg_spec = 'VAR:[SCHEMA.]TABLE', description = 'Source table name.', optional: true, # Source tables may not exist (e.g. data loading) publish: true ) super name, arg_spec, description, optional: optional, publish: publish end
Public Instance Methods
default_value(ctx, vars)
click to toggle source
# File lib/bricolage/parameters.rb, line 551 def default_value(ctx, vars) {} end
materialize(h, ctx, vars)
click to toggle source
# File lib/bricolage/parameters.rb, line 555 def materialize(h, ctx, vars) map = {} h.each do |name, spec| map[name] = TableSpec.parse(expand(spec, vars)) end map end
option_name()
click to toggle source
# File lib/bricolage/parameters.rb, line 533 def option_name 'src-table' end
parse_option_value(value, h)
click to toggle source
# File lib/bricolage/parameters.rb, line 537 def parse_option_value(value, h) var, spec = value.split(':', 2) if not var or var.empty? raise ParameterError, "missing variable name: #{value.inspect}" end (h ||= {})[var] = spec h # accumulator end
parse_value(h)
click to toggle source
# File lib/bricolage/parameters.rb, line 546 def parse_value(h) raise ParameterError, "bad type for parameter #{name}: #{h.class}" unless h.kind_of?(Hash) h.empty? ? nil : h end
variables(h)
click to toggle source
# File lib/bricolage/parameters.rb, line 563 def variables(h) h.map {|name, value| ResolvedVariable.new(name, value.to_s) } end