Анатолий Гришаев

NAME

Storable::AMF3 - Perl extension for serialize/deserialize AMF3 data

SYNOPSIS

  use Storable::AMF3 qw(freeze thaw); 

  $amf3 = freeze($perl_object);
  $perl_object = thaw($amf3);

        
  # Store/retrieve to disk amf3 data
        
  store $perl_object, 'file';
  $restored_perl_object = retrieve 'file';


  use Storable::AMF3 qw(nstore freeze thaw dclone);

  # Network order: Due to spec of AMF3 format objects (hash, arrayref) stored in network order.
  # and thus nstore and store are synonyms 

  nstore \%table, 'file';
  $hashref = retrieve('file'); 

  
  # Advisory locking
  use Storable::AMF3 qw(lock_store lock_nstore lock_retrieve)
  lock_store \%table, 'file';
  lock_nstore \%table, 'file';
  $hashref = lock_retrieve('file');

DESCRIPTION

This module is (de)serializer for Adobe's AMF3 (Action Message Format ver 3). This is only module and it recognize only AMF data. Almost all function implemented in C for speed. And some cases faster then Storable( for me always)

EXPORT

  None by default.

FUNCTIONS

freeze($obj) --- Serialize perl object($obj) to AMF, and return AMF data
thaw($amf3) --- Deserialize AMF data to perl object, and return the perl object
store $obj, $file --- Store serialized AMF3 data to file
nstore $obj, $file --- Same as store
retrieve $obj, $file --- Retrieve serialized AMF3 data from file
lock_store $obj, $file --- Same as store but with Advisory locking
lock_nstore $obj, $file --- Same as lock_store
lock_retrieve $file --- Same as retrieve but with advisory locking
dclone $file --- Deep cloning data structure

NOTICE

  Storable::AMF is currently is alpha development stage. 

LIMITATION

At current moment and with restriction of AMF3 format referrences to scalar are not serialized, and BigEndian machines are not supported, and can't/ may not serialize tied variables.

SEE ALSO

Data::AMF, Storable, Storable::AMF3

AUTHOR

Anatoliy Grishaev, <grian at cpan dot org>

COPYRIGHT AND LICENSE

Copyright (C) 2008 by A. G. Grishaev

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.