business_flow 0.12.1 → 0.13.0

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
  SHA1:
3
- metadata.gz: 386a63138bfac3925f6eed0db8952bcc98d32550
4
- data.tar.gz: 9191285bcd34579e0ba40dedfd9b89daaef3b41b
3
+ metadata.gz: cdef83b6efdb2ec395d4163aa60019a462290771
4
+ data.tar.gz: 5e8cafcb5a42577f5ccd6935d4bc2caa27aad273
5
5
  SHA512:
6
- metadata.gz: ff0f3773f9824181fec9943797f7d90707f70b2abc813243725c7218b339a971d05deb231b7e2f7c71a11f821914f601a35ecc06fd92314ad56d99a8e4d7fa14
7
- data.tar.gz: dd1354bb841f09d41347d081c4f74d86ffc8cb482d154b1e697b31335ae9e5cdd4e4f79399025feca26fdd7681e8c4337dae126a1965cdffbe6a52a587600450
6
+ metadata.gz: fcafa83b78deab671faf9ac470dc234a332ce159a05ba3ed652d719521038b786d63cf178a5270bcdaa1def9bda1b9cc7cd130d3a8100ceddededbe0232debe9
7
+ data.tar.gz: 6083b83d0699c52fda62eee141238dff4d7ce910cfc3386a52bdc518e7986e45bedefac50e19ac3081059474c3bbace3c2d051151169cad637ed49ebb5a05c61
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- business_flow (0.12.1)
4
+ business_flow (0.13.0)
5
5
  activemodel (>= 3.0)
6
6
  activesupport (>= 3.0)
7
7
 
@@ -45,6 +45,7 @@ GEM
45
45
  codeclimate-engine-rb (~> 0.4.0)
46
46
  parser (>= 2.5.0.0, < 2.6)
47
47
  rainbow (~> 3.0)
48
+ retryable (3.0.4)
48
49
  rspec (3.7.0)
49
50
  rspec-core (~> 3.7.0)
50
51
  rspec-expectations (~> 3.7.0)
@@ -92,6 +93,7 @@ DEPENDENCIES
92
93
  business_flow!
93
94
  rake (~> 10.0)
94
95
  reek (~> 4.8)
96
+ retryable (~> 3.0.4)
95
97
  rspec (~> 3.0)
96
98
  rubocop (~> 0.53)
97
99
  rubocop-rspec (~> 1.24.0)
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency 'bundler', '~> 1.16'
27
27
  spec.add_development_dependency 'rake', '~> 10.0'
28
28
  spec.add_development_dependency 'reek', '~> 4.8'
29
+ spec.add_development_dependency 'retryable', '~> 3.0.4'
29
30
  spec.add_development_dependency 'rspec', '~> 3.0'
30
31
  spec.add_development_dependency 'rubocop', '~> 0.53'
31
32
  spec.add_development_dependency 'rubocop-rspec', '~> 1.24.0'
@@ -0,0 +1,30 @@
1
+ begin
2
+ require 'retryable'
3
+ rescue LoadError
4
+ STDERR.puts 'BusinessFlow::Retryable requires the retryable gem'
5
+ raise
6
+ end
7
+
8
+ module BusinessFlow
9
+ # Wraps a flow in a Retryable (https://github.com/nfedyashev/retryable)
10
+ # You must provide this gem yourself
11
+ module Retryable
12
+ def self.included(klass)
13
+ klass.extend(ClassMethods)
14
+ end
15
+
16
+ # Additions to the DSL
17
+ module ClassMethods
18
+ def retryable(opts)
19
+ @retryable_config ||= {}
20
+ @retryable_config.merge!(opts)
21
+ end
22
+
23
+ def execute(flow)
24
+ ::Retryable.retryable(@retryable_config) do
25
+ super(flow)
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -1,3 +1,3 @@
1
1
  module BusinessFlow
2
- VERSION = '0.12.1'.freeze
2
+ VERSION = '0.13.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: business_flow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.1
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Scarborough
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-03 00:00:00.000000000 Z
11
+ date: 2019-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '4.8'
83
+ - !ruby/object:Gem::Dependency
84
+ name: retryable
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 3.0.4
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 3.0.4
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: rspec
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -178,6 +192,7 @@ files:
178
192
  - lib/business_flow/instrument.rb
179
193
  - lib/business_flow/instrumented_executor.rb
180
194
  - lib/business_flow/instrumented_step_executor.rb
195
+ - lib/business_flow/retryable.rb
181
196
  - lib/business_flow/step.rb
182
197
  - lib/business_flow/validations.rb
183
198
  - lib/business_flow/version.rb