require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
-class Session extends Memcached_DataObject
+class Session extends Managed_DataObject
{
###START_AUTOCODE
/* the code below is auto generated do not remove the above tag */
public $created; // datetime() not_null
public $modified; // timestamp() not_null default_CURRENT_TIMESTAMP
- /* Static get */
- function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('Session',$k,$v); }
-
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
+ public static function schemaDef()
+ {
+ return array(
+ 'fields' => array(
+ 'id' => array('type' => 'varchar', 'length' => 32, 'not null' => true, 'description' => 'session ID'),
+ 'session_data' => array('type' => 'text', 'description' => 'session data'),
+ 'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date this record was created'),
+ 'modified' => array('type' => 'timestamp', 'not null' => true, 'description' => 'date this record was modified'),
+ ),
+ 'primary key' => array('id'),
+ 'indexes' => array(
+ 'session_modified_idx' => array('modified'),
+ ),
+ );
+ }
+
static function logdeb($msg)
{
if (common_config('sessions', 'debug')) {
{
self::logdeb("Fetching session '$id'");
- $session = Session::staticGet('id', $id);
+ $session = Session::getKV('id', $id);
if (empty($session)) {
self::logdeb("Couldn't find '$id'");
{
self::logdeb("Writing session '$id'");
- $session = Session::staticGet('id', $id);
+ $session = Session::getKV('id', $id);
if (empty($session)) {
self::logdeb("'$id' doesn't yet exist; inserting.");
$session->id = $id;
$session->session_data = $session_data;
$session->created = common_sql_now();
- $session->modified = common_sql_now();
$result = $session->insert();
$orig = clone($session);
$session->session_data = $session_data;
- $session->modified = common_sql_now();
$result = $session->update($orig);
{
self::logdeb("Deleting session $id");
- $session = Session::staticGet('id', $id);
+ $session = Session::getKV('id', $id);
if (empty($session)) {
self::logdeb("Can't find '$id' to delete.");