diff options
| -rw-r--r-- | .gitattributes | 1 | ||||
| -rw-r--r-- | framework/Collections/TList.php | 22 | ||||
| -rw-r--r-- | framework/Collections/TMap.php | 9 | ||||
| -rw-r--r-- | framework/Data/TCache.php | 88 | ||||
| -rw-r--r-- | framework/Exceptions/messages.txt | 11 | ||||
| -rw-r--r-- | framework/Log/TLogManager.php | 12 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TBulletedList.php | 37 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TCheckBoxList.php | 8 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TDropDownList.php | 13 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TListBox.php | 5 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TListControl.php | 5 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TRadioButton.php | 6 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TRadioButtonList.php | 17 | ||||
| -rw-r--r-- | framework/core.php | 72 | 
14 files changed, 201 insertions, 105 deletions
| diff --git a/.gitattributes b/.gitattributes index 3da00821..9ff71923 100644 --- a/.gitattributes +++ b/.gitattributes @@ -101,6 +101,7 @@ docs/request-sequence.vsd -text  framework/.htaccess -text  framework/Collections/TList.php -text  framework/Collections/TMap.php -text +framework/Data/TCache.php -text  framework/Data/TMemCache.php -text  framework/Data/TSqliteCache.php -text  framework/Data/TXmlDocument.php -text diff --git a/framework/Collections/TList.php b/framework/Collections/TList.php index 232e39c6..b9fbd589 100644 --- a/framework/Collections/TList.php +++ b/framework/Collections/TList.php @@ -25,7 +25,6 @@   * unset($list[$index]); // remove the item at $index
   * if(isset($list[$index])) // if the list has an item at $index
   * foreach($list as $index=>$item) // traverse each item in the list
 - * $list->add("item1")->add("item2"); // adding multiple items
   * </code>
   * Note, count($list) will always return 1. You should use {@link getCount()}
   * to determine the number of items in the list.
 @@ -85,14 +84,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	}
  	/**
 -	 * @return integer the number of items in the list
 -	 */
 -	public function getLength()
 -	{
 -		return $this->getCount();
 -	}
 -
 -	/**
  	 * Returns the item at the specified offset.
  	 * This method is exactly the same as {@link offsetGet}.
  	 * @param integer the index of the item
 @@ -111,7 +102,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	 * Appends an item at the end of the list.
  	 * @param mixed new item
  	 * @throws TInvalidOperationException If the item is not allowed to be added
 -	 * @return TList this
  	 */
  	public function add($item)
  	{
 @@ -122,7 +112,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidOperationException('list_addition_disallowed');
 -		return $this;
  	}
  	/**
 @@ -133,7 +122,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	 * @param mixed new item
  	 * @throws TInvalidDataValueException If the index specified exceeds the bound
  	 * @throws TInvalidOperationException If the item is not allowed to be added
 -	 * @return TList this
  	 */
  	public function insert($index,$item)
  	{
 @@ -152,7 +140,7 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidOperationException('list_addition_disallowed');
 -		return $this;
 +
  	}
  	/**
 @@ -162,14 +150,13 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	 * @param mixed the item to be removed.
  	 * @throws TInvalidOperationException If the item cannot be removed
  	 * @throws TInvalidDataValueException If the item does not exist
 -	 * @return mixed the removed item
  	 */
  	public function remove($item)
  	{
  		if(($index=$this->indexOf($item))>=0)
  		{
  			if($this->canRemoveItem($item))
 -				return $this->removeAt($index);
 +				$this->removeAt($index);
  			else
  				throw new TInvalidOperationException('list_item_unremovable');
  		}
 @@ -208,7 +195,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	/**
  	 * Removes all items in the list.
 -	 * @return TList this
  	 */
  	public function clear()
  	{
 @@ -250,7 +236,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	 * Note, existing data in the list will be cleared first.
  	 * @param mixed the data to be copied from, must be an array or object implementing Traversable
  	 * @throws TInvalidDataTypeException If data is neither an array nor a Traversable.
 -	 * @return TList this
  	 */
  	public function copyFrom($data)
  	{
 @@ -263,7 +248,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidDataTypeException('list_data_not_iterable');
 -		return $this;
  	}
  	/**
 @@ -271,7 +255,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  	 * New data will be appended to the end of the existing data.
  	 * @param mixed the data to be merged with, must be an array or object implementing Traversable
  	 * @throws TInvalidDataTypeException If data is neither an array nor an iterator.
 -	 * @return TList this
  	 */
  	public function mergeWith($data)
  	{
 @@ -282,7 +265,6 @@ class TList extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidDataTypeException('list_data_not_iterable');
 -		return $this;
  	}
  	/**
 diff --git a/framework/Collections/TMap.php b/framework/Collections/TMap.php index 6647d039..73665136 100644 --- a/framework/Collections/TMap.php +++ b/framework/Collections/TMap.php @@ -24,7 +24,6 @@   * unset($map[$key]); // remove the value with the specified key
   * if(isset($map[$key])) // if the map contains the key
   * foreach($map as $key=>$value) // traverse the items in the map
 - * $map->add("key1", "item1")->add("key2", "item2"); //multiple adds
   * </code>
   * Note, count($map) will always return 1. You should use {@link getCount()}
   * to determine the number of items in the map.
 @@ -102,7 +101,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  	 * @param mixed key
  	 * @param mixed value
  	 * @throws TInvalidOperationException if the item cannot be added
 -	 * @return TMap this
  	 */
  	public function add($key,$value)
  	{
 @@ -115,7 +113,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidOperationException('map_addition_disallowed');
 -		return $this;
  	}
  	/**
 @@ -144,13 +141,11 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  	/**
  	 * Removes all items in the map.
 -	 * @return TMap this
  	 */
  	public function clear()
  	{
  		foreach(array_keys($this->_d) as $key)
  			$this->remove($key);
 -		return $this;
  	}
  	/**
 @@ -175,7 +170,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  	 * Note, existing data in the map will be cleared first.
  	 * @param mixed the data to be copied from, must be an array or object implementing Traversable
  	 * @throws TInvalidDataTypeException If data is neither an array nor an iterator.
 -	 * @return TMap this
  	 */
  	public function copyFrom($data)
  	{
 @@ -188,7 +182,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidDataTypeException('map_data_not_iterable');
 -		return $this;
  	}
  	/**
 @@ -196,7 +189,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  	 * Existing data in the map will be kept and overwritten if the keys are the same.
  	 * @param mixed the data to be merged with, must be an array or object implementing Traversable
  	 * @throws TInvalidDataTypeException If data is neither an array nor an iterator.
 -	 * @return TMap this
  	 */
  	public function mergeWith($data)
  	{
 @@ -207,7 +199,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess  		}
  		else
  			throw new TInvalidDataTypeException('map_data_not_iterable');
 -		return $this;
  	}
  	/**
 diff --git a/framework/Data/TCache.php b/framework/Data/TCache.php new file mode 100644 index 00000000..64729b46 --- /dev/null +++ b/framework/Data/TCache.php @@ -0,0 +1,88 @@ +<?php
 +
 +/**
 + * ICache interface.
 + *
 + * This interface must be implemented by cache managers.
 + *
 + * @author Qiang Xue <qiang.xue@gmail.com>
 + * @version $Revision: $  $Date: $
 + * @package System.Data
 + * @since 3.0
 + */
 +interface ICache
 +{
 +	/**
 +	 * Retrieves a value from cache with a specified key.
 +	 * @return mixed the value stored in cache, false if the value is not in the cache or expired.
 +	 */
 +	public function get($id);
 +	/**
 +	 * Stores a value identified by a key into cache.
 +	 * If the cache already contains such a key, the existing value and
 +	 * expiration time will be replaced with the new ones.
 +	 *
 +	 * @param string the key identifying the value to be cached
 +	 * @param mixed the value to be cached
 +	 * @param integer the expiration time of the value,
 +	 *        0 means never expire,
 +	 *        a number less or equal than 60*60*24*30 means the number of seconds that the value will remain valid.
 +	 *        a number greater than 60 means a UNIX timestamp after which the value will expire.
 +	 * @return boolean true if the value is successfully stored into cache, false otherwise
 +	 */
 +	public function set($id,$value,$expire=0);
 +	/**
 +	 * Stores a value identified by a key into cache if the cache does not contain this key.
 +	 * Nothing will be done if the cache already contains the key.
 +	 * @param string the key identifying the value to be cached
 +	 * @param mixed the value to be cached
 +	 * @param integer the expiration time of the value,
 +	 *        0 means never expire,
 +	 *        a number less or equal than 60*60*24*30 means the number of seconds that the value will remain valid.
 +	 *        a number greater than 60 means a UNIX timestamp after which the value will expire.
 +	 * @return boolean true if the value is successfully stored into cache, false otherwise
 +	 */
 +	public function add($id,$value,$expire=0);
 +	/**
 +	 * Stores a value identified by a key into cache only if the cache contains this key.
 +	 * The existing value and expiration time will be overwritten with the new ones.
 +	 * @param string the key identifying the value to be cached
 +	 * @param mixed the value to be cached
 +	 * @param integer the expiration time of the value,
 +	 *        0 means never expire,
 +	 *        a number less or equal than 60*60*24*30 means the number of seconds that the value will remain valid.
 +	 *        a number greater than 60 means a UNIX timestamp after which the value will expire.
 +	 * @return boolean true if the value is successfully stored into cache, false otherwise
 +	 */
 +	public function replace($id,$value,$expire=0);
 +	/**
 +	 * Deletes a value with the specified key from cache
 +	 * @param string the key of the value to be deleted
 +	 * @return boolean if no error happens during deletion
 +	 */
 +	public function delete($id);
 +	/**
 +	 * Deletes all values from cache.
 +	 * Be careful of performing this operation if the cache is shared by multiple applications.
 +	 */
 +	public function flush();
 +}
 +
 +interface IDependency
 +{
 +
 +}
 +
 +class TTimeDependency
 +{
 +}
 +
 +class TFileDependency
 +{
 +}
 +
 +class TDirectoryDependency
 +{
 +}
 +
 +?>
\ No newline at end of file diff --git a/framework/Exceptions/messages.txt b/framework/Exceptions/messages.txt index 9869cc8c..54c8f04c 100644 --- a/framework/Exceptions/messages.txt +++ b/framework/Exceptions/messages.txt @@ -154,4 +154,13 @@ tablestyle_cellspacing_invalid			= TTableStyle.CellSpacing must take an integer  pagestatepersister_pagestate_corrupted	= Page state is corrupted.
  pagestatepersister_privatekey_invalid	= TPageStatePersister.PrivateKey must take a string no shorter than 8 characters.
 -listitemcollection_item_invalid			= TListItemCollection can only take strings or TListItem objects.
\ No newline at end of file +listitemcollection_item_invalid			= TListItemCollection can only take strings or TListItem objects.
 +
 +dropdownlist_selectedindices_unsupported= TDropDownList.SelectedIndices is read-only.
 +
 +bulletedlist_autopostback_unsupported	= TBulletedList.AutoPostBack is read-only.
 +bulletedlist_selectedindex_unsupported	= TBulletedList.SelectedIndex is read-only.
 +bulletedlist_selectedindices_unsupported= TBulletedList.SelectedIndices is read-only.
 +bulletedlist_selectedvalue_unsupported	= TBulletedList.SelectedValue is read-only.
 +
 +radiobuttonlist_selectedindices_unsupported	= TRadioButtonList.SelectedIndices is read-only.
\ No newline at end of file diff --git a/framework/Log/TLogManager.php b/framework/Log/TLogManager.php index dba96e3a..8ab170ed 100644 --- a/framework/Log/TLogManager.php +++ b/framework/Log/TLogManager.php @@ -3,7 +3,7 @@  abstract class TLogManager extends TModule
  {
  	protected $defaultSeverity = 'INFO | DEBUG | NOTICE | WARNING | ERROR | FATAL';
 -	
 +
  	protected $config;
  	public function init($xml)
 @@ -42,7 +42,7 @@ abstract class TLogManager extends TModule  				$log->$map($logFilter, $logWriter);
  			}
 -			if($filters->Length < 1)
 +			if($filters->getCount() < 1)
  			{
  				$logFilter = new ezcLogFilter();
  				$logFilter->severity = $this->getFilterSeverity();
 @@ -55,9 +55,9 @@ abstract class TLogManager extends TModule  	{
  		switch($xml->getAttribute('destination'))
  		{
 -			case 'file' : 
 +			case 'file' :
  				return TEzcLoggerUnixFileWriterFactory::create($xml);
 -			default : 
 +			default :
  				throw new TException('invalid_log_destination');
  		}
  	}
 @@ -69,7 +69,7 @@ abstract class TLogManager extends TModule  		$serverities = explode("|", $string);
  		$mask = 0;
  		foreach($serverities as $Severity)
 -			$mask = $mask | $this->getSeverity($Severity);			
 +			$mask = $mask | $this->getSeverity($Severity);
  		return $mask;
  	}
 @@ -107,7 +107,7 @@ class TEzcLoggerUnixFileWriterFactory  		TEzcLoggerLoader::using('ezcLogWriter');
  		TEzcLoggerLoader::using('ezcLogWriterFile');
  		TEzcLoggerLoader::using('ezcLogWriterUnixFile');
 -		
 +
  		$path = $xml->getAttribute('directory');
  		$dir = Prado::getPathOfNamespace($path);
  		$file = $xml->getAttribute('filename');
 diff --git a/framework/Web/UI/WebControls/TBulletedList.php b/framework/Web/UI/WebControls/TBulletedList.php index 67c380bc..8256237d 100644 --- a/framework/Web/UI/WebControls/TBulletedList.php +++ b/framework/Web/UI/WebControls/TBulletedList.php @@ -11,6 +11,11 @@   */
  /**
 + * Includes TListControl class
 + */
 +Prado::using('System.Web.UI.WebControls.TListControl');
 +
 +/**
   * TBulletedList class
   *
   * TBulletedList displays items in a bullet format.
 @@ -322,6 +327,38 @@ class TBulletedList extends TListControl implements IPostBackEventHandler  		else
  			return null;
  	}
 +
 +	/**
 +	 * @throws TNotSupportedException if this method is invoked
 +	 */
 +	public function setAutoPostBack($value)
 +	{
 +		throw new TNotSupportedException('bulletedlist_autopostback_unsupported');
 +	}
 +
 +	/**
 +	 * @throws TNotSupportedException if this method is invoked
 +	 */
 +	public function setSelectedIndex($index)
 +	{
 +		throw new TNotSupportedException('bulletedlist_selectedindex_unsupported');
 +	}
 +
 +	/**
 +	 * @throws TNotSupportedException if this method is invoked
 +	 */
 +	public function setSelectedIndices($indices)
 +	{
 +		throw new TNotSupportedException('bulletedlist_selectedindices_unsupported');
 +	}
 +
 +	/**
 +	 * @throws TNotSupportedException if this method is invoked
 +	 */
 +	public function setSelectedValue($value)
 +	{
 +		throw new TNotSupportedException('bulletedlist_selectedvalue_unsupported');
 +	}
  }
  /**
 diff --git a/framework/Web/UI/WebControls/TCheckBoxList.php b/framework/Web/UI/WebControls/TCheckBoxList.php index 3f61fba6..28ab11ea 100644 --- a/framework/Web/UI/WebControls/TCheckBoxList.php +++ b/framework/Web/UI/WebControls/TCheckBoxList.php @@ -11,9 +11,17 @@   */
  /**
 + * Includes TListControl class
 + */
 +Prado::using('System.Web.UI.WebControls.TListControl');
 +/**
   * Includes TRepeatInfo class
   */
  Prado::using('System.Web.UI.WebControls.TRepeatInfo');
 +/**
 + * Includes TCheckBox class
 + */
 +Prado::using('System.Web.UI.WebControls.TCheckBox');
  /**
   * TCheckBoxList class
 diff --git a/framework/Web/UI/WebControls/TDropDownList.php b/framework/Web/UI/WebControls/TDropDownList.php index d56e3e7e..3c459057 100644 --- a/framework/Web/UI/WebControls/TDropDownList.php +++ b/framework/Web/UI/WebControls/TDropDownList.php @@ -11,6 +11,11 @@   */
  /**
 + * Includes TListControl class
 + */
 +Prado::using('System.Web.UI.WebControls.TListControl');
 +
 +/**
   * TDropDownList class
   *
   * TDropDownList displays a dropdown list on a Web page.
 @@ -93,5 +98,13 @@ class TDropDownList extends TListControl implements IPostBackDataHandler  		else
  			return $index;
  	}
 +
 +	/**
 +	 * @throws TNotSupportedException if this method is invoked
 +	 */
 +	public function setSelectedIndices($indices)
 +	{
 +		throw new TNotSupportedException('dropdownlist_selectedindices_unsupported');
 +	}
  }
  ?>
\ No newline at end of file diff --git a/framework/Web/UI/WebControls/TListBox.php b/framework/Web/UI/WebControls/TListBox.php index db99edc5..47165c99 100644 --- a/framework/Web/UI/WebControls/TListBox.php +++ b/framework/Web/UI/WebControls/TListBox.php @@ -11,6 +11,11 @@   */
  /**
 + * Includes TListControl class
 + */
 +Prado::using('System.Web.UI.WebControls.TListControl');
 +
 +/**
   * TListBox class
   *
   * TListBox displays a list box on a Web page that allows single or multiple selection.
 diff --git a/framework/Web/UI/WebControls/TListControl.php b/framework/Web/UI/WebControls/TListControl.php index 582e03bd..265c320b 100644 --- a/framework/Web/UI/WebControls/TListControl.php +++ b/framework/Web/UI/WebControls/TListControl.php @@ -11,6 +11,11 @@   */
  /**
 + * Includes TDataBoundControl class
 + */
 +Prado::using('System.Web.UI.WebControls.TDataBoundControl');
 +
 +/**
   * TListControl class
   *
   * TListControl is a base class for list controls, such as {@link TListBox},
 diff --git a/framework/Web/UI/WebControls/TRadioButton.php b/framework/Web/UI/WebControls/TRadioButton.php index 83f52f69..a3d4d0c0 100644 --- a/framework/Web/UI/WebControls/TRadioButton.php +++ b/framework/Web/UI/WebControls/TRadioButton.php @@ -14,7 +14,11 @@   * Using TCheckBox parent class
   */
  Prado::using('System.Web.UI.WebControls.TCheckBox');
 -// using TRadioButtonList ??
 +/**
 + * Using TRadioButtonList class
 + */
 +Prado::using('System.Web.UI.WebControls.TRadioButtonList');
 +
  /**
   * TRadioButton class
   *
 diff --git a/framework/Web/UI/WebControls/TRadioButtonList.php b/framework/Web/UI/WebControls/TRadioButtonList.php index 2f12369b..b0a36c9d 100644 --- a/framework/Web/UI/WebControls/TRadioButtonList.php +++ b/framework/Web/UI/WebControls/TRadioButtonList.php @@ -11,6 +11,15 @@   */
  /**
 + * Includes TRadioButton class
 + */
 +Prado::using('System.Web.UI.WebControls.TRadioButton');
 +/**
 + * Includes TCheckBoxList class
 + */
 +Prado::using('System.Web.UI.WebControls.TCheckBoxList');
 +
 +/**
   * TRadioButtonList class
   *
   * TRadioButtonList displays a list of radiobuttons on a Web page.
 @@ -70,6 +79,14 @@ class TRadioButtonList extends TCheckBoxList  		}
  		return false;
  	}
 +
 +	/**
 +	 * @throws TNotSupportedException if this method is invoked
 +	 */
 +	public function setSelectedIndices($indices)
 +	{
 +		throw new TNotSupportedException('radiobuttonlist_selectedindices_unsupported');
 +	}
  }
  ?>
\ No newline at end of file diff --git a/framework/core.php b/framework/core.php index b2ae1d45..08481d09 100644 --- a/framework/core.php +++ b/framework/core.php @@ -41,6 +41,10 @@ require_once(PRADO_DIR.'/Data/TXmlDocument.php');   * Includes THttpUtility definition
   */
  require_once(PRADO_DIR.'/Web/THttpUtility.php');
 +/**
 + * Includes TCache definition
 + */
 +require_once(PRADO_DIR.'/Data/TCache.php');
  require_once(PRADO_DIR.'/Log/ILog.php');
 @@ -103,74 +107,6 @@ interface IService  }
  /**
 - * ICache interface.
 - *
 - * This interface must be implemented by cache managers.
 - *
 - * @author Qiang Xue <qiang.xue@gmail.com>
 - * @version $Revision: $  $Date: $
 - * @package System
 - * @since 3.0
 - */
 -interface ICache
 -{
 -	/**
 -	 * Retrieves a value from cache with a specified key.
 -	 * @return mixed the value stored in cache, false if the value is not in the cache or expired.
 -	 */
 -	public function get($id);
 -	/**
 -	 * Stores a value identified by a key into cache.
 -	 * If the cache already contains such a key, the existing value and
 -	 * expiration time will be replaced with the new ones.
 -	 *
 -	 * @param string the key identifying the value to be cached
 -	 * @param mixed the value to be cached
 -	 * @param integer the expiration time of the value,
 -	 *        0 means never expire,
 -	 *        a number less or equal than 60*60*24*30 means the number of seconds that the value will remain valid.
 -	 *        a number greater than 60 means a UNIX timestamp after which the value will expire.
 -	 * @return boolean true if the value is successfully stored into cache, false otherwise
 -	 */
 -	public function set($id,$value,$expire=0);
 -	/**
 -	 * Stores a value identified by a key into cache if the cache does not contain this key.
 -	 * Nothing will be done if the cache already contains the key.
 -	 * @param string the key identifying the value to be cached
 -	 * @param mixed the value to be cached
 -	 * @param integer the expiration time of the value,
 -	 *        0 means never expire,
 -	 *        a number less or equal than 60*60*24*30 means the number of seconds that the value will remain valid.
 -	 *        a number greater than 60 means a UNIX timestamp after which the value will expire.
 -	 * @return boolean true if the value is successfully stored into cache, false otherwise
 -	 */
 -	public function add($id,$value,$expire=0);
 -	/**
 -	 * Stores a value identified by a key into cache only if the cache contains this key.
 -	 * The existing value and expiration time will be overwritten with the new ones.
 -	 * @param string the key identifying the value to be cached
 -	 * @param mixed the value to be cached
 -	 * @param integer the expiration time of the value,
 -	 *        0 means never expire,
 -	 *        a number less or equal than 60*60*24*30 means the number of seconds that the value will remain valid.
 -	 *        a number greater than 60 means a UNIX timestamp after which the value will expire.
 -	 * @return boolean true if the value is successfully stored into cache, false otherwise
 -	 */
 -	public function replace($id,$value,$expire=0);
 -	/**
 -	 * Deletes a value with the specified key from cache
 -	 * @param string the key of the value to be deleted
 -	 * @return boolean if no error happens during deletion
 -	 */
 -	public function delete($id);
 -	/**
 -	 * Deletes all values from cache.
 -	 * Be careful of performing this operation if the cache is shared by multiple applications.
 -	 */
 -	public function flush();
 -}
 -
 -/**
   * ITextWriter interface.
   *
   * This interface must be implemented by writers.
 | 
