1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Braintree\Gateway\Request;
use Magento\Braintree\Gateway\SubjectReader;
use Magento\Payment\Gateway\Request\BuilderInterface;
use Magento\Sales\Model\Order\Payment;
class VoidDataBuilder implements BuilderInterface
{
/**
* @var SubjectReader
*/
private $subjectReader;
/**
* Constructor
*
* @param SubjectReader $subjectReader
*/
public function __construct(SubjectReader $subjectReader)
{
$this->subjectReader = $subjectReader;
}
/**
* Builds ENV request
*
* @param array $buildSubject
* @return array
*/
public function build(array $buildSubject)
{
$paymentDO = $this->subjectReader->readPayment($buildSubject);
/** @var Payment $payment */
$payment = $paymentDO->getPayment();
return [
'transaction_id' => $payment->getParentTransactionId()
?: $payment->getLastTransId()
];
}
}