From ddc0de38f64e5834ce04f0407a8416172b596655 Mon Sep 17 00:00:00 2001 From: wei <> Date: Sat, 16 Dec 2006 03:56:03 +0000 Subject: removed adodb and framework/DataAccess --- .../SQLMap/Configuration/TSqlMapCacheModel.php | 131 --------------------- 1 file changed, 131 deletions(-) delete mode 100644 framework/DataAccess/SQLMap/Configuration/TSqlMapCacheModel.php (limited to 'framework/DataAccess/SQLMap/Configuration/TSqlMapCacheModel.php') diff --git a/framework/DataAccess/SQLMap/Configuration/TSqlMapCacheModel.php b/framework/DataAccess/SQLMap/Configuration/TSqlMapCacheModel.php deleted file mode 100644 index 3bd20933..00000000 --- a/framework/DataAccess/SQLMap/Configuration/TSqlMapCacheModel.php +++ /dev/null @@ -1,131 +0,0 @@ -_id; } - public function setID($value){ $this->_id = $value; } - - public function getImplementation(){ return $this->_implementation; } - public function setImplementation($value){ $this->_implementation = $value; } - -// public function getFlushInterval(){ return $this->_flushInterval; } -// public function setFlushInterval($value){ $this->_flushInterval = $value; } - - public function initialize($sqlMap) - { - $implementation = $this->getImplementationClass( - $sqlMap->getTypeHandlerFactory()); - $this->_cache = new $implementation; - $this->_cache->configure($this, $this->_properties); - } - - protected function getImplementationClass($typeFactory) - { - switch(strtolower($this->_implementation)) - { - case 'fifo': return 'TSqlMapFifoCache'; - case 'lru' : return 'TSqlMapLruCache'; - case 'basic' : return 'TSqlMapApplicationCache'; - } - - if(class_exists($this->_implementation, false)) - $class = $this->_implementation; - else - $class = $typeFactory->getTypeHandler($this->_implementation); - if(!is_null($class)) - return $class; - else - throw new TSqlMapConfigurationException( - 'sqlmap_unable_to_find_implemenation', $this->_implementation); - } - - public function addProperty($name, $value) - { - $this->_properties[strtolower($name)] = $value; - } - - public function registerTriggerStatement($mappedStatement) - { - $mappedStatement->attachEventHandler('OnExecuteQuery', - array($this, 'flushHandler')); - } - - protected function flushHandler($sender, $param) - { - $this->flush(); - } - - public function flush() - { - $this->_cache->flush(); - } - - public function get($key) - { - if($key instanceof TSqlMapCacheKey) - $key = $key->getHash(); - - //if flush ? - $value = $this->_cache->get($key); - $this->_requests++; - if(!is_null($value)) - $this->_hits++; - return $value; - } - - public function set($key, $value) - { - if($key instanceof TSqlMapCacheKey) - $key = $key->getHash(); - - if(!is_null($value)) - $this->_cache->set($key, $value); - } - - public function getHitRatio() - { - if($this->_requests != 0) - return $this->_hits / $this->_requests; - else - return 0; - } -} - - -class TSqlMapCacheKey -{ - private $_key; - - public function __construct($object) - { - $this->_key = $this->generateKey(serialize($object)); - } - - protected function generateKey($string) - { - return sprintf('%x',crc32($string)); - } - - public function getHash() - { - return $this->_key; - } - - public function __toString() - { - return $this->getHash(); - } -} - - -?> \ No newline at end of file -- cgit v1.2.3