blob: dadc8419d549900c9b6107107e115abc8718b78b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
<?php
declare(strict_types=1);
namespace Doctrine\DBAL\Platforms\MySQL\CharsetMetadataProvider;
use Doctrine\DBAL\Platforms\MySQL\CharsetMetadataProvider;
use function array_key_exists;
/** @internal */
final class CachingCharsetMetadataProvider implements CharsetMetadataProvider
{
/** @var array<string,?string> */
private array $cache = [];
public function __construct(private readonly CharsetMetadataProvider $charsetMetadataProvider)
{
}
public function getDefaultCharsetCollation(string $charset): ?string
{
if (array_key_exists($charset, $this->cache)) {
return $this->cache[$charset];
}
return $this->cache[$charset] = $this->charsetMetadataProvider->getDefaultCharsetCollation($charset);
}
}
|