NAME

BeePack - Primitive MsgPack based key value storage

VERSION

version 0.100

SYNOPSIS

  use BeePack;

  # read only opening, error if fail
  my $beepack_ro = BeePack->open('my.bee');
  # read/write opening (with temp file), create if missing
  my $beepack_rw = BeePack->open('my.bee','my.bee.'.$$);

  $beepack_rw->set( key => $value ); # overwrite value

  $beepack_rw->set_integer( key => $value ); # force integer
  $beepack_rw->set_bool( key => $value ); # force bool
  $beepack_rw->set_string( key => $value ); # force stringification
  $beepack_rw->set_nil( 'key' ); # set nil value

  $beepack_rw->set( key => [
    BeePack->true, BeePack->true,
  ]); # array of 2 true bool
  $beepack_rw->set( key => {
    false => BeePack->false,
    true => BeePack->true,
  }); # hash with true and false bool

  $beepack_rw->save; # save changes and reopen

  my $value = $beepack_ro->get('key');

DESCRIPTION

BeePack is made out of the requirement to encapsule small key values and giant binary blobs into a compact file format for exchange and easy update even with the low amount of microcontroller memory.

Technical BeePack is CDB which uses MsgPack for storing the values. We picked MsgPack for the inner storage, to not reinvent the wheel of storing interoperational values (like BeePack generated on a Linux machine with x86 while being read by a microcontroller with ARM).

For simplification we do NOT store several values for a key inside the CDB, which is a capability of CDB

SEE ALSO

CDB::TinyCDB

Data::MessagePack

SUPPORT

IRC

  Join #vonBienenstock on irc.freenode.net. Highlight Getty for fast reaction :).

Repository

  http://github.com/vonBienenstock/p5-beepack
  Pull request and additional contributors are welcome

Issue Tracker

  http://github.com/vonBienenstock/p5-beepack/issues

AUTHOR

Torsten Raudssus <torsten@raudss.us>

COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Torsten Raudssus.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.