Class: AndroidInAppBilling::InappPurchase
- Inherits:
-
SimpleDelegator
- Object
- SimpleDelegator
- AndroidInAppBilling::InappPurchase
- Includes:
- ParseTools
- Defined in:
- lib/android_in_app_billing/inapp_purchase.rb
Overview
Represents the INAPP_PURCHASE concept from Google Play In-app Billing v3 API (java API for Android devices), including both data and signature
Defined Under Namespace
Classes: Attributes
Constant Summary collapse
- PURCHASE_STATES =
{ 0 => 'purchased', 1 => 'cancelled', 2 => 'refunded' }.freeze
Instance Attribute Summary collapse
- #auto_renewing ⇒ Boolean
- #developer_payload ⇒ String
- #order_id ⇒ String
- #package_name ⇒ String
- #product_id ⇒ String
- #purchased_at ⇒ DateTime
- #raw ⇒ String
- #signature ⇒ String
- #state ⇒ String
- #token ⇒ String
Instance Method Summary collapse
- #attributes ⇒ Hash
-
#initialize(data:, signature:) ⇒ InappPurchase
constructor
A new instance of InappPurchase.
- #signature_valid? ⇒ true, false
Methods included from ParseTools
Constructor Details
#initialize(data:, signature:) ⇒ InappPurchase
Returns a new instance of InappPurchase.
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
Instance Attribute Details
#auto_renewing ⇒ Boolean
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#developer_payload ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#order_id ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#package_name ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#product_id ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#purchased_at ⇒ DateTime
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#raw ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#signature ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#state ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
#token ⇒ String
44 45 46 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 44 def initialize(data:, signature:) super Attributes.new(data, parse_signature(signature), *parse_data(data)) end |
Instance Method Details
#attributes ⇒ Hash
49 50 51 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 49 def attributes to_h.reject { |k, _| [:raw, :signature].include?(k) } end |
#signature_valid? ⇒ true, false
54 55 56 |
# File 'lib/android_in_app_billing/inapp_purchase.rb', line 54 def signature_valid? signature_verifier.call end |