HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: /home/barbeatleanalyti/www/public_html/webmail/vendor/phpixie/cache/src/PHPixie/Cache/Storages.php
<?php

namespace PHPixie\Cache;

use PHPixie\Cache\Pool\Storage;
use PHPixie\Slice\Data;

class Storages
{
    /** @var  Builder */
    protected $builder;

    /** @var  Data */
    protected $configData;

    protected $storages = array();

    /**
     * @param Builder $builder
     * @param Data $configData
     */
    public function __construct($builder, $configData)
    {
        $this->builder = $builder;
        $this->configData = $configData;
    }

    /**
     * @param string $name
     * @return Storage
     */
    public function get($name)
    {
        if(!isset($this->storages[$name])) {
            $storageConfig = $this->configData->slice($name);
            $driverName = $storageConfig->getRequired('driver');
            $driver = $this->builder->driver($driverName, $storageConfig);
            $this->storages[$name] = $this->builder->storage($name, $driver, $storageConfig);
        }

        return $this->storages[$name];
    }
}