[interchange-cvs] interchange - racke modified lib/Vend/Config.pm
interchange-core@interchange.redhat.com
interchange-core@interchange.redhat.com
Mon May 27 08:07:01 2002
User: racke
Date: 2002-05-27 12:06:11 GMT
Modified: lib/Vend Config.pm
Log:
storage of MAP attribute revised
Revision Changes Path
2.42 +17 -7 interchange/lib/Vend/Config.pm
rev 2.42, prev_rev 2.41
Index: Config.pm
===================================================================
RCS file: /anon_cvs/repository/interchange/lib/Vend/Config.pm,v
retrieving revision 2.41
retrieving revision 2.42
diff -u -r2.41 -r2.42
--- Config.pm 25 May 2002 13:27:58 -0000 2.41
+++ Config.pm 27 May 2002 12:06:11 -0000 2.42
@@ -1,6 +1,6 @@
# Vend::Config - Configure Interchange
#
-# $Id: Config.pm,v 2.41 2002/05/25 13:27:58 racke Exp $
+# $Id: Config.pm,v 2.42 2002/05/27 12:06:11 racke Exp $
#
# Copyright (C) 1996-2001 Red Hat, Inc. <interchange@redhat.com>
#
@@ -44,7 +44,7 @@
use Vend::Parse;
use Vend::Util;
-$VERSION = substr(q$Revision: 2.41 $, 10);
+$VERSION = substr(q$Revision: 2.42 $, 10);
my %CDname;
@@ -2789,6 +2789,21 @@
$c->{$val} = $d;
}
}
+ elsif ($p eq 'MAP') {
+ my @f = split(/\s+/, $val);
+ if (@f < 2) {
+ config_error("At least two parameters needed for MAP.");
+ } elsif (@f > 3) {
+ config_error("Too much parameters for MAP.");
+ } elsif (@f == 2) {
+ @f = ($f[0], 'default', $f[1]);
+ }
+ $d->{OrigClass} = $d->{Class};
+ $d->{Class} = 'SHADOW';
+ $d->{type} = 10;
+ $d->{MAP}->{$f[0]}->{$f[1]} = $f[2];
+ }
+
else {
defined $d->{$p}
and
@@ -2799,11 +2814,6 @@
$d->{$p},
);
$d->{$p} = $val;
- }
- if ($p eq 'MAP') {
- $d->{OrigClass} = $d->{Class};
- $d->{Class} = 'SHADOW';
- $d->{type} = 10;
}
$d->{HOT} = 1 if $d->{Class} eq 'MEMORY';
}