예제 #1
0
 /**
  * 初期化.最初に呼び出してください.
  *
  * @param array $options
  */
 public static function __init($options = array())
 {
     $propfile = $options[0];
     Logger::configure(LIBRARY_PATH . '/etc/' . $propfile);
     // === MDC (_mapped diagnostic contexts_) 設定
     // ※ log4php.appender.{appender_name}.layout.conversionPattern で、'%X{ADDR}' のようにして参照可能
     // http://logging.apache.org/log4php/apidocs/class-LoggerMDC.html
     LoggerMDC::put('ADDR', isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '-');
     LoggerMDC::put('HOST', isset($_SERVER['REMOTE_HOST']) ? $_SERVER['REMOTE_HOST'] : '-');
     // === ロガー取得
     self::$default_logger = Logger::getLogger('DefaultLogger');
     self::$initialized = true;
 }
예제 #2
0
 protected function process($argRestSampleRequest)
 {
     ApiLogger::trace("RestSample#process start : ");
     /*
      * 複数台のサーバがある場合は,セッション情報は DB に格納
      * かつセッションidはワンタイムにする
      */
     if (isset($_SESSION[Constant::$SESSION_ID])) {
         unset($_SESSION[Constant::$SESSION_ID]);
     }
     $cookieSession = new CookieSession();
     $cookieSession->setUserId("hoge");
     $cookieSession->setLang("ja");
     $cookieSession->setSessionToken("");
     $_SESSION[Constant::$SESSION_ID] = $cookieSession;
     ApiLogger::debug("Session installed.");
     $restSampleResponse = new RestSampleResponse();
     ApiLogger::debug("RestSample#process end");
     return $restSampleResponse;
 }
예제 #3
0
<?php

/**
 * Created by IntelliJ IDEA.
 * User: tueda
 * Date: 15/09/10
 * Time: 11:18
 */
include_once __DIR__ . "/env.php";
require_once LIBRARY_PATH . "/etc/ApiConfig.php";
require_once LIBRARY_PATH . "/common/ClassLoader.php";
ClassLoader::addPath(array(LIBRARY_PATH . '/' . ApiConfig::$API_ETC, LIBRARY_PATH . '/' . ApiConfig::$API_COMMON, LIBRARY_PATH . '/' . ApiConfig::$API_ABST, LIBRARY_PATH . '/' . ApiConfig::$API_OBJECTS, LIBRARY_PATH . '/' . ApiConfig::$API_IMPLE, LIBRARY_PATH . '/' . ApiConfig::$LOG4PHP_DIR));
spl_autoload_register(array('ClassLoader', '_autoLoad'));
ApiLogger::__init(array('log4php.properties'));
try {
    $strApi = $_GET["api"];
    $api = new $strApi();
    $api->action();
} catch (Exception $e) {
    ApiLogger::fatal($e);
}
예제 #4
0
 /**
  * JSON文字列で渡されたパラメータをPHP オブジェクトに変換して返します<br>
  * POSTパラメータに data が無い場合や JSON 文字列が不正な場合には null を返します.
  */
 protected final function getParamsObject()
 {
     ApiLogger::trace("getParamsObject: start");
     if (!array_key_exists('data', $_POST)) {
         ApiLogger::debug("getParamsObject: NO DATA!!!");
         return null;
     }
     $jsonString = $_POST["data"];
     ApiLogger::debug("getParamsObject: Request json = " . $jsonString);
     return self::regularizeRequest(json_decode($jsonString), $this->getRequestId());
 }