Class: Jkr::Plan::PlanLoader
Defined Under Namespace
Classes: PlanParams
Class Method Summary
collapse
Instance Method Summary
collapse
#cmd, #procdb, #procdb_get, #procdb_get_command, #procdb_get_status, #procdb_resetpid, #procdb_spawn, #procdb_update_status, #procdb_waitpid, #use_script, #with_process, #with_process2
Constructor Details
Returns a new instance of PlanLoader.
71
72
73
74
|
# File 'lib/jkr/plan.rb', line 71
def initialize(plan)
@plan = plan
@params = nil
end
|
Class Method Details
.load_plan(plan) ⇒ Object
76
77
78
79
80
81
|
# File 'lib/jkr/plan.rb', line 76
def self.load_plan(plan)
plan_loader = self.new(plan)
plan.src = File.open(plan.file_path, "r").read
plan_loader.instance_eval(plan.src, plan.file_path, 1)
plan
end
|
Instance Method Details
#def_analysis(&proc) ⇒ Object
112
113
114
|
# File 'lib/jkr/plan.rb', line 112
def def_analysis(&proc)
@plan.analysis = proc
end
|
#def_cleanup(&proc) ⇒ Object
109
110
111
|
# File 'lib/jkr/plan.rb', line 109
def def_cleanup(&proc)
@plan.cleanup = proc
end
|
#def_parameters(&proc) ⇒ Object
96
97
98
99
100
101
|
# File 'lib/jkr/plan.rb', line 96
def def_parameters(&proc)
@params = PlanParams.new
proc.call()
@plan.params.merge!(@params.params)
@plan.vars.merge!(@params.vars)
end
|
#def_prep(&proc) ⇒ Object
106
107
108
|
# File 'lib/jkr/plan.rb', line 106
def def_prep(&proc)
@plan.prep = proc
end
|
#def_routine(&proc) ⇒ Object
103
104
105
|
# File 'lib/jkr/plan.rb', line 103
def def_routine(&proc)
@plan.routine = proc
end
|
#description(plan_desc) ⇒ Object
92
93
94
|
# File 'lib/jkr/plan.rb', line 92
def description(plan_desc)
@plan.desc = plan_desc.to_s
end
|
#parameter(arg = nil) ⇒ Object
116
117
118
119
120
121
122
123
|
# File 'lib/jkr/plan.rb', line 116
def parameter(arg = nil)
if arg.is_a? Hash
@params.params.merge!(arg)
else
@params
end
end
|
#plan ⇒ Object
Functions for describing plans in ‘.plan’ files below
84
85
86
|
# File 'lib/jkr/plan.rb', line 84
def plan
@plan
end
|
#title(plan_title) ⇒ Object
88
89
90
|
# File 'lib/jkr/plan.rb', line 88
def title(plan_title)
@plan.title = plan_title.to_s
end
|
#variable(arg = nil) ⇒ Object
125
126
127
128
129
130
131
|
# File 'lib/jkr/plan.rb', line 125
def variable(arg = nil)
if arg.is_a? Hash
@params.vars.merge!(arg)
else
@params
end
end
|