diff --git a/system/session.php b/system/session.php index 644345d6..48ff3664 100644 --- a/system/session.php +++ b/system/session.php @@ -25,7 +25,27 @@ public static function driver() { if (is_null(static::$driver)) { - static::$driver = Session\Factory::make(Config::get('session.driver')); + switch (Config::get('session.driver')) + { + case 'file': + static::$driver = new Session\Driver\File; + break; + + case 'db': + static::$driver = new Session\Driver\DB; + break; + + case 'memcached': + static::$driver = new Session\Driver\Memcached; + break; + + case 'apc': + static::$driver = new Session\Driver\APC; + break; + + default: + throw new \Exception("Session driver [$driver] is not supported."); + } } return static::$driver;