. * */ namespace Friendica\Core\PConfig\Factory; use Friendica\Core\Config\ValueObject\Cache; use Friendica\Core\PConfig\Capability\IManagePersonalConfigValues; use Friendica\Core\PConfig\Repository; use Friendica\Core\PConfig\Type; use Friendica\Core\PConfig\ValueObject; class PConfig { /** * @param Cache $configCache The config cache * @param ValueObject\Cache $pConfigCache The personal config cache * @param Repository\PConfig $configRepo The configuration model * * @return IManagePersonalConfigValues */ public function create(Cache $configCache, ValueObject\Cache $pConfigCache, Repository\PConfig $configRepo): IManagePersonalConfigValues { if ($configCache->get('system', 'config_adapter') === 'preload') { $configuration = new Type\PreloadPConfig($pConfigCache, $configRepo); } else { $configuration = new Type\JitPConfig($pConfigCache, $configRepo); } return $configuration; } }