Class: KillBillClient::Model::EntitlementNoEvents

Inherits:
EntitlementAttributesNoEvents show all
Defined in:
lib/killbill_client/models/entitlement_no_events.rb

Constant Summary collapse

KILLBILL_API_ENTITLEMENT_PREFIX =
"#{KILLBILL_API_PREFIX}/entitlements"

Constants inherited from Resource

Resource::KILLBILL_API_PREFIX

Instance Attribute Summary

Attributes inherited from Resource

#etag, #response, #session_id, #uri

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

attribute, create_alias, delete, extract_session_id, from_json, from_response, get, has_many, has_one, head, instantiate_record_from_json, post, put, #refresh, #to_hash, #to_json

Class Method Details

.find_by_id(entitlement_id, options = {}) ⇒ Object



8
9
10
11
12
# File 'lib/killbill_client/models/entitlement_no_events.rb', line 8

def find_by_id(entitlement_id,  options = {})
  get "#{KILLBILL_API_ENTITLEMENT_PREFIX}/#{entitlement_id}",
      {},
      options
end

Instance Method Details

#cancel(user = nil, reason = nil, comment = nil, requested_date = nil, entitlementPolicy = nil, billing_policy = nil, options = {}) ⇒ Object

Cancel the entitlement at the requested date



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/killbill_client/models/entitlement_no_events.rb', line 62

def cancel(user = nil, reason = nil, comment = nil, requested_date = nil, entitlementPolicy = nil, billing_policy = nil, options = {})

  params = {}
  params[:requestedDate] = requested_date unless requested_date.nil?
  params[:billingPolicy] = billing_policy unless billing_policy.nil?
  params[:entitlementPolicy] = entitlementPolicy unless entitlementPolicy.nil?

  return self.class.delete "#{KILLBILL_API_ENTITLEMENT_PREFIX}/#{@subscription_id}",
                        params,
                        {
                            :user => user,
                            :reason => reason,
                            :comment => comment,
                        }.merge(options)
end

#change_plan(input, user = nil, reason = nil, comment = nil, requested_date = nil, billing_policy = nil, call_completion = false, options = {}) ⇒ Object

Change the plan of the existing Entitlement

@ call_completion : whether the call should wait for invoice/payment to be completed before calls return



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/killbill_client/models/entitlement_no_events.rb', line 38

def change_plan(input, user = nil, reason = nil, comment = nil,
     requested_date = nil, billing_policy = nil, call_completion = false,options = {})

  params = {}
  params[:callCompletion] = call_completion
  params[:requestedDate] = requested_date unless requested_date.nil?
  params[:billingPolicy] = billing_policy unless billing_policy.nil?

  return self.class.put "#{KILLBILL_API_ENTITLEMENT_PREFIX}/#{@subscription_id}",
                        input.to_json,
                        params,
                        {
                            :user => user,
                            :reason => reason,
                            :comment => comment,
                        }.merge(options)
end

#create(user = nil, reason = nil, comment = nil, options = {}) ⇒ Object

Create a new entitlement



18
19
20
21
22
23
24
25
26
27
28
# File 'lib/killbill_client/models/entitlement_no_events.rb', line 18

def create(user = nil, reason = nil, comment = nil, options = {})
  created_entitlement = self.class.post KILLBILL_API_ENTITLEMENT_PREFIX,
                                        to_json,
                                        {},
                                        {
                                            :user => user,
                                            :reason => reason,
                                            :comment => comment,
                                        }.merge(options)
  created_entitlement.refresh(options)
end