Provided by: libnetsds-perl_1.301-3_all bug

NAME

       NetSDS::Session - memcached based session storage API

SYNOPSIS

               use NetSDS::Session;

               # Connecting to Memcached server
               my $sess = NetSDS::Session->new(
                       host => '12.34.56.78',
                       port => '12345',
               );

               ...

               # Retrieve session key somehow
               $session_key = $cgi->param('sess_key');

               $sess->open($session_key);

               my $filter = $sess->get('filter');
               ...
               $sess->set('filter', $new_filter);
               ...
               $sess->close();

               1;

DESCRIPTION

       "NetSDS::Session" module provides API to session data storage based on Memcached server.

       Each session represented as hash reference structure identified by UUID string.  Most
       reasonable usage of this module is a temporary data storing for web based GUI between HTTP
       requests. However it's possible to find some other tasks.

       Internally session structure is transformed to/from JSON string when interacting with
       Memcached.

CLASS API

       new(%params) - class constructor
           Constructor establish connection to memcached server and set default session
           parameters.

           Parameters:

                   * host - memcached server hostname or IP address (default: 127.0.0.1)
                   * port - memcached server TCP port (default: 11211)

           Example:

                   my $sess_hdl = NetSDS::Session->new(
                           host => '12.34.56.78',
                           port => '99999',
                   );

       open($sess_id) - open session
           Retrieve session data from server by session key (UUID string)

           If no session exists then empty hashref is returned.

       id() - get session id
           Returns current session id.

           Example:

                   my $sess_id = $sess->id();

       set($key, $value) - set session parameter
           Set new session parameter value identified by it's key.

           Example:

                   $sess->set('order', 'id desc');

       get($key) - get session parameter
           Return session parameter value by it's key.

           Example:

                   my $order = $sess->get('order');

       delete($key) - delete session parameter by key
           Delete session parameter by it's key.

           Returns updated session data as hash reference.

           Example:

                   $sess->delete('order');

       clear() - clear session data
           This method clears all session data.

           Example:

                   $sess->clear();

       sync() - save session
           Synchronize session data on Memcached server.

           Example:

                   $sess->sync();

       close() - save and close session
           This method save all data to server and clear current session id and data from object.

           Example:

                   $session->close();

SEE ALSO

       ·   Cache::Memcached::Fast - XS implementation of Memcached API

       ·   JSON - JSON encoding/decoding API

AUTHORS

       Michael Bochkaryov <misha@rattler.kiev.ua>

THANKS

       Yana Kornienko - for initial module implementation

LICENSE

       Copyright (C) 2008-2009 Net Style Ltd.

       This program is free software; you can redistribute it and/or modify it under the terms of
       the GNU General Public License as published by the Free Software Foundation; either
       version 2 of the License, or (at your option) any later version.

       This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
       without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
       See the GNU General Public License for more details.

       You should have received a copy of the GNU General Public License along with this program;
       if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
       MA  02111-1307  USA