Class: StripeSubscriptionSchedule
Instance Attribute Summary
#stripe_object
Class Method Summary
collapse
Instance Method Summary
collapse
check_object_is_stripe_class, #check_object_is_stripe_class, create_from_stripe!, create_on_stripe!, #destroy_on_stripe, #destroy_on_stripe!, #reload!, #reload_from_stripe!, #to_stripe, #update_on_stripe, #update_on_stripe!
Class Method Details
.stripe_class ⇒ Object
16
17
18
|
# File 'lib/stripe_model_callbacks/models/stripe_subscription_schedule.rb', line 16
def self.stripe_class
Stripe::SubscriptionSchedule
end
|
Instance Method Details
#assign_from_stripe(object) ⇒ Object
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# File 'lib/stripe_model_callbacks/models/stripe_subscription_schedule.rb', line 20
def assign_from_stripe(object)
check_object_is_stripe_class(object)
assign_attributes(
released_stripe_subscription_id: object.released_subscription,
stripe_customer_id: object.customer,
stripe_subscription_id: object.subscription
)
assign_billing_thresholds(object)
assign_current_phase(object)
assign_invoice_settings(object)
assign_timestamps(object)
StripeModelCallbacks::AttributesAssignerService.execute!(
model: self,
stripe_model: object,
attributes: MATCHING_STRIPE_ATTRIBUTES
)
assign_subscription_schedule_phases(object)
end
|
#cancel_on_stripe ⇒ Object
42
43
44
45
46
47
|
# File 'lib/stripe_model_callbacks/models/stripe_subscription_schedule.rb', line 42
def cancel_on_stripe
to_stripe.cancel
update!(canceled_at: Time.zone.now) if respond_to?(:canceled_at)
reload_from_stripe!
true
end
|
#cancel_on_stripe! ⇒ Object
49
50
51
|
# File 'lib/stripe_model_callbacks/models/stripe_subscription_schedule.rb', line 49
def cancel_on_stripe!
raise ActiveRecord::RecordInvalid, self unless cancel_on_stripe
end
|