From bd2d05119734a7892485cfe3c7bc62a4a606ce6d Mon Sep 17 00:00:00 2001 From: "godzilla80@gmx.net" <> Date: Sun, 5 Apr 2009 16:11:22 +0000 Subject: TSqlMapCacheModel now consider tag as described in doc (sqlmap.pdf) - valid attributes are duration in sec or seconds, minutes, hours, days --- .../SqlMap/Configuration/TSqlMapCacheModel.php | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'framework/Data/SqlMap/Configuration/TSqlMapCacheModel.php') diff --git a/framework/Data/SqlMap/Configuration/TSqlMapCacheModel.php b/framework/Data/SqlMap/Configuration/TSqlMapCacheModel.php index 5d19a3a3..aa688b05 100644 --- a/framework/Data/SqlMap/Configuration/TSqlMapCacheModel.php +++ b/framework/Data/SqlMap/Configuration/TSqlMapCacheModel.php @@ -38,8 +38,9 @@ class TSqlMapCacheModel extends TComponent private $_hits = 0; private $_requests = 0; private $_id; - private $_implementation='basic'; + private $_implementation=TSqlMapCacheTypes::Basic; private $_properties = array(); + private $_flushInterval = 0; /** * @return string unique cache model identifier. @@ -73,6 +74,23 @@ class TSqlMapCacheModel extends TComponent $this->_implementation = TPropertyValue::ensureEnum($value,'TSqlMapCacheTypes'); } + /** + * integer the number of seconds in which the cached value will expire. 0 means never expire. + * @param int cache size. + */ + public function setFlushInterval($value) + { + $this->_flushInterval=TPropertyValue::ensureInteger($value); + } + + /** + * @return int cache duration. + */ + public function getFlushInterval() + { + return $this->_flushInterval; + } + /** * Initialize the cache implementation, sets the actual cache contain if supplied. * @param ISqLMapCache cache implementation instance. @@ -142,7 +160,7 @@ class TSqlMapCacheModel extends TComponent $key = $key->getHash(); if($value!==null) - $this->_cache->set($key, $value); + $this->_cache->set($key, $value, $this->_flushInterval); } /** -- cgit v1.2.3