Class: ConcurrentPipeline::Pipelines::Schema::Producer

Inherits:
Struct
  • Object
show all
Defined in:
lib/concurrent_pipeline/pipelines/schema.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#blockObject

Returns the value of attribute block



15
16
17
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 15

def block
  @block
end

#labelObject

Returns the value of attribute label



15
16
17
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 15

def label
  @label
end

#queryObject

Returns the value of attribute query



15
16
17
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 15

def query
  @query
end

Instance Method Details

#assert(val) ⇒ Object



20
21
22
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 20

def assert(val)
  raise Errors::AssertionFailure.new("Post condition failed") unless val
end

#call(*a, **p) ⇒ Object



16
17
18
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 16

def call(*a, **p)
  instance_exec(*a, **p, &block)
end

#records(store) ⇒ Object



28
29
30
31
32
33
34
35
36
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 28

def records(store)
  if query.is_a?(Proc)
    query.call
  elsif query.is_a?(ActiveRecord::Relation)
    query.reload.to_a
  else
    raise "Invalid processor query type: #{query.inspect}"
  end
end

#shellObject



24
25
26
# File 'lib/concurrent_pipeline/pipelines/schema.rb', line 24

def shell
  Shell
end