Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

kiokudb::util(3pm) [debian man page]

KiokuDB::Util(3pm)					User Contributed Perl Documentation					KiokuDB::Util(3pm)

NAME
KiokuDB::Util - Utility functions for working with KiokuDB SYNOPSIS
use KiokuDB::Util qw(set weak_set); my $set = set(@objects); # create a transient set my $weak = weak_set(@objects); # to avoid circular refs DESCRIPTION
This module provides various helper functions for working with KiokuDB. EXPORTS
dsn_to_backend $dsn, %args Tries to parse $dsn, load the backend and invoke "new" on it. Used by "connect" in KiokuDB and the various command line interfaces. set weak_set Instantiate a Set::Object or Set::Object::Weak from the arguments, and then creates a KiokuDB::Set::Transient with the result. import_yaml $kiokudb, @files_or_dirs Loads YAML files with MooseX::YAML (if given a directory it will be searched recursively for files with a ".yml" extension are) into the specified KiokuDB directory in a single transaction. The YAML files can contain multiple documents, with each document treated as an object. If the YAML file contains a single non blessed array or hash then that structure will be dereferenced as part of the arguments to "insert". Here is an example of an array of objects, and a custom tag alias to ease authoring of the YAML file: %YAML 1.1 %TAG ! !MyFoo:: --- - !User id: foo real_name: Foo Bar email: foo@myfoo.com password: '{cleartext}test123' You can use a hash to specify custom IDs: %YAML 1.1 --- the_id: !Some::Class attr: moose perl v5.12.4 2010-12-19 KiokuDB::Util(3pm)

Check Out this Related Man Page

KiokuDB::Linker(3pm)					User Contributed Perl Documentation				      KiokuDB::Linker(3pm)

NAME
KiokuDB::Linker - Relinks live objects from storage entries SYNOPSIS
# mostly internal DESCRIPTION
The linker reconnects entry data, recreating the connected object graph in memory. The linkage process starts with an ID (or several IDs) to be loaded passed to the "get_or_load_objects" method. This ID will first be searched for in the live object set (KiokuDB::LiveObjects). If the object is already live, then it will be returned as is. If the object is not live, then the corresponding entry is fetched from the backend, and expanded into an actual instance. Expansion consults the KiokuDB::TypeMap using KiokuDB::TypeMap::Resolver, to find the correct typemap entry (see "COLLAPSING STRATEGIES" in KiokuDB::Collapser and KiokuDB::TypeMap), and that is used for the actual expansion. Most of the grunt work is delegated by the entries back to the linker using the "inflate_data" method, which handles circular structures, retrying of tied structures, etc. Inflated objects are registered with KiokuDB::LiveObjects, and get inserted into the current live object scope (KiokuDB::LiveObjects::Scope). The scope's job is to maintain a reference count of at least 1 for any loaded object, until it is destroyed itself. This ensures that weak references are not destroyed prematurely, but allows their use in order to avoid memory leaks. perl v5.12.4 2010-10-11 KiokuDB::Linker(3pm)
Man Page