killbill-client 0.10.5 → 0.10.6

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
  SHA1:
3
- metadata.gz: a994063768b26d9a7b03c3f13cababeaf7fb4514
4
- data.tar.gz: c1fd0c432a3e6308aa84af6c13f84df53893f54f
3
+ metadata.gz: 0bd357f949dbce5ad4dd1324014a786f49542582
4
+ data.tar.gz: 6e42622b6f4cf94f8e5fcb6db1ad27ec5d1146b8
5
5
  SHA512:
6
- metadata.gz: 697e6139c8ed803cdbba9c06bbeeabbdf5f2a6e412cbd72ff15a628b4a7eef1f60bfed0efbfb970238b4d25fba2a33fdaeedd886f0bcb1c43a7490545bd8c05f
7
- data.tar.gz: 6e8adeba7717eb345fb380eb265313f87902b445a84f8cc37cd467497ffe97a741288bb988f4c34fe8c743d0f1cf59dd60e03af749d4cfea4eedad67f5fb6fc9
6
+ metadata.gz: 527d3f8621051a3ee35e0c464490bf2042ac0aecf8edcb882e45f9b8648eb0a59f11ea94dd09edcb3aa7f600b8dba90a322c409aad67f9260acb3b5261811879
7
+ data.tar.gz: a4346e0938adac5c102387423f3d3a6f8e78ffb15182ed0c63198a6efb9d871b34c395b5c4b6e2adc34ee822fbef28c7b8f987a971b013ca6bf76de2adba4244
@@ -30,9 +30,8 @@ module KillBillClient
30
30
  end
31
31
 
32
32
  def get_tenant_catalog(options = {})
33
- if options[:api_key].nil? || options[:api_secret].nil?
34
- raise ArgumentError, "Retrieving a catalog is only supported in multi-tenant mode"
35
- end
33
+
34
+ require_multi_tenant_options!(options, "Retrieving a catalog is only supported in multi-tenant mode")
36
35
 
37
36
  get KILLBILL_API_CATALOG_PREFIX,
38
37
  {},
@@ -42,9 +41,8 @@ module KillBillClient
42
41
  end
43
42
 
44
43
  def upload_tenant_catalog(catalog_xml, user = nil, reason = nil, comment = nil, options = {})
45
- if options[:api_key].nil? || options[:api_secret].nil?
46
- raise ArgumentError, "Uploading a catalog is only supported in multi-tenant mode"
47
- end
44
+
45
+ require_multi_tenant_options!(options, "Uploading a catalog is only supported in multi-tenant mode")
48
46
 
49
47
  post KILLBILL_API_CATALOG_PREFIX,
50
48
  catalog_xml,
@@ -193,9 +193,9 @@ module KillBillClient
193
193
 
194
194
 
195
195
  def get_invoice_template(is_manual_pay, options = {})
196
- if options[:api_key].nil? || options[:api_secret].nil?
197
- raise ArgumentError, "Retrieving an invoice template supported in multi-tenant mode"
198
- end
196
+
197
+ require_multi_tenant_options!(options, "Retrieving an invoice template supported in multi-tenant mode")
198
+
199
199
 
200
200
  get "#{KILLBILL_API_INVOICES_PREFIX}/#{is_manual_pay ? "manualPayTemplate" : "template"}",
201
201
  {},
@@ -205,9 +205,9 @@ module KillBillClient
205
205
  end
206
206
 
207
207
  def upload_invoice_template(invoice_template, is_manual_pay, delete_if_exists, user = nil, reason = nil, comment = nil, options = {})
208
- if options[:api_key].nil? || options[:api_secret].nil?
209
- raise ArgumentError, "Uploading a invoice template is only supported in multi-tenant mode"
210
- end
208
+
209
+ require_multi_tenant_options!(options, "Uploading a invoice template is only supported in multi-tenant mode")
210
+
211
211
 
212
212
  params = {}
213
213
  params[:deleteIfExists] = delete_if_exists if delete_if_exists
@@ -226,9 +226,9 @@ module KillBillClient
226
226
  end
227
227
 
228
228
  def get_invoice_translation(locale, options = {})
229
- if options[:api_key].nil? || options[:api_secret].nil?
230
- raise ArgumentError, "Retrieving an invoice template supported in multi-tenant mode"
231
- end
229
+
230
+ require_multi_tenant_options!(options, "Retrieving an invoice translation supported in multi-tenant mode")
231
+
232
232
 
233
233
  get "#{KILLBILL_API_INVOICES_PREFIX}/translation/#{locale}",
234
234
  {},
@@ -238,9 +238,9 @@ module KillBillClient
238
238
  end
239
239
 
240
240
  def upload_invoice_translation(invoice_translation, locale, delete_if_exists, user = nil, reason = nil, comment = nil, options = {})
241
- if options[:api_key].nil? || options[:api_secret].nil?
242
- raise ArgumentError, "Uploading a invoice template is only supported in multi-tenant mode"
243
- end
241
+
242
+ require_multi_tenant_options!(options, "Uploading a invoice translation is only supported in multi-tenant mode")
243
+
244
244
 
245
245
  params = {}
246
246
  params[:deleteIfExists] = delete_if_exists if delete_if_exists
@@ -260,9 +260,8 @@ module KillBillClient
260
260
 
261
261
 
262
262
  def get_catalog_translation(locale, options = {})
263
- if options[:api_key].nil? || options[:api_secret].nil?
264
- raise ArgumentError, "Retrieving a catalog translation is only supported in multi-tenant mode"
265
- end
263
+
264
+ require_multi_tenant_options!(options, "Retrieving a catalog translation is only supported in multi-tenant mode")
266
265
 
267
266
  get "#{KILLBILL_API_INVOICES_PREFIX}/catalogTranslation/#{locale}",
268
267
  {},
@@ -272,9 +271,8 @@ module KillBillClient
272
271
  end
273
272
 
274
273
  def upload_catalog_translation(catalog_translation, locale, delete_if_exists, user = nil, reason = nil, comment = nil, options = {})
275
- if options[:api_key].nil? || options[:api_secret].nil?
276
- raise ArgumentError, "Uploading a catalog translation is only supported in multi-tenant mode"
277
- end
274
+
275
+ require_multi_tenant_options!(options, "Uploading a catalog translation is only supported in multi-tenant mode")
278
276
 
279
277
  params = {}
280
278
  params[:deleteIfExists] = delete_if_exists if delete_if_exists
@@ -6,6 +6,9 @@ module KillBillClient
6
6
 
7
7
  class << self
8
8
  def get_tenant_overdue_config(options = {})
9
+
10
+ require_multi_tenant_options!(options, "Retrieving an overdue config is only supported in multi-tenant mode")
11
+
9
12
  get KILLBILL_API_OVERDUE_PREFIX,
10
13
  {},
11
14
  {
@@ -14,6 +17,9 @@ module KillBillClient
14
17
  end
15
18
 
16
19
  def upload_tenant_overdue_config(overdue_config_xml, user = nil, reason = nil, comment = nil, options = {})
20
+
21
+ require_multi_tenant_options!(options, "Uploading an overdue config is only supported in multi-tenant mode")
22
+
17
23
  post KILLBILL_API_OVERDUE_PREFIX,
18
24
  overdue_config_xml,
19
25
  {
@@ -17,7 +17,7 @@ module KillBillClient
17
17
  def initialize(hash = nil)
18
18
  # Make sure we support ActiveSupport::HashWithIndifferentAccess for Kaui
19
19
  if hash.respond_to?(:each)
20
- hash.each do |key,value|
20
+ hash.each do |key, value|
21
21
  send("#{Utils.underscore key.to_s}=", value)
22
22
  end
23
23
  end
@@ -62,7 +62,7 @@ module KillBillClient
62
62
  when %r{application/pdf}
63
63
  response.body
64
64
  when %r{text/html}
65
- response.body
65
+ response.body
66
66
  when %r{text/plain}
67
67
  response.body
68
68
  when %r{application/xml}
@@ -168,96 +168,105 @@ module KillBillClient
168
168
  attributes = self.instance_variable_get('@json_attributes')
169
169
 
170
170
  (
171
- class << self;
172
- self
173
- end).send(:define_method, :json_attributes) do
174
- attributes
175
- end
176
- end
177
-
178
- def has_many(attr_name, type = nil)
179
- send("attr_accessor", attr_name.to_sym)
180
-
181
- #add it to attribute_names
182
- @@attribute_names[self.name] = {} unless @@attribute_names[self.name]
183
- @@attribute_names[self.name][attr_name.to_sym] = {:type => type, :cardinality => :many }
184
- end
185
-
186
- def has_one(attr_name, type = nil)
187
- send("attr_accessor", attr_name.to_sym)
188
-
189
- #add it to attribute_names
190
- @@attribute_names[self.name] = {} unless @@attribute_names[self.name]
191
- @@attribute_names[self.name][attr_name.to_sym] = { :type => type, :cardinality => :one }
192
- end
193
-
194
- #hack to cater the api return attributes and javax attributes without editing gen scripts
195
- #call only after its declared as a instance_method using attr_accessor
196
- def create_alias(new_name, old_name)
197
- alias_method new_name.to_sym, old_name.to_sym #getter
198
- alias_method "#{new_name}=".to_sym, "#{old_name}=".to_sym #setter
199
- end
200
-
201
- # Extract the session id from a response
202
- def extract_session_id(response)
203
- # The Set-Cookie header looks like
204
- # "set-cookie"=>["JSESSIONID=16; Path=/; HttpOnly", "rememberMe=deleteMe; Path=/; Max-Age=0; Expires=Sat, 17-Aug-2013 23:39:37 GMT"],
205
- session_cookie = response['set-cookie']
206
- unless session_cookie.nil?
207
- session_cookie.split(';').each do |chunk|
208
- chunk.strip!
209
- key, value = chunk.split('=')
210
- return value if key == 'JSESSIONID'
211
- end
212
- end
213
- nil
214
- end
215
- end #end self methods
216
-
217
- # Set on create call
218
- attr_accessor :uri
219
-
220
- def to_hash
221
- json_hash = {}
222
- self.class.json_attributes.each do |name|
223
- value = self.send(name)
224
- unless value.nil?
225
- json_hash[Utils.camelize name, :lower] = _to_hash(value)
226
- end
227
- end
228
- json_hash
229
- end
230
-
231
- def _to_hash(value)
232
- if value.is_a?(Resource)
233
- value.to_hash
234
- elsif value.is_a?(Array)
235
- value.map { |v| _to_hash(v) }
236
- else
237
- value
238
- end
239
- end
240
-
241
- def to_json(*args)
242
- to_hash.to_json(*args)
243
- end
244
-
245
- def refresh(options = {}, clazz=self.class)
246
- if @uri
247
- self.class.get @uri, {}, options, clazz
248
- else
249
- self
250
- end
251
- end
252
-
253
- def ==(o)
254
- o.class == self.class && o.hash == hash
255
- end
256
- alias_method :eql?, :==
257
-
258
- def hash
259
- to_hash.hash
260
- end
171
+ class << self;
172
+ self
173
+ end).send(:define_method, :json_attributes) do
174
+ attributes
175
+ end
176
+ end
177
+
178
+ def has_many(attr_name, type = nil)
179
+ send("attr_accessor", attr_name.to_sym)
180
+
181
+ #add it to attribute_names
182
+ @@attribute_names[self.name] = {} unless @@attribute_names[self.name]
183
+ @@attribute_names[self.name][attr_name.to_sym] = {:type => type, :cardinality => :many}
184
+ end
185
+
186
+ def has_one(attr_name, type = nil)
187
+ send("attr_accessor", attr_name.to_sym)
188
+
189
+ #add it to attribute_names
190
+ @@attribute_names[self.name] = {} unless @@attribute_names[self.name]
191
+ @@attribute_names[self.name][attr_name.to_sym] = {:type => type, :cardinality => :one}
192
+ end
193
+
194
+ #hack to cater the api return attributes and javax attributes without editing gen scripts
195
+ #call only after its declared as a instance_method using attr_accessor
196
+ def create_alias(new_name, old_name)
197
+ alias_method new_name.to_sym, old_name.to_sym #getter
198
+ alias_method "#{new_name}=".to_sym, "#{old_name}=".to_sym #setter
199
+ end
200
+
201
+ # Extract the session id from a response
202
+ def extract_session_id(response)
203
+ # The Set-Cookie header looks like
204
+ # "set-cookie"=>["JSESSIONID=16; Path=/; HttpOnly", "rememberMe=deleteMe; Path=/; Max-Age=0; Expires=Sat, 17-Aug-2013 23:39:37 GMT"],
205
+ session_cookie = response['set-cookie']
206
+ unless session_cookie.nil?
207
+ session_cookie.split(';').each do |chunk|
208
+ chunk.strip!
209
+ key, value = chunk.split('=')
210
+ return value if key == 'JSESSIONID'
211
+ end
212
+ end
213
+ nil
214
+ end
215
+ end #end self methods
216
+
217
+ # Set on create call
218
+ attr_accessor :uri
219
+
220
+ def to_hash
221
+ json_hash = {}
222
+ self.class.json_attributes.each do |name|
223
+ value = self.send(name)
224
+ unless value.nil?
225
+ json_hash[Utils.camelize name, :lower] = _to_hash(value)
226
+ end
227
+ end
228
+ json_hash
229
+ end
230
+
231
+ def _to_hash(value)
232
+ if value.is_a?(Resource)
233
+ value.to_hash
234
+ elsif value.is_a?(Array)
235
+ value.map { |v| _to_hash(v) }
236
+ else
237
+ value
238
+ end
239
+ end
240
+
241
+ def to_json(*args)
242
+ to_hash.to_json(*args)
243
+ end
244
+
245
+ def refresh(options = {}, clazz=self.class)
246
+ if @uri
247
+ self.class.get @uri, {}, options, clazz
248
+ else
249
+ self
250
+ end
251
+ end
252
+
253
+
254
+ def require_multi_tenant_options!(options, msg)
255
+ if options[:api_key].nil? || options[:api_secret].nil?
256
+ raise ArgumentError, msg
257
+ end
258
+ end
259
+
260
+
261
+ def ==(o)
262
+ o.class == self.class && o.hash == hash
263
+ end
264
+
265
+ alias_method :eql?, :==
266
+
267
+ def hash
268
+ to_hash.hash
269
+ end
261
270
  end
262
- end
263
- end
271
+ end
272
+ end
@@ -19,9 +19,8 @@ module KillBillClient
19
19
  end
20
20
 
21
21
  def get_tenant_plugin_config(plugin_name, options = {})
22
- if options[:api_key].nil? || options[:api_secret].nil?
23
- raise ArgumentError, "Retrieving a plugin config is only supported in multi-tenant mode"
24
- end
22
+
23
+ require_multi_tenant_options!(options, "Retrieving a plugin config is only supported in multi-tenant mode")
25
24
 
26
25
  uri = KILLBILL_API_TENANTS_PREFIX + "/uploadPluginConfig/" + plugin_name
27
26
  get uri,
@@ -32,9 +31,8 @@ module KillBillClient
32
31
  end
33
32
 
34
33
  def upload_tenant_plugin_config(plugin_name, plugin_config, user = nil, reason = nil, comment = nil, options = {})
35
- if options[:api_key].nil? || options[:api_secret].nil?
36
- raise ArgumentError, "Uploading a plugin config is only supported in multi-tenant mode"
37
- end
34
+
35
+ require_multi_tenant_options!(options, "Uploading a plugin config is only supported in multi-tenant mode")
38
36
 
39
37
  uri = KILLBILL_API_TENANTS_PREFIX + "/uploadPluginConfig/" + plugin_name
40
38
  post uri,
@@ -51,9 +49,8 @@ module KillBillClient
51
49
  end
52
50
 
53
51
  def delete_tenant_plugin_config(plugin_name, user = nil, reason = nil, comment = nil, options = {})
54
- if options[:api_key].nil? || options[:api_secret].nil?
55
- raise ArgumentError, "Uploading a plugin config is only supported in multi-tenant mode"
56
- end
52
+
53
+ require_multi_tenant_options!(options, "Uploading a plugin config is only supported in multi-tenant mode")
57
54
 
58
55
  uri = KILLBILL_API_TENANTS_PREFIX + "/uploadPluginConfig/" + plugin_name
59
56
  delete uri,
@@ -68,6 +65,7 @@ module KillBillClient
68
65
  }.merge(options)
69
66
 
70
67
  end
68
+
71
69
  end
72
70
 
73
71
 
@@ -2,7 +2,7 @@ module KillBillClient
2
2
  module Version
3
3
  MAJOR = 0
4
4
  MINOR = 10
5
- PATCH = 5
5
+ PATCH = 6
6
6
  PRE = nil
7
7
 
8
8
  VERSION = [MAJOR, MINOR, PATCH, PRE].compact.join('.').freeze
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: killbill-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.5
4
+ version: 0.10.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Killbill core team