lokap-composite 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '06936c4f09af56c15dc140bb5f7839574e332fd3d9de56bd86afaf712831667e'
4
- data.tar.gz: 1afb4f317e093d8f329cc30e8274eaa5b9ee500c8bbfaf0715a0edf291abbc5a
3
+ metadata.gz: 93f5b1365b9fb098e6eb272d7ca759b79924ef4818d49c1f20729411815c3092
4
+ data.tar.gz: 8188f6b5502593583bf0082d3e0cdd004c9e5cf402fe786013493663a9ee7232
5
5
  SHA512:
6
- metadata.gz: 0db7115a40d65351ef29880b33700c2ae06abbfe45d3c2db3f81d9420fc4d6b535a7fa836561c2bb609c0e6ff19b18da97f31a56b517f96a7d6cb3f54c1ec412
7
- data.tar.gz: 797b4d74b364c07dc745553e7aed0734de15aaf507b085f4b0a187810b6157d9bc9d5ebb77c5f5fbeea8c5ff5beb1c8e4f09e54fed4ee1bdd8462ff1468f1e6d
6
+ metadata.gz: 4335756e3442351868c7353516ca6b1a548684253e8914e338a2e82ad8f4fad2d270d4f0bcf89e2d17459d97edfc652fa43f726718dd3614247a111b4000bf25
7
+ data.tar.gz: cb7f345f6af6284665110a9685b945215fdd0b376699625507bcde02aa18f7b3bc933a8de8a1d68da29a4c8901099e3e0225e72a0ba717c8561ebc0b9b965f3f
@@ -22,23 +22,35 @@ module Lokap
22
22
  end
23
23
 
24
24
  def process
25
- before_process
25
+ before_all
26
26
 
27
27
  steps.each do |step|
28
- step.before_perform
28
+ before_each
29
+
30
+ step.before_step
29
31
  step.perform
30
- step.after_perform
32
+ step.after_step
33
+
34
+ after_each
31
35
  end
32
36
 
33
- after_process; self
37
+ after_all; self
38
+ end
39
+
40
+ def before_each
41
+ # noop
42
+ end
43
+
44
+ def after_each
45
+ # noop
34
46
  end
35
47
 
36
- def before_process
37
- messages << "Composite #{self.class.name}: Starting..."
48
+ def before_all
49
+ messages << "#{self.class.name} Processing..."
38
50
  end
39
51
 
40
- def after_process
41
- messages << "Composite #{self.class.name}: Finished."
52
+ def after_all
53
+ messages << "#{self.class.name} Done."
42
54
  end
43
55
  end
44
56
 
@@ -53,16 +65,15 @@ module Lokap
53
65
  end
54
66
 
55
67
  def perform
56
- raise AbstractMethodError,
57
- "Child class must impelement abstract method: #{method_name}"
68
+ raise AbstractMethodError, "Child class must impelement method: #{method_name}"
58
69
  end
59
70
 
60
- def before_perform
61
- composite.messages << "Step #{self.class.name}: Starting..."
71
+ def before_step
72
+ composite.messages << " #{self.class.name} Performing..."
62
73
  end
63
74
 
64
- def after_perform
65
- composite.messages << "Step #{self.class.name}: Finished."
75
+ def after_step
76
+ composite.messages << " #{self.class.name} Done."
66
77
  end
67
78
  end
68
79
  end
data/lib/lokap/step.rb ADDED
@@ -0,0 +1,22 @@
1
+ class Composite::Step
2
+ class AbstractMethodError < StandardError; end
3
+
4
+ attr_accessor :composite, :options
5
+
6
+ def initialize(composite, options={})
7
+ @composite = composite
8
+ @options = options
9
+ end
10
+
11
+ def perform
12
+ raise AbstractMethodError, "Child class must impelement method: #{method_name}"
13
+ end
14
+
15
+ def before_step
16
+ composite.messages << "→ #{self.class.name} Performing..."
17
+ end
18
+
19
+ def after_step
20
+ composite.messages << "→ #{self.class.name} Done."
21
+ end
22
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lokap-composite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Bair
@@ -23,6 +23,7 @@ files:
23
23
  - README.md
24
24
  - Rakefile
25
25
  - lib/lokap/composite.rb
26
+ - lib/lokap/step.rb
26
27
  homepage: https://github.com/adambair/lokap-composite
27
28
  licenses:
28
29
  - Nonstandard