mailgun_api 0.0.4 → 0.0.5

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- M2UzODNiMDQwNzdmMmU5MDU0ZDdjMTc0Nzg1NWVhY2M3NGY1ZGEzOA==
4
+ ZTZmNzJlMzYzMjU4Y2E1MGFiNjQwYTA5MzY1ZGZmNmE0MzIzN2E1Yg==
5
5
  data.tar.gz: !binary |-
6
- NTQ1MjMyZDMyZGQ1NWNkMDdhZGYwNDc4NDgxODU4MDEwOGJmYmUxMQ==
6
+ MzhjZWFjMTZjMTI2NmM4ZTQwMjE0YmYzOTc3MWQ3N2E0ZmQ1YjdjZg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- M2NiYzJkNDY4YTExOThkZTdkMjQzMzJkM2YyZTUxM2NhMDFiMjE5YmEzY2Zk
10
- NzAzOTRhMGFmZDNhOWI5NjczMWY2MzVjMzdhMzhhMjUyOWI4MDE5ZWNjYTAy
11
- YWZiMjhiMDBjYjRhM2EyOGIyMmJjZjlkNWYwZGE3ZGVlNzBhZjU=
9
+ OTA3YjUyNTlkN2FlZDNjYWYzMTRjNmE1NmMzNDE1ZTczMzZkNDFmZWNkYTQ0
10
+ MmI0NDg1ZjMxMzAyNTMxYzQzNGIxZmRhMDVmMjUyODAzM2M3MWFiMWIwM2Q4
11
+ Y2M0MmNlNDE5NzM3NmIxZGVkYTEwNDc0ZTQyZTM4NzE0NTBhYjg=
12
12
  data.tar.gz: !binary |-
13
- MmQzYTYzMWE1MGQyMzI0N2ZjNGQ1ZGU1NDEyYTQ2OWM3MjBjMzE1MmJjYWE3
14
- ZTdiMDU0NWMyZDliNWQ4OTJmMTNjYzE1M2I4YTZlYTc3NTJiNzljNjQwNTQ1
15
- NWVjYWIzM2RhY2I4Zjg5OWNlOWIzYTZiY2U1MTJmMzE5NjYzYjA=
13
+ ZWIzMGM5YzlmMDRjZDk3OGUxNjQxYzNjZDU0ZjMzMDA4Y2M0MzAzYzFjN2U3
14
+ MjVlNmU2YjkxZTJiMWEwYTFiMzc0Y2VjYWYxZGFiNjdmYzUxYjZkZTJhMjYy
15
+ ZDkzY2ZhNmNkNWUyNTFlODA3OTVjY2FkMDI2ZGNkMWYzNzA5Nzc=
@@ -0,0 +1,4 @@
1
+ module Gun
2
+ class Error < StandardError
3
+ end
4
+ end
data/lib/mailgun/list.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require 'pry'
2
- # require 'active_support/hash_with_indifferent_access'
3
2
 
4
3
  module Gun
5
4
 
@@ -1,10 +1,6 @@
1
1
 
2
2
  module Gun
3
3
 
4
- # Mailing List functionality
5
- # Refer http://documentation.mailgun.net/api-mailinglists.html for optional parameters
6
-
7
-
8
4
  class Message
9
5
  attr_accessor :parameters
10
6
 
data/lib/mailgun_api.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "rest-client"
2
2
  require "json"
3
3
  require "mailgun/list"
4
+ require "mailgun/error"
4
5
  require "mailgun/message"
5
6
 
6
7
  class Mailgun
@@ -43,14 +44,45 @@ class Mailgun
43
44
 
44
45
 
45
46
  def self.fire(method, url, parameters={})
47
+ begin
48
+ parameters = {:params => parameters} if method == :get
49
+ return JSON(RestClient.send(method, url, parameters))
50
+ rescue => e
51
+ error_message = nil
52
+ if e.respond_to? :http_body
53
+ begin
54
+ error_message = JSON(e.http_body)["message"]
55
+ rescue
56
+ raise e
57
+ end
58
+ raise Gun::Error.new(error_message)
59
+ end
60
+ raise e
61
+ end
62
+ end
63
+
64
+
46
65
 
47
- parameters = {:params => parameters} if method == :get
48
66
 
49
- # puts method
50
- # puts url
51
- # puts parameters
52
67
 
53
- return JSON(RestClient.send(method, url, parameters))
68
+
69
+ def self.submit(method, url, parameters={})
70
+ begin
71
+ parameters = {:params => parameters} if method == :get
72
+ return JSON(RestClient.send(method, url, parameters))
73
+ rescue => e
74
+ error_message = nil
75
+ if e.respond_to? :http_body
76
+ begin
77
+ error_message = JSON(e.http_body)["message"]
78
+ rescue
79
+ raise e
80
+ end
81
+ raise Mailgun::Error.new(error_message)
82
+ end
83
+ raise e
84
+ end
54
85
  end
55
86
 
87
+
56
88
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailgun_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Irey
@@ -47,6 +47,7 @@ files:
47
47
  - lib/mailgun_api.rb
48
48
  - lib/mailgun/list.rb
49
49
  - lib/mailgun/message.rb
50
+ - lib/mailgun/error.rb
50
51
  homepage: http://rubygems.org/gems/mailgun_api
51
52
  licenses:
52
53
  - MIT