/**
  * @expectedException InvalidArgumentException
  */
 public function testSetOptionsThrowsExceptionOnInvalidKey()
 {
     $badKey = 'snarfblat';
     $value = 'foobar';
     $this->config->setStorageOption($badKey, $value);
 }
示例#2
0
文件: Module.php 项目: gotcms/gotcms
 /**
  * Initialize Session data
  *
  * @param ServiceManager $serviceManager Service manager
  * @param DbAdapter      $dbAdapter      Database adapter
  *
  * @return void
  */
 public function initSession(ServiceManager $serviceManager, DbAdapter $dbAdapter)
 {
     $coreConfig = $serviceManager->get('CoreConfig');
     $sessionConfig = new SessionConfig();
     $sessionConfig->setStorageOption('gc_probability', 1);
     $sessionConfig->setStorageOption('gc_divisor', 100);
     $sessionConfig->setStorageOption('save_path', $coreConfig->getValue('session_path'));
     $sessionConfig->setStorageOption('gc_maxlifetime', $coreConfig->getValue('session_lifetime'));
     $sessionConfig->setStorageOption('cookie_path', $coreConfig->getValue('cookie_path'));
     $sessionConfig->setStorageOption('cookie_domain', $coreConfig->getValue('cookie_domain'));
     $sessionManager = new SessionManager($sessionConfig);
     SessionContainer::setDefaultManager($sessionManager);
     if ($coreConfig->getValue('session_handler') == CoreConfig::SESSION_DATABASE) {
         $tablegatewayConfig = new DbTableGatewayOptions(array('idColumn' => 'id', 'nameColumn' => 'name', 'modifiedColumn' => 'updated_at', 'lifetimeColumn' => 'lifetime', 'dataColumn' => 'data'));
         $sessionTable = new SessionTableGateway(new TableGateway('core_session', $dbAdapter), $tablegatewayConfig);
         $sessionManager->setSaveHandler($sessionTable);
     }
     $sessionManager->start();
 }