Class: Aptible::BillForward::Subscription

Inherits:
Resource
  • Object
show all
Defined in:
lib/aptible/billforward/resource/subscription.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

all, basename, by_subscription_id, #client, client, collection_path, create, find, #invoice, #subscription, #update

Class Method Details

.by_account_id(account_id, params = {}) ⇒ Object



36
37
38
# File 'lib/aptible/billforward/resource/subscription.rb', line 36

def self.(, params = {})
  client.get "#{collection_path}/account/#{}", params
end

Instance Method Details

#create_usage_session(params = {}) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/aptible/billforward/resource/subscription.rb', line 22

def create_usage_session(params = {})
  usage_params = params.merge(
    subscriptionID: id,
    sessionID: Aptible::BillForward::UsageSession.generate_session_id
  )
  Aptible::BillForward::UsageSession.create(usage_params)
end

#hrefObject



40
41
42
# File 'lib/aptible/billforward/resource/subscription.rb', line 40

def href
  "#{self.class.collection_path}"
end


30
31
32
33
34
# File 'lib/aptible/billforward/resource/subscription.rb', line 30

def link_payment_method(payment_method)
  Aptible::BillForward::PaymentMethodSubscriptionLink.create(
    subscriptionID: id, paymentMethodID: payment_method.id
  )
end

#serializeObject



4
5
6
# File 'lib/aptible/billforward/resource/subscription.rb', line 4

def serialize
  to_attrs
end

#usage(_params = {}) ⇒ Object



18
19
20
# File 'lib/aptible/billforward/resource/subscription.rb', line 18

def usage(_params = {})
  @usage ||= Aptible::BillForward::Usage.by_subscription_id(id)
end

#usage_periods(_params = {}) ⇒ Object



8
9
10
11
# File 'lib/aptible/billforward/resource/subscription.rb', line 8

def usage_periods(_params = {})
  @usage_periods ||=
  Aptible::BillForward::UsagePeriod.by_subscription_id(id)
end

#usage_sessions(_params = {}) ⇒ Object



13
14
15
16
# File 'lib/aptible/billforward/resource/subscription.rb', line 13

def usage_sessions(_params = {})
  @usage_sessions ||=
  Aptible::BillForward::UsageSession.by_subscription_id(id)
end