# Craig Barratt <cbarratt@users.sourceforge.net>
#
# COPYRIGHT
-# Copyright (C) 2001-2003 Craig Barratt
+# Copyright (C) 2001-2009 Craig Barratt
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
#
#========================================================================
#
-# Version 2.1.0_CVS, released 8 Feb 2004.
+# Version 3.2.0, released 31 Jul 2010.
#
# See http://backuppc.sourceforge.net.
#
package BackupPC::Xfer::Archive;
use strict;
-
-sub new
-{
- my($class, $bpc, $args) = @_;
-
- $args ||= {};
- my $t = bless {
- bpc => $bpc,
- conf => { $bpc->Conf },
- host => "",
- hostIP => "",
- shareName => "",
- pipeRH => undef,
- pipeWH => undef,
- badFiles => [],
- %$args,
- }, $class;
-
- return $t;
-}
-
-sub args
-{
- my($t, $args) = @_;
-
- foreach my $arg ( keys(%$args) ) {
- $t->{$arg} = $args->{$arg};
- }
-}
-
-sub useArchive
-{
- return 1;
-}
+use base qw(BackupPC::Xfer::Protocol);
sub start
{
$cmdargs);
$t->{XferLOG}->write(\"Executing: @$archiveClientCmd2\n");
- $bpc->cmdSystemOrEval($archiveClientCmd2,
+ $bpc->cmdSystemOrEvalLong($archiveClientCmd2,
sub {
$errStr = $_[0];
$t->{XferLOG}->write(\$_[0]);
- });
+ }, 0, $t->{pidHandler});
if ( $? ) {
($t->{_errStr} = $errStr) =~ s/[\n\r]+//;
return;
return "Completed Archive";
}
-sub errStr
-{
- my($t) = @_;
-
- return $t->{_errStr};
-}
-
-sub abort
-{
-}
-
-sub xferPid
-{
- my($t) = @_;
-
- return ($t->{xferPid});
-}
-
-sub logMsg
-{
- my($t, $msg) = @_;
-
- push(@{$t->{_logMsg}}, $msg);
-}
-
-sub logMsgGet
-{
- my($t) = @_;
-
- return shift(@{$t->{_logMsg}});
-}
-
1;