File:  [LON-CAPA] / loncom / lonnet / perl / lonrep.pm
Revision 1.2: download - view: text, annotated - select for diffs
Thu Jan 13 14:48:36 2000 UTC (24 years, 4 months ago) by www
Branches: MAIN
CVS tags: HEAD
Transfered replication code from lonrep to lonnet (not tested yet)

# The LearningOnline Network
# Replication Manager
# (Access Handler for File Transfers
# (lonacc: Cookie Based Access Handler
# 5/21/99,5/22,5/29,5/31,6/15 Gerd Kortemeyer)
# 6/16,6/18 Gerd Kortemeyer)
# 6/18,6/21,6/26,6/28,6/29,6/30,
# 7/2,7/3,7/9,7/10,7/12,
# 01/06 Gerd Kortemeyer

package Apache::lonrep;

use strict;
use Apache::Constants qw(:common :http);
use Apache::lonnet();
use Apache::File();

sub handler {
    my $r = shift;
    if (-e $r->finfo) {
      return OK;
    } else {
      my $filename=$r->filename.$r->path_info;
      if (-e "$filename.in.transfer") {
	sleep 10;
        $r->filename($filename);
        if (-e $r->finfo) {
	   return OK;
        } else {
	   $r->log_reason("Waiting for file transfer timed out",$filename);
	   return HTTP_SERVICE_UNAVAILABLE;
        }
      } else {
          return Apache::lonnet::repcopy($filename);
      }
    }
}

1;
__END__









FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>