PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.6
Booking for Appointments and Events Calendar – Amelia v2.4.6
2.4.7 2.4.6 2.4.5 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 / Application / Commands / CommandHandler.php
ameliabooking / src / Application / Commands Last commit date
Bookable 4 weeks ago Booking 1 week ago Calendar 1 week ago Entities 1 week ago Google 4 months ago Import 4 weeks ago Mobile 2 months ago Notification 2 months ago Payment 4 weeks ago QrCode 1 week ago Settings 4 weeks ago Square 7 months ago Stash 1 week ago Stats 7 months ago Test 7 months ago User 1 week ago WhatsNew 4 months ago Command.php 1 week ago CommandHandler.php 7 years ago CommandResult.php 6 months ago SortParamsTrait.php 5 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