class Bricolage::StreamingLoad::StreamingLoadV3Job

Constants

DEFAULT_LOAD_OPTIONS

Public Class Methods

declarations(params) click to toggle source
# File lib/bricolage/streamingload/jobparams.rb, line 111
def self.declarations(params)
  Bricolage::Declarations.new(
    'dest_table' => nil,
  )
end
default_load_options() click to toggle source
# File lib/bricolage/streamingload/jobparams.rb, line 94
def self.default_load_options
end
new(params) click to toggle source
# File lib/bricolage/streamingload/jobparams.rb, line 117
def initialize(params)
  @params = params
end
parameters(params) click to toggle source
# File lib/bricolage/streamingload/jobparams.rb, line 83
def self.parameters(params)
  params.add DestTableParam.new(optional: false)
  params.add DestTableParam.new('work-table', optional: true)
  params.add KeyValuePairsParam.new('load-options', 'OPTIONS', 'Loader options.',
      optional: true, default: DEFAULT_LOAD_OPTIONS,
      value_handler: lambda {|value, ctx, vars| PSQLLoadOptions.parse(value) })
  params.add SQLFileParam.new('sql-file', 'PATH', 'SQL to insert rows from the work table to the target table.', optional: true)
  params.add DataSourceParam.new('sql', 'redshift-ds', 'Target data source.')
  params.add DataSourceParam.new('s3', 'ctl-ds', 'Manifest file data source.')
end

Public Instance Methods

bind(ctx, vars) click to toggle source
# File lib/bricolage/streamingload/jobparams.rb, line 121
def bind(ctx, vars)
  @params['sql-file'].bind(ctx, vars) if @params['sql-file']
end