
DBIx::NoSQL::Store::Manager - DBIx::NoSQL as a Moose object store

version 0.1.1

package MyStore;
use Moose;
extends 'DBIx::NoSQL::Store::Manager';
__PACKAGE__->meta->make_immutable;

Just like DBIx::NoSQL is a layer providing the flexibility of a NoSQL store on top of DBIx::Class, DBIx::NoSQL::Store::Manager provides a mechanism to drop and retrieve Moose objects from that store.
As can be seen in the "SYNOPSIS", the store class itself is typically fairly bare; most of the work is done by DBIx::NoSQL::Store::Manager::Model, the role the models (i.e., the classes to be stored in the database) must consume.
DBIx::NoSQL::Store::Manager extends DBIx::NoSQL and inherits all its methods.

Creates a new store manager.
Classes to be imported as models for the store. Namespaces can also be given with a trailing ::, in which case all modules found under that namespace will be imported. If only one class is to be used, it can be passed as a single string.
If not given, defaults to the Model sub-namespace under the store's (e.g., for store class MyStore, that would be MyStore::Model::).
my $store = MyStore->new;
# will import MyStore::Model::*
my $store = MyStore->new( models => [ 'Foo::Bar', 'Something::Else' ] );
# imports specific classes
my $store = MyStore->new( models => [ 'Foo::Bar', 'MyStore::Model::' ] );
# imports Foo::Bar and all classes under MyStore::Model::*
Returns the name of all models known to the store.
Returns the full class name of all models known to the store.
Returns the full class name of the given model.
Shortcut constructor for a model class of the store. Equivalent to
my $class = $store->model_class( $model_name );
my $thingy = $class->new( store_db => $store, @args );

* Original blog entry introducing the module: http://babyl.dyndns.org/techblog/entry/shaving-the-white-whale
* KiokuDB

Yanick Champoux <yanick@babyl.dyndns.org>

This software is copyright (c) 2012 by Yanick Champoux.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.