Changeset 9899 for trunk/gsdl3
- Timestamp:
- 2005-05-17T13:26:57+12:00 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl3/bin/script/convert_coll_from_gs2.pl
r9874 r9899 14 14 use FileHandle; 15 15 use XML::Writer; 16 use GDBM_File; 16 17 17 18 &main(); … … 93 94 } 94 95 96 my $db_file = &util::filename_cat ($collectdir, "index", "text", "$collection.ldb"); 97 my $database; 98 if (-e $db_file) { 99 $database = &open_database($db_file); 100 } else { 101 print STDERR "gdbm database file $db_file not found!!"; 102 die "\n"; 103 } 104 95 105 my $buildtype; 96 106 if (defined $buildcfg->{'buildtype'}) { … … 264 274 } 265 275 266 my $horizontalAtTop = "false"; 267 if ($classname eq "AZList" || $classname eq "AZCompactList") { #there may be others 268 $horizontalAtTop = "true"; 269 } 276 my $horizontalAtTop = &isHorizontalClassifier($database, $name); 270 277 if (not $started_classifiers) { 271 278 $buildwriter->startTag('serviceRack', 'name'=>'GS2Browse'); … … 288 295 } 289 296 } 290 if ($horizontalAtTop eq "false") { 297 if ($horizontalAtTop) { 298 $buildwriter->emptyTag('classifier', 'name'=>$name, 'content'=>$content, 'horizontalAtTop'=>'true'); 299 } else { 291 300 $buildwriter->emptyTag('classifier', 'name'=>$name, 'content'=>$content); 292 } else { 293 $buildwriter->emptyTag('classifier', 'name'=>$name, 'content'=>$content, 'horizontalAtTop'=>'true'); 294 } 301 } 295 302 296 303 … … 404 411 $buildoutput->close(); 405 412 $colloutput->close(); 413 &close_database($database); 406 414 } 407 415 … … 480 488 } 481 489 490 sub open_database { 491 my ($db_file) = @_; 492 493 my $database = (); 494 tie (%database, GDBM_File, $db_file, &GDBM_READER, 0400) || 495 die "Couldn't open database $db_file\n"; 496 497 return $database; 498 } 499 500 sub close_database { 501 my ($database) = @_; 502 untie %database; 503 } 504 sub isHorizontalClassifier { 505 my ($database, $name) = @_; 506 507 my $record = $database{$name}; 508 my ($childtype) = $record =~ /<childtype>(\w*)/; 509 if ($childtype eq "HList") { 510 return 1; 511 } 512 return 0; 513 } 482 514 #$writer->startTag(''); 483 515 #$writer->endTag('');
Note:
See TracChangeset
for help on using the changeset viewer.