| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | <?php/* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */namespace Symfony\Component\HttpFoundation\Session\Storage\Proxy;/** * SessionHandler proxy. * * @author Drak <drak@zikula.org> */class SessionHandlerProxy extends AbstractProxy implements \SessionHandlerInterface{    /**     * @var \SessionHandlerInterface     */    protected $handler;    /**     * Constructor.     *     * @param \SessionHandlerInterface $handler     */    public function __construct(\SessionHandlerInterface $handler)    {        $this->handler = $handler;        $this->wrapper = ($handler instanceof \SessionHandler);        $this->saveHandlerName = $this->wrapper ? ini_get('session.save_handler') : 'user';    }    // \SessionHandlerInterface    /**     * {@inheritdoc}     */    public function open($savePath, $sessionName)    {        $return = (bool)$this->handler->open($savePath, $sessionName);        if (true === $return) {            $this->active = true;        }        return $return;    }    /**     * {@inheritdoc}     */    public function close()    {        $this->active = false;        return (bool) $this->handler->close();    }    /**     * {@inheritdoc}     */    public function read($id)    {        return (string) $this->handler->read($id);    }    /**     * {@inheritdoc}     */    public function write($id, $data)    {        return (bool) $this->handler->write($id, $data);    }    /**     * {@inheritdoc}     */    public function destroy($id)    {        return (bool) $this->handler->destroy($id);    }    /**     * {@inheritdoc}     */    public function gc($maxlifetime)    {        return (bool) $this->handler->gc($maxlifetime);    }}
 |