KiokuDB::Backend::Serialize::JSPON - JSPON serialization helper


KiokuDB documentation Contained in the KiokuDB distribution.

Index


Code Index:

NAME

Top

KiokuDB::Backend::Serialize::JSPON - JSPON serialization helper

SYNOPSIS

Top

    with qw(KiokuDB::Backend::Serialize::JSPON);

DESCRIPTION

Top

This serialization role provides JSPON semantics for KiokuDB::Entry and KiokuDB::Reference objects.

For serialization to JSON strings see KiokuDB::Backend::Serialize::JSON.

METHODS

Top

expand_jspon

See expand_jspon in KiokuDB::Backend::Serialize::JSPON::Expander

collapse_jspon

See collapse_jspon in KiokuDB::Backend::Serialize::JSPON::Collapser


KiokuDB documentation Contained in the KiokuDB distribution.

#!/usr/bin/perl

package KiokuDB::Backend::Serialize::JSPON;
use Moose::Role;

use KiokuDB::Backend::Serialize::JSPON::Expander;
use KiokuDB::Backend::Serialize::JSPON::Collapser;

use namespace::clean -except => 'meta';

with qw(
    KiokuDB::Backend::TypeMap::Default::JSON
    KiokuDB::Backend::Serialize::JSPON::Converter
);

has expander => (
    isa => "KiokuDB::Backend::Serialize::JSPON::Expander",
    is  => "rw",
    lazy_build => 1,
    handles => [qw(expand_jspon)],
);

sub _build_expander {
    my $self = shift;

    KiokuDB::Backend::Serialize::JSPON::Expander->new($self->_jspon_params);
}

has collapser => (
    isa => "KiokuDB::Backend::Serialize::JSPON::Collapser",
    is  => "rw",
    lazy_build => 1,
    handles => [qw(collapse_jspon)],
);

sub _build_collapser {
    my $self = shift;

    KiokuDB::Backend::Serialize::JSPON::Collapser->new($self->_jspon_params);
}

__PACKAGE__

__END__