This file is indexed.

/usr/share/php/Horde/Rdo/Factory.php is in php-horde-rdo 2.0.2-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
/**
 * A caching factory for Horde_Rdo_Mapper descendants.
 *
 * PHP version 5
 *
 * @category Horde
 * @package  Test
 * @author   Ralf Lang <lang@b1-systems.de>
 * @license  http://www.horde.org/licenses/lgpl21 LGPL
 */


/**
 * The Horde_Rdo_Factory is a caching root object for Horde_Rdo_Mapper instances
 * This should itself be injected into applications by an injector
 *
 * @category Horde
 * @package Rdo
 */
class Horde_Rdo_Factory
{

    /**
     * The list of already loaded Horde_Rdo_Mapper classes
     * @var array
     */
    protected $_mappers = array();

    /**
     * The database connection to pass to the Horde_Rdo_Mapper classes
     * @var Horde_Db_Adapter
     */
    protected $_adapter;

    /**
     * Constructor.
     *
     * @param Horde_Db_Adapter $adapter  A database adapter.
     * @return Horde_Rdo_Factory  The Horde_Rdo_Factory
     */
    public function __construct(Horde_Db_Adapter $adapter)
    {
        $this->_adapter = $adapter;
    }

    /**
     * Counts the number of cached mappers.
     *
     * @return integer  The number of cached mappers.
     */
    public function count()
    {
        return count($this->_mappers);
    }

    /**
     * Return the mapper instance.
     *
     * @param string $class              The mapper class.
     * @param Horde_Db_Adapter $adapter  A database adapter.
     *
     * @return Horde_Rdo_Mapper  The Horde_Rdo_Mapper descendant instance.
     * @throws Horde_Rdo_Exception
     */
    public function create($class, Horde_Db_Adapter $adapter = null)
    {
        if (!empty($this->_mappers[$class])) {
            return $this->_mappers[$class];
        }
        if (!class_exists($class)) {
            throw new Horde_Rdo_Exception(sprintf('Class %s not found', $class));
        }
        if (!$adapter) {
            $adapter = $this->_adapter;
        }
        $this->_mappers[$class] = new $class($adapter);
        return $this->_mappers[$class]->setFactory($this);
    }
}