PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
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 / Cache / CacheFactory.php
ameliabooking / src / Domain / Factory / Cache Last commit date
CacheFactory.php 5 years ago
CacheFactory.php
49 lines
1 <?php
2 /**
3 * @copyright © TMS-Plugins. All rights reserved.
4 * @licence See LICENCE.md for license details.
5 */
6
7 namespace AmeliaBooking\Domain\Factory\Cache;
8
9 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
10 use AmeliaBooking\Domain\Entity\Cache\Cache;
11 use AmeliaBooking\Domain\ValueObjects\Json;
12 use AmeliaBooking\Domain\ValueObjects\Number\Integer\Id;
13 use AmeliaBooking\Domain\ValueObjects\String\Name;
14
15 /**
16 * Class CacheFactory
17 *
18 * @package AmeliaBooking\Domain\Factory\Cache
19 */
20 class CacheFactory
21 {
22 /**
23 * @param $data
24 *
25 * @return Cache
26 * @throws InvalidArgumentException
27 */
28 public static function create($data)
29 {
30 $cache = new Cache(
31 new Name($data['name'])
32 );
33
34 if (isset($data['id'])) {
35 $cache->setId(new Id($data['id']));
36 }
37
38 if (!empty($data['paymentId'])) {
39 $cache->setPaymentId(new Id($data['paymentId']));
40 }
41
42 if (!empty($data['data'])) {
43 $cache->setData(new Json($data['data']));
44 }
45
46 return $cache;
47 }
48 }
49