PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.3
Booking for Appointments and Events Calendar – Amelia v2.3
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 / Application / Commands / CommandHandler.php
ameliabooking / src / Application / Commands Last commit date
Bookable 3 months ago Booking 2 months ago Calendar 2 months ago Entities 2 months ago Google 3 months ago Import 3 months ago Notification 4 months ago Payment 2 months ago QrCode 3 months ago Settings 2 months ago Square 6 months ago Stash 6 months ago Stats 6 months ago Test 6 months ago User 2 months ago WhatsNew 3 months ago Command.php 3 months ago CommandHandler.php 7 years ago CommandResult.php 4 months ago SortParamsTrait.php 3 months ago
CommandHandler.php
61 lines
1 <?php
2
3 namespace AmeliaBooking\Application\Commands;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6 use AmeliaBooking\Infrastructure\Common\Container;
7
8 /**
9 * Class CommandHandler
10 *
11 * @package AmeliaBooking\Application\Commands
12 */
13 abstract class CommandHandler
14 {
15 /**
16 * @var Container
17 */
18 protected $container;
19
20 protected $mandatoryFields = [];
21
22 /**
23 * @param Command $command
24 *
25 * @throws InvalidArgumentException
26 */
27 public function checkMandatoryFields($command)
28 {
29 $missingFields = [];
30
31 foreach ($this->mandatoryFields as $field) {
32 if ($command->getField($field) === null) {
33 $missingFields[] = $field;
34 }
35 }
36 if (!empty($missingFields)) {
37 throw new InvalidArgumentException(
38 'Mandatory fields not passed! Missing: ' . implode(', ', $missingFields)
39 );
40 }
41 }
42
43 /**
44 * CommandHandler constructor.
45 *
46 * @param Container $container
47 */
48 public function __construct($container)
49 {
50 $this->container = $container;
51 }
52
53 /**
54 * @return Container
55 */
56 public function getContainer()
57 {
58 return $this->container;
59 }
60 }
61