3 abstract class PhortuneProductImplementation
extends Phobject
{
5 abstract public function loadImplementationsForRefs(
6 PhabricatorUser
$viewer,
9 abstract public function getRef();
10 abstract public function getName(PhortuneProduct
$product);
11 abstract public function getPriceAsCurrency(PhortuneProduct
$product);
13 protected function getContentSource() {
14 return PhabricatorContentSource
::newForSource(
15 PhabricatorPhortuneContentSource
::SOURCECONST
);
18 public function getPurchaseName(
19 PhortuneProduct
$product,
20 PhortunePurchase
$purchase) {
21 return $this->getName($product);
24 public function didPurchaseProduct(
25 PhortuneProduct
$product,
26 PhortunePurchase
$purchase) {
30 public function didRefundProduct(
31 PhortuneProduct
$product,
32 PhortunePurchase
$purchase,
33 PhortuneCurrency
$amount) {
37 public function getPurchaseURI(
38 PhortuneProduct
$product,
39 PhortunePurchase
$purchase) {