/** * @inheritdoc */ public function isValid($data, $field = '', array $extra = []) { if (is_array($data) && array_key_exists($field, $data)) { return $this->isValid($data[$field], $field, $extra); } return $this->modules->isInstalled($data); }
/** * Führt die Updateanweisungen eines Moduls aus * * @param ContainerInterface $container * @param string $module * @return int */ public function updateModule(ContainerInterface $container, $module) { $result = false; $serviceIdSchema = $module . '.installer.schema'; $serviceIdMigration = $module . '.installer.migration'; if ($container->has($serviceIdSchema) === true && $container->has($serviceIdMigration) === true) { /** @var SchemaInterface $moduleSchema */ $moduleSchema = $container->get($serviceIdSchema); /** @var MigrationInterface $moduleMigration */ $moduleMigration = $container->get($serviceIdMigration); if ($this->modules->isInstalled($module) || count($moduleMigration->renameModule()) > 0) { $result = $this->schemaUpdater->updateSchema($moduleSchema, $moduleMigration); } } return $result; }