/** * Checks whether the given class is supported for denormalization by this normalizer. * * @param mixed $data Data to denormalize from. * @param string $type The class to which the data should be denormalized. * @param string $format The format being deserialized from. * * @return bool */ public function supportsDenormalization($data, $type, $format = null) { if ($format == "xml" && $type == CvnNumber::GetClassName()) { return true; } return false; }
private function denormalizeCvn($data) { return $this->serializer->denormalize($data['cvn'], CvnNumber::GetClassName(), $this->format, $this->context); }
/** * Tests conversion of {@link PaymentRequest} to and from XML using setters for Paymentdata. */ public function testPaymentRequestXmlPaymentDataFluentSetters1() { $autoSettle = new AutoSettle(); $autoSettle->setFlag(SampleXmlValidationUtils::$RECEIPT_IN_AUTO_SETTLE_FLAG->getFlag()); $cvnNumber = new CvnNumber(); $cvnNumber->addNumber(SampleXmlValidationUtils::RECEIPT_IN_CVN); $paymentData = new PaymentData(); $paymentData->addCvnNumber($cvnNumber); $request = new PaymentRequest(); $request->addAccount(SampleXmlValidationUtils::RECEIPT_IN_ACCOUNT)->addMerchantId(SampleXmlValidationUtils::RECEIPT_IN_MERCHANT_ID)->addType(PaymentType::RECEIPT_IN)->addAmount(SampleXmlValidationUtils::RECEIPT_IN_AMOUNT)->addCurrency(SampleXmlValidationUtils::RECEIPT_IN_CURRENCY)->addPayerReference(SampleXmlValidationUtils::RECEIPT_IN_PAYER)->addPaymentMethod(SampleXmlValidationUtils::RECEIPT_IN_PAYMENT_METHOD)->addAutoSettle($autoSettle)->addTimeStamp(SampleXmlValidationUtils::RECEIPT_IN_TIMESTAMP)->addOrderId(SampleXmlValidationUtils::RECEIPT_IN_ORDER_ID)->addHash(SampleXmlValidationUtils::RECEIPT_IN_REQUEST_HASH)->addPaymentData($paymentData); // convert to XML $xml = $request->toXml(); // Convert from XML back to PaymentRequest /* @var PaymentRequest $fromXmlRequest */ $fromXmlRequest = new PaymentRequest(); $fromXmlRequest = $fromXmlRequest->fromXml($xml); SampleXmlValidationUtils::checkUnmarshalledReceiptInPaymentRequest($fromXmlRequest, $this); }