pigeon-ruby 0.5.0 → 0.6.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: 7c54fd36687fba90d5ce57d961618842ec73507a81a571ca5c1987818db808b4
4
- data.tar.gz: f4ea8442bd730ae786a0e86cf3eadf6b19de822252df67219461d25b46c6f5b4
3
+ metadata.gz: 6d3008d422c384443902037bcf93df89e6494df11759fe268022f4453fb4b7ed
4
+ data.tar.gz: faaecafd81cdb78ccb36e88ac9f36cf6dde3a12b512593f9daa644aba85c48c3
5
5
  SHA512:
6
- metadata.gz: 010c3e1bd632abf9079e4c7895b1640bd8aa32d8893160cc494d6be2612e7286522fd1f7432266d4906f981917dc2e5614e832d136fa253ee78cd7ad231028f1
7
- data.tar.gz: f86e175b03dfb914b03bfb17751d2be0dcdebea8632e4720354ad03b2eade7986dfcfce6877f0707f192100e33bc0d71de010ecd7c02902774fdf97a026d9312
6
+ metadata.gz: bd4ddb94596107be079237363f38ab6e5a390bdb7b23b5b083883dea9a6e621e377415c0d11cc296dad3baef030b55956c0ae9f51393fc000bb15665dc030acb
7
+ data.tar.gz: b8b3bef2c8b8fcb96552e595d6faac5644ea2a18772ddd3903adef0d218b16c60bae1c03acceef29f8cee87540f89eb4844af06cf39b085af643a72a761af272
@@ -11,8 +11,8 @@ module Pigeon
11
11
  @clients[client_name] = Pigeon::Client.new(config)
12
12
  end
13
13
 
14
- def self.deliver(message_identifier, parcels = nil)
15
- @clients[:default].deliver(message_identifier, parcels)
14
+ def self.deliver(message_identifier, attrs = {})
15
+ @clients[:default].deliver(message_identifier, attrs)
16
16
  end
17
17
 
18
18
  def self.track(event, data)
@@ -17,11 +17,12 @@ module Pigeon
17
17
  })
18
18
  end
19
19
 
20
- def deliver(message_identifier, parcels = nil)
20
+ def deliver(message_identifier, attrs)
21
21
  self.class.post('/deliveries', {
22
22
  body: {
23
- message_identifier: message_identifier,
24
- parcels: process_parcels(parcels)
23
+ process_delivery_attributes(attrs).merge({
24
+ message_identifier: message_identifier
25
+ })
25
26
  }
26
27
  })
27
28
  end
@@ -57,16 +58,18 @@ module Pigeon
57
58
 
58
59
  private
59
60
 
60
- def process_parcels(parcels)
61
- parcels = [parcels] if parcels.is_a? Hash
61
+ def process_delivery_attributes(attrs)
62
+ symbolize_keys! attrs
63
+
64
+ check_presence!(attrs[:to], 'Recipient')
62
65
 
63
- parcels.each do |parcel|
64
- (parcel[:attachments] || []).each do |attachment|
65
- next unless File.file?(attachment[:file])
66
+ (attrs[:attachments] || []).each do |attachment|
67
+ next unless File.file?(attachment[:file])
66
68
 
67
- prepare_attachment_content(attachment)
68
- end
69
+ prepare_attachment_content(attachment)
69
70
  end
71
+
72
+ attrs
70
73
  end
71
74
 
72
75
  def prepare_attachment_content(attachment)
@@ -1,3 +1,3 @@
1
1
  module Pigeon
2
- VERSION = '0.5.0'
2
+ VERSION = '0.6.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pigeon-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pradeep Kumar