1: <?php
2: namespace Hyperwallet\Model;
3:
4: /**
5: * Represents a V4 Transfer
6: *
7: * @property string $token The transfer refund token
8: * @property string $status The transfer status
9: * @property string $clientRefundId The client transfer id
10: * @property string $sourceToken The source token
11: * @property string $sourceAmount The source amount
12: * @property string $sourceFeeAmount The source fee amount
13: * @property string $sourceCurrency The source currency
14: * @property string $destinationToken The destination token
15: * @property string $destinationAmount The destination amount
16: * @property string $destinationFeeAmount The destination fee amount
17: * @property string $destinationCurrency The destination currency
18: * @property array $foreignExchanges The foreign exchanges
19: * @property \DateTime $createdOn The transfer creation date
20: * @property string $notes The notes
21: * @property string $memo The memo
22: *
23: * @package Hyperwallet\Model
24: */
25:
26:
27: class TransferRefund extends BaseModel {
28:
29: /**
30: * @internal
31: *
32: * Read only fields
33: *
34: * @var string[]
35: */
36: private static $READ_ONLY_FIELDS = array('token', 'status', 'createdOn');
37:
38: const STATUS_QUOTED = 'PENDING';
39: const STATUS_COMPLETED = 'COMPLETED';
40: const STATUS_FAILED = 'FAILED';
41:
42: /**
43: * Creates a instance of TransferRefund
44: *
45: * @param string[] $properties The default properties
46: */
47: public function __construct(array $properties = array()) {
48: parent::__construct(self::$READ_ONLY_FIELDS, $properties);
49: }
50:
51: /**
52: * Get the transfer token
53: *
54: * @return string
55: */
56: public function getToken() {
57: return $this->token;
58: }
59:
60: /**
61: * Set the transfer token
62: *
63: * @param string $token
64: * @return TransferRefund
65: */
66: public function setToken($token) {
67: $this->token = $token;
68: return $this;
69: }
70:
71: /**
72: * Get the transfer status
73: *
74: * @return string
75: */
76: public function getStatus() {
77: return $this->status;
78: }
79:
80: /**
81: * Get the transfer token
82: *
83: * @return string
84: */
85: public function getClientRefundId() {
86: return $this->clientRefundId;
87: }
88:
89: /**
90: * Set the transfer token
91: *
92: * @param string $clientRefundId
93: * @return TransferRefund
94: */
95: public function setClientRefundId($clientRefundId) {
96: $this->clientRefundId = $clientRefundId;
97: return $this;
98: }
99:
100: /**
101: * Get the transfer creation date
102: *
103: * @return \DateTime
104: */
105: public function getCreatedOn() {
106: return $this->createdOn ? new \DateTime($this->createdOn) : null;
107: }
108:
109: /**
110: * Get transfer sourceToken
111: *
112: * @return string
113: */
114: public function getSourceToken() {
115: return $this->sourceToken;
116: }
117:
118: /**
119: * Set transfer sourceToken
120: *
121: * @param string $sourceToken
122: * @return TransferRefund
123: */
124: public function setSourceToken($sourceToken) {
125: $this->sourceToken = $sourceToken;
126: return $this;
127: }
128:
129: /**
130: * Get transfer sourceAmount
131: *
132: * @return string
133: */
134: public function getSourceAmount() {
135: return $this->sourceAmount;
136: }
137:
138: /**
139: * Set transfer sourceAmount
140: *
141: * @param string $sourceAmount
142: * @return TransferRefund
143: */
144: public function setSourceAmount($sourceAmount) {
145: $this->sourceAmount = $sourceAmount;
146: return $this;
147: }
148:
149: /**
150: * Get transfer sourceFeeAmount
151: *
152: * @return string
153: */
154: public function getSourceFeeAmount() {
155: return $this->sourceFeeAmount;
156: }
157:
158:
159: /**
160: * Set transfer sourceFeeAmount
161: *
162: * @param string $sourceFeeAmount
163: * @return TransferRefund
164: */
165: public function setSourceFeeAmount($sourceFeeAmount) {
166: $this->sourceFeeAmount = $sourceFeeAmount;
167: return $this;
168: }
169:
170: /**
171: * Get transfer sourceCurrency
172: *
173: * @return string
174: */
175: public function getSourceCurrency() {
176: return $this->sourceCurrency;
177: }
178:
179: /**
180: * Set transfer sourceCurrency
181: *
182: * @param string $sourceCurrency
183: * @return TransferRefund
184: */
185: public function setSourceCurrency($sourceCurrency) {
186: $this->sourceCurrency = $sourceCurrency;
187: return $this;
188: }
189:
190: /**
191: * Get transfer destinationToken
192: *
193: * @return string
194: */
195: public function getDestinationToken() {
196: return $this->destinationToken;
197: }
198:
199: /**
200: * Set transfer destinationToken
201: *
202: * @param string $destinationToken
203: * @return TransferRefund
204: */
205: public function setDestinationToken($destinationToken) {
206: $this->destinationToken = $destinationToken;
207: return $this;
208: }
209:
210: /**
211: * Get transfer destinationAmount
212: *
213: * @return string
214: */
215: public function getDestinationAmount() {
216: return $this->destinationAmount;
217: }
218:
219: /**
220: * Set transfer destinationAmount
221: *
222: * @param string $destinationAmount
223: * @return TransferRefund
224: */
225: public function setDestinationAmount($destinationAmount) {
226: $this->destinationAmount = $destinationAmount;
227: return $this;
228: }
229:
230: /**
231: * Get transfer destinationFeeAmount
232: *
233: * @return string
234: */
235: public function getDestinationFeeAmount() {
236: return $this->destinationFeeAmount;
237: }
238:
239: /**
240: * Get transfer destinationCurrency
241: *
242: * @return string
243: */
244: public function getDestinationCurrency() {
245: return $this->destinationCurrency;
246: }
247:
248:
249: /**
250: * Set transfer destinationCurrency
251: *
252: * @param string $destinationCurrency
253: * @return TransferRefund
254: */
255: public function setDestinationCurrency($destinationCurrency) {
256: $this->destinationCurrency = $destinationCurrency;
257: return $this;
258: }
259:
260: /**
261: * Get transfer notes
262: *
263: * @return string
264: */
265: public function getNotes() {
266: return $this->notes;
267: }
268:
269: /**
270: * Set transfer notes
271: *
272: * @param string $notes
273: * @return TransferRefund
274: */
275: public function setNotes($notes) {
276: $this->notes = $notes;
277: return $this;
278: }
279:
280: /**
281: * Get transfer memo
282: *
283: * @return string
284: */
285: public function getMemo() {
286: return $this->memo;
287: }
288:
289: /**
290: * Set transfer memo
291: *
292: * @param string $memo
293: * @return TransferRefund
294: */
295: public function setMemo($memo) {
296: $this->memo = $memo;
297: return $this;
298: }
299:
300: /**
301: * Get the Foreign Exchanges
302: *
303: * @return string
304: */
305: public function getForeignExchanges() {
306: return $this->foreignExchanges;
307: }
308:
309: /**
310: * Set the Foreign Exchanges
311: *
312: * @param string $foreignExchanges
313: * @return TransferRefund
314: */
315: public function setForeignExchanges($foreignExchanges) {
316: $this->foreignExchanges = $foreignExchanges;
317: return $this;
318: }
319:
320: }
321: