Exemple #1
0
 /**
  * メッセージIDを取得します。
  *
  * @param IContext $storage コンテキストに備えられているワーク領域。
  * @return integer メッセージID。
  */
 private static function innerGetMessageId(array $storage = null)
 {
     if (!is_null($storage) && isset($storage[Constants::DATA_MESSAGE_ID])) {
         return $storage[Constants::DATA_MESSAGE_ID];
     }
     $rest = Environment::getRestParams();
     if (count($rest) >= 2 && $rest[0] == 'error' && is_numeric($rest[1])) {
         return intval($rest[1]);
     }
     return self::DEFAULT_STATUS;
 }
 /**
  * コンテキストに状態が適用されている間、 IContext.phase()
  * メソッドを実行することで、このメソッドが呼び出されます。
  *
  * @param IContext $context コンテキスト。
  */
 public function phase(IContext $context)
 {
     $rest = Environment::getRestParams();
     $entry = count($rest) === 0 ? Constants::REST_MESSAGE : $rest[0];
     $context->setNextState(include self::getPath($entry));
 }
 /** 現在のRESTパラメータが取得できている */
 protected function validateRestParams(array &$world, array $arguments)
 {
     $this->assertEquals(1, count($arguments), '引数は 1 つ必要');
     $this->assertEquals($arguments[0], Environment::getRestParams(), '現在のRESTパラメータが取得できている');
 }
Exemple #4
0
 /**
  * ワーク領域に保存されたデータを基にXMLを作成します。
  *
  * @param array $storage コンテキストのワーク配列。
  * @return string XML文書。
  */
 public function createXmlFromStorage(array $storage)
 {
     $msg = $storage[Constants::DATA_MESSAGE_BODY];
     $query = 'Unity落ちた';
     $result = !$storage[Constants::DATA_MESSAGE_ERROR];
     $dynamic = count(Environment::getRestParams()) > 0;
     $lang = 'ja';
     return $this->createXml($msg, $query, $result, $dynamic, $lang);
 }