package Data::Session::Serialize::JSON;
use parent 'Data::Session::Base';
no autovivification;
use strict;
use warnings;
use JSON;
our $VERSION = '1.18';
# ----------------------------------------
-------
sub freeze
{
my($self, $data) = @_;
return JSON -> new -> encode($data);
} # End of freeze.
# -----------------------------------------------
sub new
{
my($class) = @_;
return bless(
$data) = @_;
return JSON -> new -> decode($data);
} # End of thaw.
# -----------------------------------------------
1;
=pod
=head1 NAME
L<Data::Session::Serialize::JSON> - A persistent sessi
a::Session::ID::UUID16> or UUID34 or UUID36 or UUD64
=back
=head1 JSON
L<Data::Session::Serialize::JSON> uses L<JSON>, not L<JSON::Syck>.
=head2 Managing Object Attributes
The light-weight L<Hash
alize::FreezeThaw>
=item o CGI::Session::Serialize::json becomes L<Data::Session::Serialize::JSON>
The latter will use L<JSON>. In the past L<JSON::Syck> was used.
=item o CGI::Session::Serialize::
= $q -> param($name);
my($dir_name) = '/tmp';
my($type) = 'driver:File;id:MD5;serialize:JSON';
my($session) = Data::Session -> new
(
directory => $dir_name,
name => $name,
quer
ons.
See L<Data::Session::Serialize::FreezeThaw>.
=item o JSON
Use L<JSON> to freeze/thaw sessions.
See L<Data::Session::Serialize::JSON>.
=item o Storable
Use L<Storable> to freeze/thaw session
DataDumper>
=item o L<Data::Session::Serialize::FreezeThaw>
=item o L<Data::Session::Serialize::JSON>
=item o L<Data::Session::Serialize::Storable>
Warning: Storable should be avoided until this p