importing MooseX-Storage alpha cut (take 2)
[gitmo/MooseX-Storage.git] / lib / MooseX / Storage / JSON.pm
CommitLineData
e59193fb 1
2package MooseX::Storage::JSON;
3use Moose::Role;
4
5with 'MooseX::Storage::Base';
6
7use JSON::Syck;
8use MooseX::Storage::Engine;
9
10has '_storage' => (
11 is => 'ro',
12 isa => 'MooseX::Storage::Engine',
13 default => sub {
14 my $self = shift;
15 warn "Building Storage Engine\n";
16 MooseX::Storage::Engine->new(object => $self);
17 },
18 handles => {
19 'pack' => 'collapse_object',
20 # unpack here ...
21 }
22);
23
24sub load {}
25sub store {}
26sub thaw {}
27
28sub freeze {
29 my $self = shift;
30 JSON::Syck::Dump($self->pack());
31}
32
33
341;
35__END__