/**
  * @runInSeparateProcess
  */
 public function testStaticSessionId()
 {
     $context = AgaviContext::getInstance('agavi-session-storage-test::tests-static-session-id');
     $storage = new AgaviSessionStorage();
     $storage->initialize($context);
     $storage->startup();
     $this->assertEquals(session_id(), 'foobar');
 }
 public function initialize(AgaviContext $context, array $parameters = array())
 {
     // initialize the parent
     parent::initialize($context, $parameters);
     $this->host = isset($parameters["host"]) ? $parameters["host"] : 'localhost';
     $this->port = isset($parameters["port"]) ? $parameters["port"] : 11211;
     session_set_save_handler(array(&$this, 'sessionOpen'), array(&$this, 'sessionClose'), array(&$this, 'sessionRead'), array(&$this, 'sessionWrite'), array(&$this, 'sessionDestroy'), array(&$this, 'sessionGC'));
 }
 /**
  * Initialize this Storage.
  *
  * @param      AgaviContext An AgaviContext instance.
  * @param      array        An associative array of initialization parameters.
  *
  * @throws     <b>AgaviInitializationException</b> If an error occurs while
  *                                                 initializing this Storage.
  *
  * @author     Sean Kerr <*****@*****.**>
  * @author     Veikko Mäkinen <*****@*****.**>
  * @since      0.10.0
  */
 public function initialize(AgaviContext $context, array $parameters = array())
 {
     // initialize the parent
     parent::initialize($context, $parameters);
     if (!$this->hasParameter('db_table')) {
         // missing required 'db_table' parameter
         $error = 'Factory configuration file is missing required "db_table" parameter for the Storage category';
         throw new AgaviInitializationException($error);
     }
     // use this object as the session handler
     session_set_save_handler(array($this, 'sessionOpen'), array($this, 'sessionClose'), array($this, 'sessionRead'), array($this, 'sessionWrite'), array($this, 'sessionDestroy'), array($this, 'sessionGC'));
 }
 /**
  * Initialize this Storage.
  *
  * @param      AgaviContext An AgaviContext instance.
  * @param      array        An associative array of initialization parameters.
  *
  * @throws     <b>AgaviInitializationException</b> If an error occurs while
  *                                                 initializing this Storage.
  *
  * @author     David Zülke <david.zuelke@bitextender.com
  * @since      1.0.4
  */
 public function initialize(AgaviContext $context, array $parameters = array())
 {
     // initialize the parent
     parent::initialize($context, $parameters);
     if (!class_exists('Microsoft_WindowsAzure_SessionHandler')) {
         require 'Microsoft/WindowsAzure/SessionHandler.php';
     }
     $table = new Microsoft_WindowsAzure_Storage_Table($this->getParameter('host', Microsoft_WindowsAzure_Storage::URL_DEV_TABLE), $this->getParameter('account_name', Microsoft_WindowsAzure_Credentials::DEVSTORE_ACCOUNT), $this->getParameter('account_key', Microsoft_WindowsAzure_Credentials::DEVSTORE_KEY));
     $sessionHandler = new Microsoft_WindowsAzure_SessionHandler($table, $this->getParameter('session_table', 'phpsessions'), $this->getParameter('session_table_partition', 'sessions'));
     // this will do session_set_save_handler
     $sessionHandler->register();
 }
 public function initialize(AgaviContext $context, array $parameters = array())
 {
     // initialize the parent
     parent::initialize($context, $parameters);
     session_set_save_handler(array(&$this, 'sessionOpen'), array(&$this, 'sessionClose'), array(&$this, 'sessionRead'), array(&$this, 'sessionWrite'), array(&$this, 'sessionDestroy'), array(&$this, 'sessionGC'));
 }