Class: ItunesReceiptEncoder::InApp

Inherits:
Object
  • Object
show all
Includes:
Utils
Defined in:
lib/itunes_receipt_encoder/in_app.rb

Overview

ItunesReceiptEncoder::InApp

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Utils

#gmt_time, #ms_time, #pst_time

Constructor Details

#initialize(attrs = {}) ⇒ InApp

Returns a new instance of InApp.



17
18
19
# File 'lib/itunes_receipt_encoder/in_app.rb', line 17

def initialize(attrs = {})
  attrs.each { |key, val| send("#{key}=", val) }
end

Instance Attribute Details

#cancellation_dateObject

Returns the value of attribute cancellation_date.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def cancellation_date
  @cancellation_date
end

#expires_dateObject

Returns the value of attribute expires_date.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def expires_date
  @expires_date
end

#item_idObject

Returns the value of attribute item_id.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def item_id
  @item_id
end

#original_purchase_dateObject

Returns the value of attribute original_purchase_date.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def original_purchase_date
  @original_purchase_date
end

#original_transaction_idObject

Returns the value of attribute original_transaction_id.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def original_transaction_id
  @original_transaction_id
end

#product_idObject

Returns the value of attribute product_id.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def product_id
  @product_id
end

#purchase_dateObject

Returns the value of attribute purchase_date.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def purchase_date
  @purchase_date
end

#quantityObject

Returns the value of attribute quantity.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def quantity
  @quantity
end

#transaction_idObject

Returns the value of attribute transaction_id.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def transaction_id
  @transaction_id
end

#web_order_line_item_idObject

Returns the value of attribute web_order_line_item_id.



12
13
14
# File 'lib/itunes_receipt_encoder/in_app.rb', line 12

def web_order_line_item_id
  @web_order_line_item_id
end

Instance Method Details

#to_asn1_setObject



21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/itunes_receipt_encoder/in_app.rb', line 21

def to_asn1_set
  ASN1.set [
    asn1_quantity,
    asn1_product_id,
    asn1_transaction_id,
    asn1_original_transaction_id,
    asn1_purchase_date,
    asn1_original_purchase_date,
    asn1_web_order_line_item_id,
    (asn1_expires_date if expires_date),
    (asn1_cancellation_date if cancellation_date)
  ]
end

#to_plist_hash(options = {}) ⇒ Object



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/itunes_receipt_encoder/in_app.rb', line 35

def to_plist_hash(options = {})
  hash = {
    'quantity' => quantity,
    'product-id' => product_id,
    'transaction-id' => transaction_id,
    'original_transaction-id' => original_transaction_id,
    'purchase-date' => gmt_time(purchase_date),
    'original-purchase-date' => gmt_time(original_purchase_date),
    'expires-date-formatted' => gmt_time(expires_date)
  }
  hash.merge!(
    'purchase-date-ms' => ms_time(purchase_date),
    'original-purchase_date_ms' => ms_time(original_purchase_date),
    'expires-date' => gmt_time(expires_date)
  ) unless options[:no_ms_dates]
  hash.merge!(
    'purchase-date-pst' => pst_time(purchase_date),
    'original-purchase-date-pst' => pst_time(original_purchase_date),
    'expires-date-pst' => pst_time(expires_date)
  ) unless options[:no_pst_dates]
  hash
end