protected function doUnserialize(array $json) { // consult parent for further unserialization parent::doUnserialize($json); $this->unserializeArrayEntities('subscriptions', Bf_Subscription::getClassName(), $json); $this->unserializeArrayEntities('invoices', Bf_Invoice::getClassName(), $json); }
protected function doUnserialize(array $json) { // consult parent for further unserialization parent::doUnserialize($json); $this->unserializeEntity('request', Bf_AddChargeRequest::getClassName(), $json); $this->unserializeEntity('invoice', Bf_Invoice::getClassName(), $json); $this->unserializeArrayEntities('charges', Bf_SubscriptionCharge::getClassName(), $json); }
protected function doUnserialize(array $json) { // consult parent for further unserialization parent::doUnserialize($json); $this->unserializeEntity('invoice', Bf_Invoice::getClassName(), $json); }
/** * Synchronously generates invoices for outstanding charges on the subscription. * @param array $invoicingOptions (Default: All keys set to their respective default values) Encapsulates the following optional parameters: * * @param boolean (Default: false) $..['includeAggregated'] * * @param boolean (Default: false) $..['includeInvoicedChargesOnly'] * * @param union[NULL | string_ENUM['Paid', 'Unpaid', 'Pending', 'Voided'] (Default: NULL) $..['invoiceState']] * @return Bf_Invoice[] The generated invoices. */ public function invoiceOutstandingCharges(array $invoicingOptions = array('includeAggregated' => false, 'includeInvoicedChargesOnly' => false, 'invoiceState' => NULL)) { $inputOptions = $invoicingOptions; $subscriptionID = Bf_Subscription::getIdentifier($this); $stateParams = static::mergeUserArgsOverNonNullDefaults(__METHOD__, array(), $inputOptions); $requestEntity = new Bf_SubscriptionReviveRequest($stateParams); $subscriptionID = Bf_Subscription::getIdentifier($this); $endpoint = sprintf("%s/invoice-charges", rawurlencode($subscriptionID)); $responseEntity = Bf_Invoice::getClassName(); $constructedEntities = static::postEntityAndGrabCollection($endpoint, $requestEntity, $responseEntity); return $constructedEntities; }