drill-mailer 0.1.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ae690c017915c4e3e2d44b5d3455a5e39e137af8e0a07b54b11276b389c3134
4
- data.tar.gz: 7dd2e09597f2e41a69bfb8e31de17d125a259787ad886a4af1d2d0f1bcaeee47
3
+ metadata.gz: 21b725d74e1988390ff83be705985af26e4699b921cdaecdc4e8d23adb3baeeb
4
+ data.tar.gz: 1e882cd75aa8f0ec1b55d04e2427ea3216c638466d4f75d589bc785decfbdf6f
5
5
  SHA512:
6
- metadata.gz: 14d2c26f9a49488ea0dcb9daad0886ef0533832a70b27e213cad4a15c5f08e0e178d98ab77603ac09f922d195c373f3c591c4ade70889c668a68ec4e65c912e2
7
- data.tar.gz: 801548e896b97fc057fd098db64ca391ef55e38a817f948e17be7089b6658b205f19473866afebdc25ec77e0ebc4fe9f3dcdac4daa94712c2e5eb4a0300fbb27
6
+ metadata.gz: '088cb8840187eb4f9fc9b6bc7dba255e31a9797e997e614e1357c9d42b547a4e9d760df7843eb77efb0ffd6895190656d3f92227f4f019b66f81d55e32b8d69c'
7
+ data.tar.gz: 6287d6ac13ea003007d7540af07369ebf095f59336bc19135775efacd037082316d92fb4d7322c121940e8e288c8c92711dfeec79e34a5605ee86967ba27fcb9
@@ -6,19 +6,31 @@ module Drill
6
6
  module Mail
7
7
  class Default < Base
8
8
  def deliver
9
+ return if params.skip_delivery
10
+
9
11
  template_name = params.template_name
10
12
 
11
13
  Drill.client.messages.send_template(template_name, [], message_hash)
12
14
  end
13
15
 
14
- def deliver_later
16
+ def deliver_later(wait: nil)
17
+ return if params.skip_delivery
18
+
15
19
  template_name = params.template_name
16
20
 
17
- Drill::DeliveryWorker.perform_async(template_name, message_hash)
21
+ if wait
22
+ worker.perform_in(wait.to_i, template_name, message_hash)
23
+ else
24
+ worker.perform_async(template_name, message_hash)
25
+ end
18
26
  end
19
27
 
20
28
  private
21
29
 
30
+ def worker
31
+ Drill::DeliveryWorker
32
+ end
33
+
22
34
  def message_hash
23
35
  message_hash = {}
24
36
 
@@ -21,12 +21,16 @@ module Drill
21
21
  end
22
22
 
23
23
  def deliver
24
+ return if params.skip_delivery
25
+
24
26
  prepare_mail!
25
27
 
26
28
  delivery_method.deliver!(mail)
27
29
  end
28
30
 
29
- alias_method :deliver_later, :deliver
31
+ def deliver_later(wait: nil)
32
+ deliver
33
+ end
30
34
 
31
35
  private
32
36
 
@@ -2,7 +2,14 @@
2
2
 
3
3
  module Drill
4
4
  Params = Struct.new(
5
- :from_name, :from_email, :reply_to, :cc, :to, :vars, :template_name,
5
+ :from_name,
6
+ :from_email,
7
+ :reply_to,
8
+ :cc,
9
+ :to,
10
+ :vars,
11
+ :template_name,
12
+ :skip_delivery,
6
13
  keyword_init: true
7
14
  ) do
8
15
  def merge_vars(other_vars)
@@ -1,3 +1,3 @@
1
1
  module Drill
2
- VERSION = "0.1.1"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: drill-mailer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ilya Demukh
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-26 00:00:00.000000000 Z
11
+ date: 2019-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mandrill-api
@@ -157,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
157
157
  version: '0'
158
158
  requirements: []
159
159
  rubyforge_project:
160
- rubygems_version: 2.7.7
160
+ rubygems_version: 2.7.6
161
161
  signing_key:
162
162
  specification_version: 4
163
163
  summary: ActionMailer like gem for mandrill