Platformsh\Cli\Command\Environment\EnvironmentInfoCommand::validateValue PHP Метод

validateValue() защищенный Метод

protected validateValue ( string $property, string $value ) : boolean
$property string
$value string
Результат boolean
    protected function validateValue($property, $value)
    {
        $type = $this->getType($property);
        if (!$type) {
            $this->stdErr->writeln("Property not writable: <error>{$property}</error>");
            return false;
        }
        $valid = true;
        $message = '';
        // @todo find out exactly how these should best be validated
        $selectedEnvironment = $this->getSelectedEnvironment();
        switch ($property) {
            case 'parent':
                if ($selectedEnvironment->id === 'master') {
                    $message = "The master environment cannot have a parent";
                    $valid = false;
                } elseif ($value === $selectedEnvironment->id) {
                    $message = "An environment cannot be the parent of itself";
                    $valid = false;
                } elseif (!($parentEnvironment = $this->api()->getEnvironment($value, $this->getSelectedProject()))) {
                    $message = "Environment not found: <error>{$value}</error>";
                    $valid = false;
                } elseif ($parentEnvironment->parent === $selectedEnvironment->id) {
                    $valid = false;
                }
                break;
        }
        switch ($type) {
            case 'boolean':
                $valid = in_array($value, ['1', '0', 'false', 'true']);
                break;
        }
        if (!$valid) {
            if ($message) {
                $this->stdErr->writeln($message);
            } else {
                $this->stdErr->writeln("Invalid value for <error>{$property}</error>: {$value}");
            }
            return false;
        }
        return true;
    }