Matthias\SymfonyServiceDefinitionValidator\ServiceDefinitionValidator::validateFactory PHP Method

validateFactory() private method

private validateFactory ( Definition $definition )
$definition Symfony\Component\DependencyInjection\Definition
    private function validateFactory(Definition $definition)
    {
        if (method_exists($definition, 'getFactoryClass')) {
            // Symfony <= 3.0.0
            $factoryClass = $definition->getFactoryClass(false);
            if ($factoryClass) {
                $this->validateFactoryClassAndMethod($factoryClass, $definition->getFactoryMethod(false));
            }
        }
        if (method_exists($definition, 'getFactoryService')) {
            $factoryService = $definition->getFactoryService(false);
            if ($factoryService) {
                $this->validateFactoryServiceAndMethod($factoryService, $definition->getFactoryMethod(false));
            }
        }
        if (method_exists($definition, 'getFactory')) {
            $factory = $definition->getFactory();
            if (!is_array($factory) || count($factory) !== 2) {
                return;
            }
            list($factoryClassOrService, $method) = $factory;
            if (is_string($factoryClassOrService)) {
                $this->validateFactoryClassAndMethod($factoryClassOrService, $method);
            } elseif ($factoryClassOrService instanceof Definition) {
                $this->validateFactoryServiceDefinitionAndMethod($factoryClassOrService, $method);
            } else {
                $this->validateFactoryServiceAndMethod((string) $factoryClassOrService, $method);
            }
        }
    }