Back to Adapter class

Method loadAllAdapters

public void
loadAllAdapters
(mixed $options = array())
Loads all adapters.
Parameters
  • array $options Adapter options
Returns
  • void
Since
  • 1.6
Class: Adapter
Project: Joomla

Method loadAllAdapters - Source code

/**
 * Loads all adapters.
 *
 * @param   array  $options  Adapter options
 *
 * @return  void
 *
 * @since   1.6
 */
public function loadAllAdapters($options = array())
{
    $files = new \DirectoryIterator($this->_basepath . '/' . $this->_adapterfolder);
    /** @type  $file  \DirectoryIterator */
    foreach ($files as $file) {
        $fileName = $file->getFilename();
        // Only load for php files.
        if (!$file->isFile() || $file->getExtension() != 'php') {
            continue;
        }
        // Try to load the adapter object
        require_once $this->_basepath . '/' . $this->_adapterfolder . '/' . $fileName;
        // Derive the class name from the filename.
        $name = str_ireplace('.php', '', ucfirst(trim($fileName)));
        $class = $this->_classprefix . ucfirst($name);
        if (!class_exists($class)) {
            // Skip to next one
            continue;
        }
        $adapter = new $class($this, $this->_db, $options);
        $this->_adapters[$name] = clone $adapter;
    }
}