Module: Gold::Outcomes

Included in:
AcceptOrDeclineChargeOp, AcceptOrDeclineTermsOp, AfterAuthenticateJob, ApplyDiscountOp, ApplyTierOp, BillingController, ChargeOp, CheckChargeOp, CleanupOp, FreezeOp, InstallOp, IssueCreditOp, MarkAsDelinquentOp, ResolveOutstandingChargeOp, SelectTierOp, SuspendOp, UninstallOp, UnsuspendOp
Defined in:
app/operations/gold/issue_credit_op.rb,
lib/gold/outcomes.rb,
app/operations/gold/select_tier_op.rb,
app/operations/gold/check_charge_op.rb,
app/operations/gold/apply_discount_op.rb,
app/operations/gold/accept_or_decline_terms_op.rb,
app/operations/gold/accept_or_decline_charge_op.rb

Overview

Returned when a credit cannot be issued, likely due to a restriction on Shopify’s side.

Defined Under Namespace

Classes: Failure, Outcome, Success

Constant Summary collapse

Uninstalled =

Common outcomes

Class.new(Failure)
TierApplied =

Outcomes that relate to tiers

Class.new(Success)
TierNotFound =
Class.new(Failure)
ChargeNeeded =

Outcomes that relate to charges

Class.new(Success)
ChargeNotNeeded =
Class.new(Success)
FrozenCharge =
Class.new(Success)
ExpiredCharge =
Class.new(Failure)
MissingCharge =
Class.new(Failure)
ActiveCharge =
Class.new(Success) do
  attr_reader :charge_id

  def initialize(charge_id)
    @charge_id = charge_id
    super()
  end
end
AcceptedCharge =
Class.new(Success) do
  attr_reader :return_url

  def initialize(return_url)
    @return_url = return_url
    super()
  end
end
PendingCharge =
Class.new(Success) do
  attr_reader :confirmation_url

  def initialize(confirmation_url)
    @confirmation_url = confirmation_url
    super()
  end
end
CannotSelectTier =
Class.new(Failure)
SameTier =
Class.new(Success)
MismatchCharge =
Class.new(Failure)
CannotIssueCredit =
Class.new(Failure)
CannotApplyDiscount =
Class.new(Failure)
SameDiscount =
Class.new(Success)
AcceptedTerms =
Class.new(Success)
DeclinedTerms =
Class.new(Failure)
DeclinedCharge =
Class.new(Failure)
CannotProcessCharge =
Class.new(Failure)