diff --git a/application/Espo/Core/Utils/Database/Dbal/ConnectionFactoryFactory.php b/application/Espo/Core/Utils/Database/Dbal/ConnectionFactoryFactory.php index b0a1762d3b..e453544000 100644 --- a/application/Espo/Core/Utils/Database/Dbal/ConnectionFactoryFactory.php +++ b/application/Espo/Core/Utils/Database/Dbal/ConnectionFactoryFactory.php @@ -46,7 +46,7 @@ class ConnectionFactoryFactory { /** @var ?class-string $className */ $className = $this->metadata - ->get(['app', 'database', 'platforms', $platform, 'dbalConnectionFactoryClassName']); + ->get(['app', 'databasePlatforms', $platform, 'dbalConnectionFactoryClassName']); if (!$className) { throw new RuntimeException("No DBAL ConnectionFactory for {$platform}."); diff --git a/application/Espo/Core/Utils/Database/DetailsProviderFactory.php b/application/Espo/Core/Utils/Database/DetailsProviderFactory.php index fc3895595b..ff6b8f111f 100644 --- a/application/Espo/Core/Utils/Database/DetailsProviderFactory.php +++ b/application/Espo/Core/Utils/Database/DetailsProviderFactory.php @@ -46,7 +46,7 @@ class DetailsProviderFactory { /** @var ?class-string $className */ $className = $this->metadata - ->get(['app', 'database', 'platforms', $platform, 'detailsProviderClassName']); + ->get(['app', 'databasePlatforms', $platform, 'detailsProviderClassName']); if (!$className) { throw new RuntimeException("No Details-Provider for {$platform}."); diff --git a/application/Espo/Core/Utils/Database/Orm/IndexHelperFactory.php b/application/Espo/Core/Utils/Database/Orm/IndexHelperFactory.php index 89e74457f0..dad987347b 100644 --- a/application/Espo/Core/Utils/Database/Orm/IndexHelperFactory.php +++ b/application/Espo/Core/Utils/Database/Orm/IndexHelperFactory.php @@ -44,7 +44,7 @@ class IndexHelperFactory { /** @var ?class-string $className */ $className = $this->metadata - ->get(['app', 'database', 'platforms', $platform, 'indexHelperClassName']); + ->get(['app', 'databasePlatforms', $platform, 'indexHelperClassName']); if (!$className) { throw new RuntimeException("No Index Helper for {$platform}"); diff --git a/application/Espo/Core/Utils/Database/Schema/ColumnPreparatorFactory.php b/application/Espo/Core/Utils/Database/Schema/ColumnPreparatorFactory.php index 514a6143c6..32dffc32f4 100644 --- a/application/Espo/Core/Utils/Database/Schema/ColumnPreparatorFactory.php +++ b/application/Espo/Core/Utils/Database/Schema/ColumnPreparatorFactory.php @@ -47,7 +47,7 @@ class ColumnPreparatorFactory { /** @var ?class-string $className */ $className = $this->metadata - ->get(['app', 'database', 'platforms', $platform, 'columnPreparatorClassName']); + ->get(['app', 'databasePlatforms', $platform, 'columnPreparatorClassName']); if (!$className) { throw new RuntimeException("No Column-Preparator for {$platform}."); diff --git a/application/Espo/Core/Utils/Database/Schema/MetadataProvider.php b/application/Espo/Core/Utils/Database/Schema/MetadataProvider.php index 92b5ed20a4..85e6c58b10 100644 --- a/application/Espo/Core/Utils/Database/Schema/MetadataProvider.php +++ b/application/Espo/Core/Utils/Database/Schema/MetadataProvider.php @@ -52,7 +52,7 @@ class MetadataProvider { /** @var class-string[] */ return $this->metadata - ->get(['app', 'database', 'platforms', $this->getPlatform(), 'preRebuildActionClassNameList']) ?? []; + ->get(['app', 'databasePlatforms', $this->getPlatform(), 'preRebuildActionClassNameList']) ?? []; } /** @@ -62,7 +62,7 @@ class MetadataProvider { /** @var class-string[] */ return $this->metadata - ->get(['app', 'database', 'platforms', $this->getPlatform(), 'postRebuildActionClassNameList']) ?? []; + ->get(['app', 'databasePlatforms', $this->getPlatform(), 'postRebuildActionClassNameList']) ?? []; } /** @@ -72,6 +72,6 @@ class MetadataProvider { /** @var array> */ return $this->metadata - ->get(['app', 'database', 'platforms', $this->getPlatform(), 'dbalTypeClassNameMap']) ?? []; + ->get(['app', 'databasePlatforms', $this->getPlatform(), 'dbalTypeClassNameMap']) ?? []; } } diff --git a/application/Espo/Resources/metadata/app/database.json b/application/Espo/Resources/metadata/app/database.json deleted file mode 100644 index 708871035a..0000000000 --- a/application/Espo/Resources/metadata/app/database.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "platforms": { - "Mysql": { - "detailsProviderClassName": "Espo\\Core\\Utils\\Database\\DetailsProviders\\MysqlDetailsProvider", - "dbalConnectionFactoryClassName": "Espo\\Core\\Utils\\Database\\Dbal\\Factories\\MysqlConnectionFactory", - "indexHelperClassName": "Espo\\Core\\Utils\\Database\\Orm\\IndexHelpers\\MysqlIndexHelper", - "columnPreparatorClassName": "Espo\\Core\\Utils\\Database\\Schema\\ColumnPreparators\\MysqlColumnPreparator", - "preRebuildActionClassNameList": [ - "Espo\\Core\\Utils\\Database\\Schema\\RebuildActions\\PrepareForFulltextIndex" - ], - "postRebuildActionClassNameList": [], - "dbalTypeClassNameMap": { - "mediumtext": "Espo\\Core\\Utils\\Database\\Dbal\\Types\\MediumtextType", - "longtext": "Espo\\Core\\Utils\\Database\\Dbal\\Types\\LongtextType" - } - }, - "Postgresql": { - "dbalConnectionFactoryClassName": "Espo\\Core\\Utils\\Database\\Dbal\\Factories\\PostgresqlConnectionFactory" - } - } -} diff --git a/application/Espo/Resources/metadata/app/databasePlatforms.json b/application/Espo/Resources/metadata/app/databasePlatforms.json new file mode 100644 index 0000000000..1727ab1f51 --- /dev/null +++ b/application/Espo/Resources/metadata/app/databasePlatforms.json @@ -0,0 +1,19 @@ +{ + "Mysql": { + "detailsProviderClassName": "Espo\\Core\\Utils\\Database\\DetailsProviders\\MysqlDetailsProvider", + "dbalConnectionFactoryClassName": "Espo\\Core\\Utils\\Database\\Dbal\\Factories\\MysqlConnectionFactory", + "indexHelperClassName": "Espo\\Core\\Utils\\Database\\Orm\\IndexHelpers\\MysqlIndexHelper", + "columnPreparatorClassName": "Espo\\Core\\Utils\\Database\\Schema\\ColumnPreparators\\MysqlColumnPreparator", + "preRebuildActionClassNameList": [ + "Espo\\Core\\Utils\\Database\\Schema\\RebuildActions\\PrepareForFulltextIndex" + ], + "postRebuildActionClassNameList": [], + "dbalTypeClassNameMap": { + "mediumtext": "Espo\\Core\\Utils\\Database\\Dbal\\Types\\MediumtextType", + "longtext": "Espo\\Core\\Utils\\Database\\Dbal\\Types\\LongtextType" + } + }, + "Postgresql": { + "dbalConnectionFactoryClassName": "Espo\\Core\\Utils\\Database\\Dbal\\Factories\\PostgresqlConnectionFactory" + } +}