Files
sihnon-php-lib/source/lib/SihnonFramework/Log/PluginFactory.class.php
Ben Roberts 6d1705f5a9 Updates class autoloader to use class_alias
Makes Exceptions extend the base classes, rather than the subclasses to
avoid class redefinition errors.
Makes PluginFactories define the interface using the base class rather
than a subclass to avoid class_implements() to fail by testing for a
class not in the hierarchy.
2010-10-11 23:04:20 +01:00

30 lines
809 B
PHP

<?php
class SihnonFramework_Log_PluginFactory extends Sihnon_PluginFactory {
protected static $plugin_prefix = 'Sihnon_Log_Plugin_';
protected static $plugin_interface = 'SihnonFramework_Log_IPlugin';
protected static $plugin_dir = array(
SihnonFramework_Lib => 'SihnonFramework/Log/Plugin/',
Sihnon_Lib => 'Sihnon/Log/Plugin/',
);
public static function init() {
}
public static function create($plugin, $options) {
self::ensureScanned();
if (! self::isValidPlugin($plugin)) {
throw new Sihnon_Exception_InvalidPluginName($plugin);
}
$classname = self::classname($plugin);
return call_user_func(array($classname, 'create'), $options);
}
}
?>