[LON-CAPA-cvs] cvs: loncom(version_2_1_X) /lonnet/perl lonnet.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Thu, 26 Jan 2006 06:34:34 -0000
albertel Thu Jan 26 01:34:34 2006 EDT
Modified files: (Branch: version_2_1_X)
/loncom/lonnet/perl lonnet.pm
Log:
- get_slots %remembers gets
Index: loncom/lonnet/perl/lonnet.pm
diff -u loncom/lonnet/perl/lonnet.pm:1.683.2.12 loncom/lonnet/perl/lonnet.pm:1.683.2.13
--- loncom/lonnet/perl/lonnet.pm:1.683.2.12 Fri Jan 13 14:22:29 2006
+++ loncom/lonnet/perl/lonnet.pm Thu Jan 26 01:34:33 2006
@@ -1,7 +1,7 @@
# The LearningOnline Network
# TCP networking package
#
-# $Id: lonnet.pm,v 1.683.2.12 2006/01/13 19:22:29 albertel Exp $
+# $Id: lonnet.pm,v 1.683.2.13 2006/01/26 06:34:33 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -5262,10 +5262,17 @@
$cdom=$env{'course.'.$courseid.'.domain'};
$cnum=$env{'course.'.$courseid.'.num'};
}
- my %slotinfo=&get('slots',[$which],$cdom,$cnum);
- &Apache::lonhomework::showhash(%slotinfo);
- my ($tmp)=keys(%slotinfo);
- if ($tmp=~/^error:/) { return (); }
+ my $key=join("\0",'slots',$cdom,$cnum,$which);
+ my %slotinfo;
+ if (exists($remembered{$key})) {
+ $slotinfo{$which} = $remembered{$key};
+ } else {
+ %slotinfo=&get('slots',[$which],$cdom,$cnum);
+ &Apache::lonhomework::showhash(%slotinfo);
+ my ($tmp)=keys(%slotinfo);
+ if ($tmp=~/^error:/) { return (); }
+ $remembered{$key} = $slotinfo{$which};
+ }
if (ref($slotinfo{$which}) eq 'HASH') {
return %{$slotinfo{$which}};
}