PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.4
Booking for Appointments and Events Calendar – Amelia v2.4.4
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Domain / Factory / Stripe / StripeFactory.php
ameliabooking / src / Domain / Factory / Stripe Last commit date
StripeFactory.php 8 months ago
StripeFactory.php
42 lines
1 <?php
2
3 namespace AmeliaBooking\Domain\Factory\Stripe;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6 use AmeliaBooking\Domain\Entity\Stripe\StripeConnect;
7 use AmeliaBooking\Domain\ValueObjects\Number\Float\Price;
8 use AmeliaBooking\Domain\ValueObjects\String\Name;
9
10 /**
11 * Class StripeFactory
12 *
13 * @package AmeliaBooking\Domain\Factory\Stripe
14 */
15 class StripeFactory
16 {
17 /**
18 * @param array $data
19 *
20 * @return StripeConnect
21 * @throws InvalidArgumentException
22 */
23 public static function create($data)
24 {
25 $stripeConnect = new StripeConnect();
26
27 if (isset($data['id'])) {
28 $stripeConnect->setId(new Name($data['id']));
29 }
30
31 if (isset($data['amount'])) {
32 $stripeConnect->setAmount(new Price($data['amount']));
33 }
34
35 if (isset($data['accountId'])) {
36 $stripeConnect->setAccountId(new Name($data['accountId']));
37 }
38
39 return $stripeConnect;
40 }
41 }
42