quickmail 0.13.0 → 0.18.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/quickmail.rb +12 -10
- data/lib/quickmail/authentication.rb +5 -5
- data/lib/quickmail/inventory.rb +15 -0
- data/lib/quickmail/order.rb +2 -2
- data/lib/quickmail/tracking.rb +2 -2
- data/lib/quickmail/version.rb +1 -1
- data/test/dummy/bin/spring +1 -1
- data/test/test_helper.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7c32da1d6cf69625dac15061c22e1d25ecd2bbba5bb68cbf3a2e8e2b74e9b268
|
4
|
+
data.tar.gz: 2b4573f5bf66172fa863be80eb63117846e6262dde7408ebf061658990feb00b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 28d725bb5df5dfb1026894bcb04d382303e8cfad1f0c20345e8af75d02b9ce70c119df0171ba0183d7f8c276eb10d6b9ffd651a733faf1b6cef27c183a944a8a
|
7
|
+
data.tar.gz: aa81d960accd74e0508f40b8d623f59ec9580cdc090dd9733385503baec90e05df0354637c7146a20db6178c12e138450141883a80b84c596a271e5da7eee1d5
|
data/lib/quickmail.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
require 'rest-client'
|
4
4
|
|
5
5
|
require 'quickmail/authentication'
|
6
|
+
require 'quickmail/inventory'
|
6
7
|
require 'quickmail/order'
|
7
8
|
require 'quickmail/tracking'
|
8
9
|
|
@@ -49,12 +50,10 @@ module Quickmail
|
|
49
50
|
Quickmail.test_mode ? "https://quickmailonline.com.au/api/test/" : "https://quickmailonline.com.au/api/"
|
50
51
|
end
|
51
52
|
|
52
|
-
def request(method, resource, params = {})
|
53
|
-
ss_access_token =
|
53
|
+
def request(method, resource, params = {}, access_token = nil)
|
54
|
+
ss_access_token = access_token || Quickmail.access_token
|
54
55
|
ss_api_version = Quickmail.api_version
|
55
56
|
|
56
|
-
params.except!(:access_token)
|
57
|
-
|
58
57
|
defined? method or raise(
|
59
58
|
ArgumentError, "Request method has not been specified"
|
60
59
|
)
|
@@ -62,27 +61,30 @@ module Quickmail
|
|
62
61
|
ArgumentError, "Request resource has not been specified"
|
63
62
|
)
|
64
63
|
if method == :get
|
65
|
-
|
64
|
+
url = Quickmail.api_base + ss_api_version + '/' + resource + '?' + params
|
66
65
|
payload = nil
|
67
|
-
else
|
68
66
|
headers = {accept: :json, content_type: :json, Authorization: "Bearer #{ss_access_token}"}
|
67
|
+
else
|
68
|
+
url = Quickmail.api_base + ss_api_version + '/' + resource
|
69
69
|
payload = params
|
70
|
+
headers = {accept: :json, content_type: :json, Authorization: "Bearer #{ss_access_token}"}
|
70
71
|
end
|
71
72
|
RestClient::Request.new({
|
72
73
|
method: method,
|
73
|
-
url:
|
74
|
+
url: url,
|
74
75
|
payload: payload.to_json,
|
75
76
|
headers: headers
|
76
77
|
}).execute do |response, request, result|
|
77
|
-
if response.code
|
78
|
+
if response.code == 201 || response.code == 200
|
79
|
+
str_response = response.to_str
|
80
|
+
str_response.blank? ? '' : JSON.parse(str_response)
|
81
|
+
else
|
78
82
|
raise ApiRequestError.new(
|
79
83
|
response_code: response.code,
|
80
84
|
response_headers: response.headers,
|
81
85
|
response_body: response.to_str
|
82
86
|
)
|
83
87
|
end
|
84
|
-
str_response = response.to_str
|
85
|
-
str_response.blank? ? '' : JSON.parse(str_response)
|
86
88
|
end
|
87
89
|
end
|
88
90
|
|
@@ -6,11 +6,11 @@ module Quickmail
|
|
6
6
|
class << self
|
7
7
|
def oauth(payload = {})
|
8
8
|
RestClient::Request.new({
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
9
|
+
method: :post,
|
10
|
+
url: Quickmail.api_base + '/token',
|
11
|
+
payload: payload,
|
12
|
+
headers: {content_type: "application/x-www-form-urlencoded"}
|
13
|
+
}).execute do |response, request, result|
|
14
14
|
if response.code != 200
|
15
15
|
raise ApiRequestError.new(
|
16
16
|
response_code: response.code,
|
data/lib/quickmail/order.rb
CHANGED
@@ -4,8 +4,8 @@ module Quickmail
|
|
4
4
|
class Order
|
5
5
|
|
6
6
|
class << self
|
7
|
-
def create(params = {})
|
8
|
-
response = Quickmail.request(:post, 'orders', params)
|
7
|
+
def create(params = {}, access_token = nil)
|
8
|
+
response = Quickmail.request(:post, 'orders', params, access_token)
|
9
9
|
|
10
10
|
response
|
11
11
|
end
|
data/lib/quickmail/tracking.rb
CHANGED
@@ -4,8 +4,8 @@ module Quickmail
|
|
4
4
|
class Tracking
|
5
5
|
|
6
6
|
class << self
|
7
|
-
def poll(params = {})
|
8
|
-
response = Quickmail.request(:get, 'tracking', params)
|
7
|
+
def poll(params = {}, access_token = nil)
|
8
|
+
response = Quickmail.request(:get, 'tracking', params, access_token)
|
9
9
|
|
10
10
|
response
|
11
11
|
end
|
data/lib/quickmail/version.rb
CHANGED
data/test/dummy/bin/spring
CHANGED
@@ -8,7 +8,7 @@ unless defined?(Spring)
|
|
8
8
|
require 'bundler'
|
9
9
|
|
10
10
|
lockfile = Bundler::LockfileParser.new(Bundler.default_lockfile.read)
|
11
|
-
spring = lockfile.specs.detect {|spec| spec.name == "spring"}
|
11
|
+
spring = lockfile.specs.detect { |spec| spec.name == "spring" }
|
12
12
|
if spring
|
13
13
|
Gem.use_paths Gem.dir, Bundler.bundle_path.to_s, *Gem.path
|
14
14
|
gem 'spring', spring.version
|
data/test/test_helper.rb
CHANGED
@@ -10,7 +10,7 @@ require "rails/test_help"
|
|
10
10
|
Minitest.backtrace_filter = Minitest::BacktraceFilter.new
|
11
11
|
|
12
12
|
# Load support files
|
13
|
-
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
13
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
|
14
14
|
|
15
15
|
# Load fixtures from the engine
|
16
16
|
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: quickmail
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.18.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tom Dallimore
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|
@@ -35,6 +35,7 @@ files:
|
|
35
35
|
- Rakefile
|
36
36
|
- lib/quickmail.rb
|
37
37
|
- lib/quickmail/authentication.rb
|
38
|
+
- lib/quickmail/inventory.rb
|
38
39
|
- lib/quickmail/order.rb
|
39
40
|
- lib/quickmail/tracking.rb
|
40
41
|
- lib/quickmail/version.rb
|