lokap-composite 0.0.3 → 0.0.5

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: 41ced8435c11929a060050ede30e58dfb04b041c30c17723980a830e3151a501
4
+ data.tar.gz: 855451febf6c53c4048770271663cd765cb359d4cbe30abb0ca20075429d161c
5
5
  SHA512:
6
- metadata.gz: 0db7115a40d65351ef29880b33700c2ae06abbfe45d3c2db3f81d9420fc4d6b535a7fa836561c2bb609c0e6ff19b18da97f31a56b517f96a7d6cb3f54c1ec412
7
- data.tar.gz: 797b4d74b364c07dc745553e7aed0734de15aaf507b085f4b0a187810b6157d9bc9d5ebb77c5f5fbeea8c5ff5beb1c8e4f09e54fed4ee1bdd8462ff1468f1e6d
6
+ metadata.gz: 92a14172e12c5220280e70a6cb2da5769b62a6789ae2d7afbef0244e0fbb39dd6468b7bdd9f3f0a6359f6a5195fa29150959deb19fae673614e7b80a41e66205
7
+ data.tar.gz: 0acc8ed572edc8ec7bf4014070452ff19baa7ce254adba07860a039cf0257989d99c8faca40bd6761378749de08b26e8ce9189ae7d71a640359d0c2b0226d52d
@@ -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
+ # noop
38
50
  end
39
51
 
40
- def after_process
41
- messages << "Composite #{self.class.name}: Finished."
52
+ def after_all
53
+ # noop
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,14 +1,14 @@
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.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Bair
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-26 00:00:00.000000000 Z
11
+ date: 2022-10-11 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -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