Class: Bricolage::RubyJobClass

Inherits:
Object
  • Object
show all
Defined in:
lib/bricolage/rubyjobclass.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params, *args) ⇒ RubyJobClass

Returns a new instance of RubyJobClass.



35
36
# File 'lib/bricolage/rubyjobclass.rb', line 35

def initialize(params, *args)
end

Class Method Details

.declarations(params) ⇒ Object



25
26
# File 'lib/bricolage/rubyjobclass.rb', line 25

def RubyJobClass.declarations(params)
end

.define_job_class(job_class) ⇒ Object



16
17
18
19
20
# File 'lib/bricolage/rubyjobclass.rb', line 16

def RubyJobClass.define_job_class(job_class)
  job_class.parameters {|params| parameters(params) }
  job_class.declarations {|params| declarations(params) }
  job_class.script {|params, script| script(params, script) }
end

.job_class_id(id) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/bricolage/rubyjobclass.rb', line 8

def RubyJobClass.job_class_id(id)
  wrapper = self
  JobClass.define(id) {
    job_class = self
    wrapper.define_job_class(job_class)
  }
end

.parameters(params) ⇒ Object



22
23
# File 'lib/bricolage/rubyjobclass.rb', line 22

def RubyJobClass.parameters(params)
end

.script(params, script) ⇒ Object



28
29
30
31
32
33
# File 'lib/bricolage/rubyjobclass.rb', line 28

def RubyJobClass.script(params, script)
  ruby_job = new(params)
  script.task(params.ruby_ds) {|task|
    task.bind_ruby_job ruby_job
  }
end

Instance Method Details

#bind(ctx, vars) ⇒ Object



38
39
# File 'lib/bricolage/rubyjobclass.rb', line 38

def bind(ctx, vars)
end

#runObject



45
46
47
# File 'lib/bricolage/rubyjobclass.rb', line 45

def run
  raise "bricolage: error: #{self.class}\#run is not overridden"
end

#sourceObject



41
42
43
# File 'lib/bricolage/rubyjobclass.rb', line 41

def source
  'ruby job'
end