generatedColumns = new GeneratedColumns(); } public function getGeneratedColumns(): GeneratedColumns { if ($this->generatedColumnsAreSupported() && 0 === $this->generatedColumns->count() && $this->dispatcher->hasListeners(CoreEvents::ON_GENERATED_COLUMNS_BUILD) ) { $event = $this->dispatcher->dispatch(new GeneratedColumnsEvent(), CoreEvents::ON_GENERATED_COLUMNS_BUILD); $this->generatedColumns = $event->getGeneratedColumns(); } return $this->generatedColumns; } public function generatedColumnsAreSupported(): bool { return 1 !== version_compare($this->getMinimalSupportedVersion(), $this->versionProvider->getVersion()); } public function getMinimalSupportedVersion(): string { if ($this->versionProvider->isMariaDb()) { return self::MARIADB_MINIMUM_VERSION; } return self::MYSQL_MINIMUM_VERSION; } }