Class: Retailer::CostcoApi::Result

Inherits:
Data
  • Object
show all
Defined in:
app/services/retailer/costco_api.rb

Overview

Outcome of a probe.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil) ⇒ Result

Returns a new instance of Result.



51
52
53
# File 'app/services/retailer/costco_api.rb', line 51

def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
  super
end

Instance Attribute Details

#availableBoolean? (readonly)

Returns in-stock flag; nil when inventory is unknown.

Returns:

  • (Boolean, nil)

    in-stock flag; nil when inventory is unknown



50
51
52
53
54
55
56
# File 'app/services/retailer/costco_api.rb', line 50

Result = Data.define(:success, :price, :currency, :regular_price, :available, :error) do
  def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
    super
  end

  def success? = success
end

#currencyString? (readonly)

Returns ISO currency code.

Returns:

  • (String, nil)

    ISO currency code



50
51
52
53
54
55
56
# File 'app/services/retailer/costco_api.rb', line 50

Result = Data.define(:success, :price, :currency, :regular_price, :available, :error) do
  def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
    super
  end

  def success? = success
end

#errorString? (readonly)

Returns failure description.

Returns:

  • (String, nil)

    failure description



50
51
52
53
54
55
56
# File 'app/services/retailer/costco_api.rb', line 50

Result = Data.define(:success, :price, :currency, :regular_price, :available, :error) do
  def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
    super
  end

  def success? = success
end

#priceFloat? (readonly)

Returns current online price.

Returns:

  • (Float, nil)

    current online price



50
51
52
53
54
55
56
# File 'app/services/retailer/costco_api.rb', line 50

Result = Data.define(:success, :price, :currency, :regular_price, :available, :error) do
  def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
    super
  end

  def success? = success
end

#regular_priceFloat? (readonly)

Returns pre-discount list price, when higher than price.

Returns:

  • (Float, nil)

    pre-discount list price, when higher than price



50
51
52
53
54
55
56
# File 'app/services/retailer/costco_api.rb', line 50

Result = Data.define(:success, :price, :currency, :regular_price, :available, :error) do
  def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
    super
  end

  def success? = success
end

#successBoolean (readonly)

Returns whether a price was retrieved.

Returns:

  • (Boolean)

    whether a price was retrieved



50
51
52
53
54
55
56
# File 'app/services/retailer/costco_api.rb', line 50

Result = Data.define(:success, :price, :currency, :regular_price, :available, :error) do
  def initialize(success:, price: nil, currency: nil, regular_price: nil, available: nil, error: nil)
    super
  end

  def success? = success
end

Instance Method Details

#success?Boolean

Returns:

  • (Boolean)


55
# File 'app/services/retailer/costco_api.rb', line 55

def success? = success