Jonathan Rockway > Chroniton > Chroniton::Backup

Download:
Chroniton-0.03.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  3
Open  0
View Bugs
Report a bug
Source  

NAME ^

Chroniton::Backup - implements full and incremental backups

EXPORT ^

None of these subroutines are exported by default. Please load them into your namespace by specifying them on the module load line:

    use Chroniton::Backup qw(backup);

backup($config, $log, \@sources, $destination, [$against])

Perfoms a backup of each file in @sources to a new subdirectory of $destination. If $against is specified, an incremental backup is performed by comparing the files in each of @sources to the identically named files in $against. If the files are the same, the new file in $destination is linked to the version in $against (instead of being copied from the $source).

Returns a BackupSet object. Dies on a fatal error, otherwise logs errors and warnings to $log, a Chroniton::Messages object.

_clone_dir($config, $log, $contents, $src, $dest, [$against, $compare_ref])

Clones $src into $dest, recursively decending into subdirectories, depth first. If $against is specified, each file in $src is compared against the file of the same name in $against via the $compare_ref subroutine. This routine should return 1 if the file from $src needs to be copied to $dest, or 0 if the file placed in $dest should be a (relative) symbolic link to the file in $against.

Returns nothing. Dies on a fatal error, otherwise logs errors and warnings to $log, a Chroniton::Messages object.