fix connector conflict.
This commit is contained in:
commit
e3b6328394
|
@ -9,13 +9,6 @@ class Cache {
|
|||
*/
|
||||
public static $drivers = array();
|
||||
|
||||
/**
|
||||
* All of the items retrieved by the cache drivers.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
public static $items = array();
|
||||
|
||||
/**
|
||||
* Get a cache driver instance. If no driver name is specified, the default
|
||||
* cache driver will be returned as defined in the cache configuration file.
|
||||
|
@ -66,9 +59,9 @@ public static function driver($driver = null)
|
|||
*/
|
||||
public static function get($key, $default = null, $driver = null)
|
||||
{
|
||||
if (isset(static::$items[$driver][$key]))
|
||||
if (is_null($driver))
|
||||
{
|
||||
return static::$items[$driver][$key];
|
||||
$driver = Config::get('cache.driver');
|
||||
}
|
||||
|
||||
if (is_null($item = static::driver($driver)->get($key)))
|
||||
|
@ -76,7 +69,7 @@ public static function get($key, $default = null, $driver = null)
|
|||
return is_callable($default) ? call_user_func($default) : $default;
|
||||
}
|
||||
|
||||
return static::$items[$driver][$key] = $item;
|
||||
return $item;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -91,7 +84,7 @@ public static function get($key, $default = null, $driver = null)
|
|||
*/
|
||||
public static function remember($key, $default, $minutes, $driver = null)
|
||||
{
|
||||
if ( ! is_null($item = static::get($key)))
|
||||
if ( ! is_null($item = static::get($key, null, $driver)))
|
||||
{
|
||||
return $item;
|
||||
}
|
||||
|
|
|
@ -65,10 +65,8 @@ private function connect_to_sqlite($config)
|
|||
{
|
||||
return new \PDO('sqlite:'.$config->database, null, null, $this->options);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new \Exception("SQLite database [".$config->database."] could not be found.");
|
||||
}
|
||||
|
||||
throw new \Exception("SQLite database [".$config->database."] could not be found.");
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -9,6 +9,24 @@ class Loader {
|
|||
*/
|
||||
private static $routes;
|
||||
|
||||
/**
|
||||
* The path where the routes are located.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
public $path;
|
||||
|
||||
/**
|
||||
* Create a new route loader instance.
|
||||
*
|
||||
* @param string $path
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($path)
|
||||
{
|
||||
$this->path = $path;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load the appropriate routes for the request URI.
|
||||
*
|
||||
|
@ -17,9 +35,14 @@ class Loader {
|
|||
*/
|
||||
public function load($uri)
|
||||
{
|
||||
$base = require APP_PATH.'routes'.EXT;
|
||||
$base = require $this->path.'routes'.EXT;
|
||||
|
||||
return (is_dir(APP_PATH.'routes') and $uri != '') ? array_merge($this->load_nested_routes($uri), $base) : $base;
|
||||
if ( ! is_dir($this->path.'routes') or $uri == '')
|
||||
{
|
||||
return $base;
|
||||
}
|
||||
|
||||
return array_merge($this->load_nested_routes($uri), $base);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -36,7 +59,7 @@ private function load_nested_routes($uri)
|
|||
// matching route file in the routes directory.
|
||||
foreach (array_reverse($segments, true) as $key => $value)
|
||||
{
|
||||
if (file_exists($path = ROUTE_PATH.implode('/', array_slice($segments, 0, $key + 1)).EXT))
|
||||
if (file_exists($path = $this->path.'routes/'.implode('/', array_slice($segments, 0, $key + 1)).EXT))
|
||||
{
|
||||
return require $path;
|
||||
}
|
||||
|
@ -51,20 +74,23 @@ private function load_nested_routes($uri)
|
|||
* To improve performance, this operation will only be performed once. The routes
|
||||
* will be cached and returned on every subsequent call.
|
||||
*
|
||||
* @param bool $reload
|
||||
* @param bool $reload
|
||||
* @param string $path
|
||||
* @return array
|
||||
*/
|
||||
public static function everything($reload = false)
|
||||
public static function all($reload = false, $path = null)
|
||||
{
|
||||
if ( ! is_null(static::$routes) and ! $reload) return static::$routes;
|
||||
|
||||
$routes = require APP_PATH.'routes'.EXT;
|
||||
if (is_null($path)) $path = APP_PATH;
|
||||
|
||||
if (is_dir(APP_PATH.'routes'))
|
||||
$routes = require $path.'routes'.EXT;
|
||||
|
||||
if (is_dir($path.'routes'))
|
||||
{
|
||||
// Since route files can be nested deep within the route directory, we need to
|
||||
// recursively spin through the directory to find every file.
|
||||
$directoryIterator = new \RecursiveDirectoryIterator(APP_PATH.'routes');
|
||||
$directoryIterator = new \RecursiveDirectoryIterator($path.'routes');
|
||||
|
||||
$recursiveIterator = new \RecursiveIteratorIterator($directoryIterator, \RecursiveIteratorIterator::SELF_FIRST);
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ public static function to_asset($url)
|
|||
*/
|
||||
public static function to_route($name, $parameters = array(), $https = false)
|
||||
{
|
||||
if ( ! is_null($route = Routing\Finder::find($name, Routing\Loader::everything())))
|
||||
if ( ! is_null($route = Routing\Finder::find($name, Routing\Loader::all())))
|
||||
{
|
||||
$uris = explode(', ', key($route));
|
||||
|
||||
|
|
Loading…
Reference in New Issue