Uname: Linux webm012.cluster130.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
Software: Apache
PHP version: 8.0.30 [ PHP INFO ] PHP os: Linux
Server Ip: 145.239.37.162
Your Ip: 216.73.216.190
User: dreampi (1009562) | Group: users (100)
Safe Mode: OFF
Disable Function:
_dyuweyrj4,_dyuweyrj4r,dl

name : CommandHandler.php
<?php

namespace AmeliaBooking\Application\Commands;

use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
use AmeliaBooking\Infrastructure\Common\Container;

/**
 * Class CommandHandler
 *
 * @package AmeliaBooking\Application\Commands
 */
abstract class CommandHandler
{
    /**
     * @var Container
     */
    protected $container;

    protected $mandatoryFields = [];

    /**
     * @param Command $command
     *
     * @throws InvalidArgumentException
     */
    public function checkMandatoryFields($command)
    {
        $missingFields = [];

        foreach ($this->mandatoryFields as $field) {
            if ($command->getField($field) === null) {
                $missingFields[] = $field;
            }
        }
        if (!empty($missingFields)) {
            throw new InvalidArgumentException(
                'Mandatory fields not passed! Missing: ' . implode(', ', $missingFields)
            );
        }
    }

    /**
     * CommandHandler constructor.
     *
     * @param Container $container
     */
    public function __construct($container)
    {
        $this->container = $container;
    }

    /**
     * @return Container
     */
    public function getContainer()
    {
        return $this->container;
    }
}
© 2026 GrazzMean-Shell