13 * obtain it through the world-wide-web, please send an email |
13 * obtain it through the world-wide-web, please send an email |
14 * to license@zend.com so we can send you a copy immediately. |
14 * to license@zend.com so we can send you a copy immediately. |
15 * |
15 * |
16 * @category Zend |
16 * @category Zend |
17 * @package Zend_Session |
17 * @package Zend_Session |
18 * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) |
18 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) |
19 * @license http://framework.zend.com/license/new-bsd New BSD License |
19 * @license http://framework.zend.com/license/new-bsd New BSD License |
20 * @version $Id: Session.php 25121 2012-11-13 21:51:23Z matthew $ |
20 * @version $Id$ |
21 * @since Preview Release 0.2 |
21 * @since Preview Release 0.2 |
22 */ |
22 */ |
23 |
23 |
24 |
24 |
25 /** |
25 /** |
257 |
257 |
258 /** |
258 /** |
259 * setSaveHandler() - Session Save Handler assignment |
259 * setSaveHandler() - Session Save Handler assignment |
260 * |
260 * |
261 * @param Zend_Session_SaveHandler_Interface $interface |
261 * @param Zend_Session_SaveHandler_Interface $interface |
|
262 * @throws Zend_Session_Exception When the session_set_save_handler call fails |
262 * @return void |
263 * @return void |
263 */ |
264 */ |
264 public static function setSaveHandler(Zend_Session_SaveHandler_Interface $saveHandler) |
265 public static function setSaveHandler(Zend_Session_SaveHandler_Interface $saveHandler) |
265 { |
266 { |
266 self::$_saveHandler = $saveHandler; |
267 self::$_saveHandler = $saveHandler; |
267 |
268 |
268 if (self::$_unitTestEnabled) { |
269 if (self::$_unitTestEnabled) { |
269 return; |
270 return; |
270 } |
271 } |
271 |
272 |
272 session_set_save_handler( |
273 $result = session_set_save_handler( |
273 array(&$saveHandler, 'open'), |
274 array(&$saveHandler, 'open'), |
274 array(&$saveHandler, 'close'), |
275 array(&$saveHandler, 'close'), |
275 array(&$saveHandler, 'read'), |
276 array(&$saveHandler, 'read'), |
276 array(&$saveHandler, 'write'), |
277 array(&$saveHandler, 'write'), |
277 array(&$saveHandler, 'destroy'), |
278 array(&$saveHandler, 'destroy'), |
278 array(&$saveHandler, 'gc') |
279 array(&$saveHandler, 'gc') |
279 ); |
280 ); |
|
281 |
|
282 if (!$result) { |
|
283 throw new Zend_Session_Exception('Unable to set session handler'); |
|
284 } |
280 } |
285 } |
281 |
286 |
282 |
287 |
283 /** |
288 /** |
284 * getSaveHandler() - Get the session Save Handler |
289 * getSaveHandler() - Get the session Save Handler |