188 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			188 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * @file CAS/PGTStorage/pgt-main.php
 | |
|  * Basic class for PGT storage
 | |
|  */
 | |
| 
 | |
| /**
 | |
|  * @class PGTStorage
 | |
|  * The PGTStorage class is a generic class for PGT storage. This class should
 | |
|  * not be instanciated itself but inherited by specific PGT storage classes.
 | |
|  *
 | |
|  * @author   Pascal Aubry <pascal.aubry at univ-rennes1.fr>
 | |
|  *
 | |
|  * @ingroup internalPGTStorage
 | |
|  */
 | |
| 
 | |
| class PGTStorage
 | |
| {
 | |
|   /** 
 | |
|    * @addtogroup internalPGTStorage
 | |
|    * @{ 
 | |
|    */
 | |
| 
 | |
|   // ########################################################################
 | |
|   //  CONSTRUCTOR
 | |
|   // ########################################################################
 | |
|   
 | |
|   /**
 | |
|    * The constructor of the class, should be called only by inherited classes.
 | |
|    *
 | |
|    * @param $cas_parent the CASclient instance that creates the current object.
 | |
|    *
 | |
|    * @protected
 | |
|    */
 | |
|   function PGTStorage($cas_parent)
 | |
|     {
 | |
|       phpCAS::traceBegin();
 | |
|       if ( !$cas_parent->isProxy() ) {
 | |
| 	phpCAS::error('defining PGT storage makes no sense when not using a CAS proxy'); 
 | |
|       }
 | |
|       phpCAS::traceEnd();
 | |
|     }
 | |
| 
 | |
|   // ########################################################################
 | |
|   //  DEBUGGING
 | |
|   // ########################################################################
 | |
|   
 | |
|   /**
 | |
|    * This virtual method returns an informational string giving the type of storage
 | |
|    * used by the object (used for debugging purposes).
 | |
|    *
 | |
|    * @public
 | |
|    */
 | |
|   function getStorageType()
 | |
|     {
 | |
|       phpCAS::error(__CLASS__.'::'.__FUNCTION__.'() should never be called'); 
 | |
|     }
 | |
| 
 | |
|   /**
 | |
|    * This virtual method returns an informational string giving informations on the
 | |
|    * parameters of the storage.(used for debugging purposes).
 | |
|    *
 | |
|    * @public
 | |
|    */
 | |
|   function getStorageInfo()
 | |
|     {
 | |
|       phpCAS::error(__CLASS__.'::'.__FUNCTION__.'() should never be called'); 
 | |
|     }
 | |
| 
 | |
|   // ########################################################################
 | |
|   //  ERROR HANDLING
 | |
|   // ########################################################################
 | |
|   
 | |
|   /**
 | |
|    * string used to store an error message. Written by PGTStorage::setErrorMessage(),
 | |
|    * read by PGTStorage::getErrorMessage().
 | |
|    *
 | |
|    * @hideinitializer
 | |
|    * @private
 | |
|    * @deprecated not used.
 | |
|    */
 | |
|   var $_error_message=FALSE;
 | |
| 
 | |
|   /**
 | |
|    * This method sets en error message, which can be read later by 
 | |
|    * PGTStorage::getErrorMessage().
 | |
|    *
 | |
|    * @param $error_message an error message
 | |
|    *
 | |
|    * @protected
 | |
|    * @deprecated not used.
 | |
|    */
 | |
|   function setErrorMessage($error_message)
 | |
|     {
 | |
|       $this->_error_message = $error_message;
 | |
|     }
 | |
| 
 | |
|   /**
 | |
|    * This method returns an error message set by PGTStorage::setErrorMessage().
 | |
|    *
 | |
|    * @return an error message when set by PGTStorage::setErrorMessage(), FALSE
 | |
|    * otherwise.
 | |
|    *
 | |
|    * @public
 | |
|    * @deprecated not used.
 | |
|    */
 | |
|   function getErrorMessage()
 | |
|     {
 | |
|       return $this->_error_message;
 | |
|     }
 | |
| 
 | |
|   // ########################################################################
 | |
|   //  INITIALIZATION
 | |
|   // ########################################################################
 | |
| 
 | |
|   /**
 | |
|    * a boolean telling if the storage has already been initialized. Written by 
 | |
|    * PGTStorage::init(), read by PGTStorage::isInitialized().
 | |
|    *
 | |
|    * @hideinitializer
 | |
|    * @private
 | |
|    */
 | |
|   var $_initialized = FALSE;
 | |
| 
 | |
|   /**
 | |
|    * This method tells if the storage has already been intialized.
 | |
|    *
 | |
|    * @return a boolean
 | |
|    *
 | |
|    * @protected
 | |
|    */
 | |
|   function isInitialized()
 | |
|     {
 | |
|       return $this->_initialized;
 | |
|     }
 | |
| 
 | |
|   /**
 | |
|    * This virtual method initializes the object.
 | |
|    *
 | |
|    * @protected
 | |
|    */
 | |
|   function init()
 | |
|     {
 | |
|       $this->_initialized = TRUE;
 | |
|     }
 | |
| 
 | |
|   // ########################################################################
 | |
|   //  PGT I/O
 | |
|   // ########################################################################
 | |
| 
 | |
|   /**
 | |
|    * This virtual method stores a PGT and its corresponding PGT Iuo.
 | |
|    * @note Should never be called.
 | |
|    *
 | |
|    * @param $pgt the PGT
 | |
|    * @param $pgt_iou the PGT iou
 | |
|    *
 | |
|    * @protected
 | |
|    */
 | |
|   function write($pgt,$pgt_iou)
 | |
|     {
 | |
|       phpCAS::error(__CLASS__.'::'.__FUNCTION__.'() should never be called'); 
 | |
|     }
 | |
| 
 | |
|   /**
 | |
|    * This virtual method reads a PGT corresponding to a PGT Iou and deletes
 | |
|    * the corresponding storage entry.
 | |
|    * @note Should never be called.
 | |
|    *
 | |
|    * @param $pgt_iou the PGT iou
 | |
|    *
 | |
|    * @protected
 | |
|    */
 | |
|   function read($pgt_iou)
 | |
|     {
 | |
|       phpCAS::error(__CLASS__.'::'.__FUNCTION__.'() should never be called'); 
 | |
|     }
 | |
| 
 | |
|   /** @} */
 | |
|   
 | |
| } 
 | |
| 
 | |
| // include specific PGT storage classes
 | |
| include_once(dirname(__FILE__).'/pgt-file.php'); 
 | |
| include_once(dirname(__FILE__).'/pgt-db.php');
 | |
|   
 | |
| ?>
 |