service_pattern 1.0.0 → 1.0.1

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: cdb56345fc9435ba6661951aa8d3cc5176022c2767881b340b6551c94c8e4caa
4
- data.tar.gz: f9fc3f3ae0262dfa6c0ff58505cce750070074bdf9cb8d52ed826695ec3eb46e
3
+ metadata.gz: fb9549ce95148a91b89260318126e623b02f78c270c33ac4b0e888262419c600
4
+ data.tar.gz: 64c60eb1773e0af7becbe29bc7d8804776307142f17b0b093ebe9acfd4cf2bfa
5
5
  SHA512:
6
- metadata.gz: 5466648e3d09f9add63cd3205a94f4f27e9d732a322e84eba8982f16d8d448d745669fcdbd38ddb04a5ac29663491129ef7ef315589b37c5a5e43fe118f94563
7
- data.tar.gz: b1dfe83d17699a4eb998a7a85614e735979443c2baedd27d51d65549a2896e4377b65c150c6b0a55889d194d6d25c7212fe6ea90a8db31ab62f9a23393d31b4d
6
+ metadata.gz: 8436813bd1329708c015e3e1aec3b51e38f0d09fffcbc6c795b57c236d254467959d9dd626e92dcf669f7ecefba06114e0956eca3759ec54e81b4667cd7f1005
7
+ data.tar.gz: 9b1919e0993ee2d18892a612a0db0c2e2c4460d23830454d2935c50adb4eed546c057f7b56da39ddcd68f9af17b6867ec7dcc90c09ed7649f32f55c048a4eda9
@@ -14,17 +14,11 @@ class ServicePattern::Service
14
14
  end
15
15
 
16
16
  def self.execute(*args, &blk)
17
- service = new(*args, &blk)
18
- service.execute
17
+ new(*args, &blk).execute
19
18
  end
20
19
 
21
20
  def self.execute!(*args, &blk)
22
- service = new(*args, &blk)
23
- can_execute_response = service.can_execute?
24
- ServicePattern::Service.fail!(can_execute_response.errors) unless can_execute_response.success?
25
- response = service.perform
26
- ServicePattern::Service.fail!(response.errors) unless response.success?
27
- response.result
21
+ new(*args, &blk).execute!
28
22
  end
29
23
 
30
24
  def self.convert_errors(errors)
@@ -58,6 +52,14 @@ class ServicePattern::Service
58
52
  ServicePattern::Response.new(errors: e.errors)
59
53
  end
60
54
 
55
+ def execute!
56
+ can_execute_response = can_execute?
57
+ ServicePattern::Service.fail!(can_execute_response.errors) unless can_execute_response.success?
58
+ response = perform
59
+ ServicePattern::Service.fail!(response.errors) unless response.success?
60
+ response.result
61
+ end
62
+
61
63
  def perform(*_args)
62
64
  raise NoMethodError, "You should implement the `perform` method on your service"
63
65
  end
@@ -1,3 +1,3 @@
1
1
  module ServicePattern
2
- VERSION = "1.0.0".freeze
2
+ VERSION = "1.0.1".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: service_pattern
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - kaspernj
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-26 00:00:00.000000000 Z
11
+ date: 2021-06-22 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: ServicePattern for Ruby on Rails.
14
14
  email: