Index: branches/5.2.x/core/kernel/utility/cache.php
===================================================================
diff -u -N -r14699 -r14840
--- branches/5.2.x/core/kernel/utility/cache.php (.../cache.php) (revision 14699)
+++ branches/5.2.x/core/kernel/utility/cache.php (.../cache.php) (revision 14840)
@@ -1,6 +1,6 @@
siteKeyName = 'site_serial:' . crc32(SQL_TYPE . '://' . SQL_USER . ':' . SQL_PASS . '@' . SQL_SERVER . ':' . TABLE_PREFIX . ':' . SQL_DB);
// get cache handler class to use
- if ( isset($vars['CacheHandler']) ) {
- // for advanced users, who want to save one SQL on each page load
- $handler_class = $vars['CacheHandler'] . 'CacheHandler';
- }
- else {
- $this->Application->Conn->nextQueryFromMaster = true;
- $handler_class = $this->Application->ConfigValue('CacheHandler') . 'CacheHandler';
- }
+ $handler_class = (isset($vars['CacheHandler']) ? $vars['CacheHandler'] : '') . 'CacheHandler';
- // defined cache handler doen't exist -> use default
- if (!class_exists($handler_class)) {
+ // defined cache handler doesn't exist -> use default
+ if ( !class_exists($handler_class) ) {
$handler_class = 'FakeCacheHandler';
}
$handler = new $handler_class();
- if (!$handler->isWorking()) {
+ if ( !$handler->isWorking() ) {
// defined cache handler is not working -> use default
trigger_error('Failed to initialize "' . $handler_class . '" caching handler.', E_USER_WARNING);
$handler = new FakeCacheHandler();
}
- elseif ($this->Application->isDebugMode() && ($handler->cachingType == CACHING_TYPE_MEMORY)) {
+ elseif ( $this->Application->isDebugMode() && ($handler->cachingType == CACHING_TYPE_MEMORY) ) {
$this->Application->Debugger->appendHTML('Memory Caching: "' . $handler_class . '"');
}
@@ -518,39 +511,31 @@
var $cachingType = CACHING_TYPE_MEMORY;
- function MemcacheCacheHandler()
+ function MemcacheCacheHandler($default_servers = '')
{
$vars = kUtil::getConfigVars();
+ $memcached_servers = isset($vars['MemcacheServers']) ? $vars['MemcacheServers'] : $default_servers;
- if ( array_key_exists('MemcacheServers', $vars) ) {
- // for advanced users, who want to save one SQL on each page load
- $memcached_servers = $vars['MemcacheServers'];
- }
- else {
- $application =& kApplication::Instance();
- $memcached_servers = $application->ConfigValue('MemcacheServers');
- }
-
- if ($memcached_servers && class_exists('Memcache')) {
+ if ( $memcached_servers && class_exists('Memcache') ) {
$this->_enabled = true;
$this->_handler = new Memcache();
$servers = explode(';', $memcached_servers);
- foreach ($servers as $server) {
- if ( preg_match('/(.*):([\d]+)$/', $server, $regs) ) {
- // "hostname:port" OR "unix:///path/to/socket:0"
- $server = $regs[1];
- $port = $regs[2];
- }
- else {
- $port = 11211;
- }
+ foreach ($servers as $server) {
+ if ( preg_match('/(.*):([\d]+)$/', $server, $regs) ) {
+ // "hostname:port" OR "unix:///path/to/socket:0"
+ $server = $regs[1];
+ $port = $regs[2];
+ }
+ else {
+ $port = 11211;
+ }
- $this->_handler->addServer($server, $port);
- }
+ $this->_handler->addServer($server, $port);
+ }
- // verify, that memcache server is working
- if (!$this->_handler->set('test', 1)) {
+ // verify, that memcache server is working
+ if ( !$this->_handler->set('test', 1) ) {
$this->_enabled = false;
}
}