示例#1
0
文件: I18n.php 项目: nurcahyo/juriya
 /**
  * I18n instantiation
  *
  * @param  array  I18n configuration
  * @throws object RuntimeException
  */
 public function __construct($locale = '')
 {
     // Main I18n instance only instantiated once
     if (is_null(static::$instance) && Juriya::getInstance() instanceof Juriya) {
         empty($locale) or self::setLocale($locale);
         $this->lang = new Collection(array_fill_keys(array_keys(self::$iso), NULL));
         $this->getDefaultLocale();
         static::$instance = $this;
     } else {
         throw new \RuntimeException(self::translate('class_already_initialized', __CLASS__));
     }
 }
示例#2
0
 /**
  * Proxy to Juriya executor
  *
  * @return  object  Juriya\Output
  */
 public function execute()
 {
     $this->notify($this);
     return Juriya::getInstance()->execute($this);
 }
示例#3
0
 public function testRequestObserver()
 {
     $config = new Collection();
     $config->set('socket', '\\Juriya\\Controller');
     $config->set('tunnel', 'HMVC');
     $request = new Request($config);
     $observer = new DummyObserver();
     $launcher = Juriya::getInstance();
     $launcher->attach($observer);
     ob_start();
     $launcher->execute($request);
     $this->assertEquals('Dummy observer now receive ' . get_class($launcher), ob_get_clean());
     // Detach Dummy Observer from Launcher
     Juriya::getInstance()->detach(new DummyObserver());
 }