drill-mailer 0.1.1 → 0.3.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
  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