當前位置: 首頁>>代碼示例>>PHP>>正文


PHP ZPush::stateMachine方法代碼示例

本文整理匯總了PHP中ZPush::stateMachine方法的典型用法代碼示例。如果您正苦於以下問題:PHP ZPush::stateMachine方法的具體用法?PHP ZPush::stateMachine怎麽用?PHP ZPush::stateMachine使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在ZPush的用法示例。


在下文中一共展示了ZPush::stateMachine方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: GetStateMachine

 /**
  * Returns the StateMachine object
  * which has to be an IStateMachine implementation
  *
  * @access public
  * @throws FatalNotImplementedException
  * @throws HTTPReturnCodeException
  * @return object   implementation of IStateMachine
  */
 public static function GetStateMachine()
 {
     if (!isset(ZPush::$stateMachine)) {
         // the backend could also return an own IStateMachine implementation
         $backendStateMachine = self::GetBackend()->GetStateMachine();
         // if false is returned, use the default StateMachine
         if ($backendStateMachine !== false) {
             ZLog::Write(LOGLEVEL_DEBUG, "Backend implementation of IStateMachine: " . get_class($backendStateMachine));
             if (in_array('IStateMachine', class_implements($backendStateMachine))) {
                 ZPush::$stateMachine = $backendStateMachine;
             } else {
                 throw new FatalNotImplementedException("State machine returned by the backend does not implement the IStateMachine interface!");
             }
         } else {
             // Initialize the default StateMachine
             if (defined('STATE_MACHINE') && STATE_MACHINE == 'SQL') {
                 ZPush::$stateMachine = new SqlStateMachine();
             } else {
                 ZPush::$stateMachine = new FileStateMachine();
             }
         }
         if (ZPush::$stateMachine->GetStateVersion() !== ZPush::GetLatestStateVersion()) {
             if (class_exists("TopCollector")) {
                 self::GetTopCollector()->AnnounceInformation("Run migration script!", true);
             }
             throw new HTTPReturnCodeException(sprintf("The state version available to the %s is not the latest version - please run the state upgrade script. See release notes for more information.", get_class(ZPush::$stateMachine)), HTTP_CODE_500);
         }
     }
     return ZPush::$stateMachine;
 }
開發者ID:inkoss,項目名稱:karoshi-server,代碼行數:39,代碼來源:zpush.php

示例2: GetStateMachine

 /**
  * Returns the StateMachine object
  * which has to be an IStateMachine implementation
  *
  * @access public
  * @return object   implementation of IStateMachine
  * @throws FatalNotImplementedException
  */
 public static function GetStateMachine()
 {
     if (!isset(ZPush::$stateMachine)) {
         // the backend could also return an own IStateMachine implementation
         $backendStateMachine = self::GetBackend()->GetStateMachine();
         // if false is returned, use the default StateMachine
         if ($backendStateMachine !== false) {
             ZLog::Write(LOGLEVEL_DEBUG, "Backend implementation of IStateMachine: " . get_class($backendStateMachine));
             if (in_array('IStateMachine', class_implements($backendStateMachine))) {
                 ZPush::$stateMachine = $backendStateMachine;
             } else {
                 throw new FatalNotImplementedException("State machine returned by the backend does not implement the IStateMachine interface!");
             }
         } else {
             // Initialize the default StateMachine
             include_once 'lib/default/filestatemachine.php';
             ZPush::$stateMachine = new FileStateMachine();
         }
     }
     return ZPush::$stateMachine;
 }
開發者ID:BackupTheBerlios,項目名稱:z-push-svn,代碼行數:29,代碼來源:zpush.php


注:本文中的ZPush::stateMachine方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。