abstract class SessionProxy_Storage_Base in Session Proxy 7
Hierarchy
- class \SessionProxy_Storage_Base implements SessionProxy_Storage_Interface
Expanded class hierarchy of SessionProxy_Storage_Base
File
- lib/
SessionProxy/ Storage/ Base.php, line 3
View source
abstract class SessionProxy_Storage_Base implements SessionProxy_Storage_Interface {
/**
* @var array
*/
protected $options;
/**
* @var bool
*/
protected $isHttps;
/**
* @var string
*/
protected $sessionName;
/**
* @var string
*/
protected $sessionNameUnsecure;
/**
* @var string
*/
protected $lastReadSessionId = NULL;
/**
* @var string
*/
protected $lastReadValueHash = NULL;
/**
* @var int
*/
protected $uid = NULL;
/**
* @var int
*/
protected $uidHasChanged = FALSE;
/**
* Call this function at read time, it will allow you to check if the session
* has changed or not and write it accordingly.
*
* @param string $sessionId
* @param string $serializedData
*/
protected function sessionDataSetHash($sessionId, $serializedData) {
$this->lastReadSessionId = $sessionId;
$this->lastReadValueHash = md5($serializedData);
}
/**
* Does the session data has changed.
*
* @param string $sessionId
* @param string $serializedData
*/
protected function sessionDataHasChanged($sessionId, $serializedData) {
global $user;
return $this->uidHasChanged || $this->lastReadSessionId != $sessionId || md5($serializedData) != $this->lastReadValueHash || REQUEST_TIME - $user->timestamp > variable_get('session_write_interval', 180);
}
public function getSessionUid() {
return $this->uid;
}
public function setSessionUid($uid) {
$this->uidHasChanged = $this->uid != $uid;
$this->uid = $uid;
}
public function __construct(array $options = array()) {
global $is_https;
$this->sessionName = session_name();
$this->isHttps = $is_https;
$this->options = $options;
}
}