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