Source for file Cachemanager.php

Documentation is available at Cachemanager.php

  1. <?php
  2. // vim: foldmethod=marker tabstop=4 shiftwidth=4 autoindent
  3. /**
  4.  *  Cachemanager.php
  5.  *
  6.  *  @author     Masaki Fujimoto <fujimoto@php.net>
  7.  *  @license    http://www.opensource.org/licenses/bsd-license.php The BSD License
  8.  *  @package    Ethna
  9.  *  @version    $Id: ac49c11a2da714f9426a4c4fb80dc190ec8a9de1 $
  10.  */
  11.  
  12. /**
  13.  *  キャッシュマネージャプラグインクラス
  14.  *
  15.  *  @author     Masaki Fujimoto <fujimoto@php.net>
  16.  *  @access     public
  17.  *  @package    Ethna
  18.  */
  19. {
  20.     /**#@+  @access private */
  21.  
  22.     /** @var    string  現在のネームスペース */
  23.     protected $namespace = '';
  24.  
  25.     /**#@-*/
  26.  
  27.     /**
  28.      *  _load
  29.      *
  30.      *  @access protected
  31.      */
  32.     protected function _load()
  33.     {
  34.         if (isset($this->config['namespace'])) {
  35.             $this->namespace = $this->config['namespace'];
  36.         }
  37.     }
  38.  
  39.     /**
  40.      *  キャッシュネームスペースを取得する
  41.      *
  42.      *  @access public
  43.      *  @return string  現在のキャッシュネームスペース
  44.      */
  45.     public function getNamespace($namespace null)
  46.     {
  47.         if ($namespace === null{
  48.             return $this->namespace;
  49.         }
  50.         else {
  51.             return $namespace;
  52.         }
  53.     }
  54.  
  55.     /**
  56.      *  キャッシュネームスペースを設定する
  57.      *
  58.      *  @access public
  59.      *  @param  string  $namespace  ネームスペース
  60.      */
  61.     public function setNamespace($namespace)
  62.     {
  63.         $this->namespace = $namespace;
  64.     }
  65.  
  66.     /**
  67.      *  キャッシュに設定された値を取得する
  68.      *
  69.      *  キャッシュに値が設定されている場合はキャッシュ値
  70.      *  が戻り値となる。キャッシュに値が無い場合やlifetime
  71.      *  を過ぎている場合、エラーが発生した場合はEthna_Error
  72.      *  オブジェクトが戻り値となる。
  73.      *
  74.      *  @access public
  75.      *  @param  string  $key        キャッシュキー
  76.      *  @param  int     $lifetime   キャッシュ有効期間
  77.      *  @param  string  $namespace  キャッシュネームスペース
  78.      *  @return mixed   キャッシュ値
  79.      */
  80.     public function get($key$lifetime null$namespace null)
  81.     {
  82.     }
  83.  
  84.     /**
  85.      *  キャッシュの最終更新日時を取得する
  86.      *
  87.      *  @access public
  88.      *  @param  string  $key        キャッシュキー
  89.      *  @param  string  $namespace  キャッシュネームスペース
  90.      *  @return int     最終更新日時(unixtime)
  91.      */
  92.     public function getLastModified($key$namespace null)
  93.     {
  94.     }
  95.  
  96.     /**
  97.      *  キャッシュに値を設定する
  98.      *
  99.      *  @access public
  100.      *  @param  string  $key        キャッシュキー
  101.      *  @param  mixed   $value      キャッシュ値
  102.      *  @param  int     $timestamp  キャッシュ最終更新時刻(unixtime)
  103.      *  @param  string  $namespace  キャッシュネームスペース
  104.      */
  105.     public function set($key$value$timestamp null$namespace null)
  106.     {
  107.     }
  108.  
  109.     /**
  110.      *  値がキャッシュされているかどうかを取得する
  111.      *
  112.      *  @access public
  113.      *  @param  string  $key        キャッシュキー
  114.      *  @param  int     $lifetime   キャッシュ有効期間
  115.      *  @param  string  $namespace  キャッシュネームスペース
  116.      */
  117.     public function isCached($key$timestamp null$namespace null)
  118.     {
  119.     }
  120.  
  121.     /**
  122.      *  キャッシュから値を削除する
  123.      *
  124.      *  @access public
  125.      *  @param  string  $key        キャッシュキー
  126.      *  @param  string  $namespace  キャッシュネームスペース
  127.      */
  128.     public function clear($key$namespace null)
  129.     {
  130.     }
  131.  
  132.     /**
  133.      *  キャッシュデータをロックする
  134.      *
  135.      *  @access public
  136.      *  @param  string  $key        キャッシュキー
  137.      *  @param  int     $timeout    ロックタイムアウト
  138.      *  @param  string  $namespace  キャッシュネームスペース
  139.      *  @return bool    true:成功 false:失敗
  140.      */
  141.     public function lock($key$timeout 5$namespace null)
  142.     {
  143.         return false;
  144.     }
  145.  
  146.     /**
  147.      *  キャッシュデータのロックを解除する
  148.      *
  149.      *  @access public
  150.      *  @param  string  $key        キャッシュキー
  151.      *  @param  string  $namespace  キャッシュネームスペース
  152.      *  @return bool    true:成功 false:失敗
  153.      */
  154.     public function unlock($key$namespace null)
  155.     {
  156.         return false;
  157.     }
  158.  
  159.     /**
  160.      * 圧縮フラグを立てる
  161.      *
  162.      * MySQLなどいくつかの子クラスで有効
  163.      * 
  164.      * @access public
  165.      * @param bool $flag フラグ
  166.      */
  167.     public function setCompress($flag{
  168.         return false;
  169.     }
  170. }

Documentation generated on Fri, 11 Nov 2011 03:57:43 +0900 by phpDocumentor 1.4.3