Data-ObjectStore
view release on metacpan or search on metacpan
2 -
requires store update
The update now updates into a seperate directory.
use the new transactions of the recordstore which may nest.
added the following methods to the Data::ObjectStore :
* lock( @locknames ) - uses flock to lock those lock names
* unlock - unlocks all locks this store has locked
added the following methods to the Data::ObjectStore::Container :
* vol( key, value ) - gets/sets a keyed volatile value which is not saved
* lock( @locknames ) - uses flock to lock those lock names. convenience, just calls the store's method
* unlock - unlocks all locks this store has locked. convenience, just calls the store's method
added a METADATA field to the objects which contains
* created time
* updated time
* connections - number of connections this has to the root
* backconnections - { id => count } of items connected to this
the class plus the metadata fields are joined by | and ended by a
space. Together, they make the head descriptor of the object.
big arrays and hashes
lib/Data/ObjectStore.pm view on Meta::CPAN
Returns the timestamp the given object was created.
Returns the last time this store was updated.
=head2 lock( @names )
Adds an advisory (flock) lock for each of the unique names given.
=head2 unlock()
Unlocks all names locked by this thread
=head2 sync()
Asks the data provider to sync to persistance.
=head1 SUBCLASSING
Blessed objects must be a subclass of Data::ObjectStore::Container
in order to be able to be stored in the object store. _init and _load
can be useful to override.
lib/Data/ObjectStore.pm view on Meta::CPAN
Returns the Data::ObjectStore that created this object.
=head2 lock( @names )
Adds an advisory (flock) lock for each of the unique names given.
This may not be called twice in a row without an unlock in between.
=head2 unlock
Unlocks all names locked by this thread
=head2 _init
This is called the first time an object is created. It is not
called when the object is loaded from storage. This can be used
to set up defaults. This is meant to be overridden.
=cut
=head2 _load
( run in 0.793 second using v1.01-cache-2.11-cpan-49f99fa48dc )