NAME Archive::Any::Create - Abstract API to create archives (tar.gz and zip) SYNOPSIS use Archive::Any::Create; my $archive = Archive::Any::Create->new; $archive->container('foo'); # top-level directory $archive->add_file('bar.txt', $data); # foo/bar.txt $archive->add_file('bar/baz.txt', $data); # foo/bar/baz.txt $archive->write_file('foo.tar.gz'); $archive->write_file('foo.zip'); $archive->write_filehandle(\*STDOUT, 'tar.gz'); DESCRIPTION Archive::Any::Create is a wrapper module to create tar/tar.gz/zip files with a single easy-to-use API. METHODS new Create new Archive::Any::Create object. No parameters. container($dir) Specify a top-level directory (or folder) to contain multiple files. Not necessary but recommended to create a good-manner archive file. add_file($file, $data) Add a file that contains $data as its content. $file can be a file in the nested subdirectory. write_file($filename) Write an archive file named $filename. This method is DWIMmy, in the sense that it automatically dispatches archiving module based on its filename. So, "$archive->write_file("foo.tar.gz")" will create a tarball and "$archive->write_file("foo.zip")" will create a zip file with the same contents. write_filehandle($fh, $format) Write an archive data stream into filehandle. $format is either, *tar*, *tar.gz* or *zip*. AUTHOR Tatsuhiko Miyagawa This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO Archive::Any, Archive::Tar, Archive::Zip