Why not adopt me?
NAME
Mozilla::Backup::Plugin::FileCopy - A file copy plugin for Mozilla::Backup
SYNOPSIS
use Mozilla::Backup;
my $moz = Mozilla::Backup->new(
plugin => 'Mozilla::Backup::Plugin::FileCopy'
);
DESCRIPTION
This is a plugin for Mozilla::Backup which copies profiles to another directory.
- new
-
$plugin = Mozilla::Backup::Plugin::FileCopy->new( %options );
The following
%options
are supported:- log
-
The Log::Dispatch objetc used by Mozilla::Backup. This is required.
- debug
-
The debug flag from Mozilla::Backup. This is not used at the moment.
- allowed_options
-
@options = Mozilla::Backup::Plugin::FileCopy->allowed_options(); if (Mozilla::Backup::Plugin::FileCopy->allowed_options('debug')) { ... }
If no arguments are given, it returns a list of configuration parameters that can be passed to the constructor. If arguments are given, it returns true if all of the arguments are allowable options for the constructor.
- munge_location
-
$directory = $plugin->munge_location( $directory );
Munges the backup location name for use by this plugin. (Currently has no effect.)
- open_for_backup
-
if ($plugin->open_for_backup( $filename, %options )) { ... }
Creates a new archive for backing the profile.
$filename
is the name of the archive file to be used.%options
are optional configuration parameters. - open_for_restore
-
if ($plugin->open_for_restore( $filename, %options )) { ... }
Opens an existing archive for restoring the profile.
- get_contents
-
@files = $plugin->get_contents;
Returns a list of files in the archive.
- backup_file
-
$plugin->backup_file( $local_file, $internal_name );
Backs up the file in the archive, using
$internal_name
as the name in the archive. - restore_file
-
$plugin->restore_file( $internal_name, $local_file );
Restores the file from the archive.
- close_backup
-
$plugin->close_backup();
Closes the backup.
- close_restore
-
$plugin->close_restore();
Closes the restore.
EXAMPLES
Creating archvies other than zip or tar.gz
If you would like to create backups in a format for which no plugin is available, you can use Mozilla::Backup::Plugin::FileCopy with a system call to the appropriate archiver. For example,
$moz = Mozilla::backup->new(
plugin => "Mozilla::Backup::Plugin::FileCopy",
);
$dest = $moz->backup_profile(
type => "firefox",
name => "default",
);
system("tar cf - $dest |bzip2 - > firefox-default-profile.tar.bz2");
AUTHOR
Robert Rothenberg <rrwo at cpan.org>
LICENSE
Copyright (c) 2005 Robert Rothenberg. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.