- Timestamp:
- 2009-05-18T10:57:05+12:00 (15 years ago)
- Location:
- gsdl/trunk/perllib/plugins
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
gsdl/trunk/perllib/plugins/ArchivesInfPlugin.pm
r18659 r19493 169 169 sub metadata_read { 170 170 my $self = shift (@_); 171 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 171 my ($pluginfo, $base_dir, $file, $block_hash, 172 $extrametakeys, $extrametadata, $extrametafile, 173 $processor, $maxdocs, $gli) = @_; 172 174 173 175 return undef; -
gsdl/trunk/perllib/plugins/BasePlugin.pm
r19222 r19493 906 906 sub metadata_read { 907 907 my $self = shift (@_); 908 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 908 my ($pluginfo, $base_dir, $file, $block_hash, 909 $extrametakeys, $extrametadata, $extrametafile, 910 $processor, $maxdocs, $gli) = @_; 909 911 910 912 # can we process this file?? -
gsdl/trunk/perllib/plugins/DSpacePlugin.pm
r17300 r19493 240 240 sub metadata_read { 241 241 my $self = shift (@_); 242 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 242 my ($pluginfo, $base_dir, $file, $block_hash, 243 $extrametakeys, $extrametadata, $extrametafile, 244 $processor, $maxdocs, $gli) = @_; 243 245 244 246 my $only_first_doc = $self->{'only_first_doc'}; -
gsdl/trunk/perllib/plugins/DirectoryPlugin.pm
r19178 r19493 326 326 sub metadata_read { 327 327 my $self = shift (@_); 328 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 328 my ($pluginfo, $base_dir, $file, $block_hash, 329 $extrametakeys, $extrametadata, $extrametafile, 330 $processor, $maxdocs, $gli) = @_; 329 331 330 332 return undef; … … 395 397 my $additionalmetadata = 0; # is there extra metadata available? 396 398 my %extrametadata; # maps from filespec to extra metadata keys 399 my %extrametafile; # maps from filespec to the metadata.xml (or similar) file it came from 397 400 my @extrametakeys; # keys of %extrametadata in order read 398 401 … … 411 414 my $extrakeys_re = $ek->{'re'}; 412 415 my $extrakeys_md = $ek->{'md'}; 416 my $extrakeys_mf = $ek->{'mf'}; 413 417 push(@extrametakeys,$extrakeys_re); 414 418 $extrametadata{$extrakeys_re} = $extrakeys_md; 419 $extrametafile{$extrakeys_re} = $extrakeys_mf; 415 420 } 416 421 delete($self->{'subdir_extrametakeys'}->{$local_dirname}); … … 437 442 $file_subfile,$block_hash, 438 443 \@extrametakeys, \%extrametadata, 444 \%extrametafile, 439 445 $processor, $maxdocs, $gli); 440 446 $additionalmetadata = 1; … … 455 461 if ($ek_non_re =~ m/$dirsep_re/) { # specifies at least one directory 456 462 my $md = $extrametadata{$ek}; 463 my $mf = $extrametafile{$ek}; 457 464 458 465 my $subdir_extrametakeys = $self->{'subdir_extrametakeys'}; 459 466 460 my $subdir_rec = { 're' => $subdir_re, 'md' => $md };467 my $subdir_rec = { 're' => $subdir_re, 'md' => $md, 'mf' => $mf }; 461 468 462 469 # when its looked up, it must be relative to the base dir … … 562 569 # Next add metadata read in XML files (if it is supplied) 563 570 if ($additionalmetadata == 1) { 564 my ($filespec, $mdref); 565 foreach $filespec (@extrametakeys) { 571 foreach my $filespec (@extrametakeys) { 566 572 ## use the utf8 encoded filename to do the filename comparison 567 573 if ($tmpfile =~ /^$filespec$/) { 568 574 print $outhandle "File \"$subfile\" matches filespec \"$filespec\"\n" 569 575 if ($verbosity > 2); 570 $mdref = $extrametadata{$filespec}; 576 my $mdref = $extrametadata{$filespec}; 577 my $mfref = $extrametafile{$filespec}; 578 579 # Add the list files where the metadata came from 580 # into the metadata table so we can track this 581 # This mechanism is similar to how gsdlassocfile works 582 583 my @metafile_pair = (); 584 foreach my $l (keys %$mfref) { 585 my $f = $mfref->{$l}; 586 push (@metafile_pair, "$f:$l"); 587 } 588 589 $mdref->{'gsdlmetafile'} = \@metafile_pair; 590 571 591 &metadatautil::combine_metadata_structures($out_metadata, $mdref); 572 592 } … … 583 603 584 604 585 my $inf_timestamp = $self->{'inf_timestamp'};586 587 605 if (! -d $full_filename) { 588 my $filename_timestamp = -M $full_filename; 589 if ($filename_timestamp > $inf_timestamp) { 606 if (!$block_hash->{'reindex_files'}->{$full_filename}) { 590 607 # filename has been around for longer than inf 591 608 print $outhandle "**** Skipping $subfile\n" if ($verbosity >3); … … 602 619 # mark to doc-oids that rely on it for re-indexing 603 620 ## &GDBMUtils::gdbmDatabase(); 604 605 621 } 606 622 } -
gsdl/trunk/perllib/plugins/LOMPlugin.pm
r17300 r19493 118 118 sub metadata_read { 119 119 my $self = shift (@_); 120 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 120 my ($pluginfo, $base_dir, $file, $block_hash, 121 $extrametakeys, $extrametadata, $extrametafile, 122 $processor, $maxdocs, $gli) = @_; 121 123 122 124 my $outhandle = $self->{'outhandle'}; -
gsdl/trunk/perllib/plugins/MetadataCSVPlugin.pm
r17717 r19493 79 79 { 80 80 my $self = shift (@_); 81 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 81 my ($pluginfo, $base_dir, $file, $block_hash, 82 $extrametakeys, $extrametadata, $extrametafile, 83 $processor, $maxdocs, $gli) = @_; 82 84 83 85 # Read metadata from CSV files -
gsdl/trunk/perllib/plugins/MetadataEXIFPlugin.pm
r19215 r19493 168 168 { 169 169 my $self = shift (@_); 170 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 170 my ($pluginfo, $base_dir, $file, $block_hash, 171 $extrametakeys, $extrametadata, $extrametafile, 172 $processor, $maxdocs, $gli) = @_; 171 173 172 174 -
gsdl/trunk/perllib/plugins/MetadataXMLPlugin.pm
r17300 r19493 167 167 { 168 168 my $self = shift (@_); 169 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, 170 $processor, $maxdocs, $gli) = @_; 169 my ($pluginfo, $base_dir, $file, $block_hash, 170 $extrametakeys, $extrametadata,$extrametafile, 171 $processor, $maxdocs, $gli) = @_; 171 172 172 173 my $filename = &util::filename_cat($base_dir, $file); … … 174 175 return undef; 175 176 } 177 178 $self->{'metadata-file'} = $file; 179 $self->{'metadata-filename'} = $filename; 176 180 177 181 my $outhandle = $self->{'outhandle'}; … … 182 186 $block_hash->{'file_blocks'}->{$filename} = 1; 183 187 $self->{'metadataref'} = $extrametadata; 188 $self->{'metafileref'} = $extrametafile; 184 189 $self->{'metakeysref'} = $extrametakeys; 185 190 … … 236 241 my $file_metadata = $self->{'metadataref'}->{$target}; 237 242 my $saved_metadata = $self->{'saved_metadata'}; 243 238 244 if (!defined $file_metadata) { 239 245 $self->{'metadataref'}->{$target} = $saved_metadata; … … 245 251 &metadatautil::combine_metadata_structures($file_metadata,$saved_metadata); 246 252 } 253 254 255 # now record which metadata.xml file it came from 256 257 my $file = $self->{'metadata-file'}; 258 my $filename = $self->{'metadata-filename'}; 259 260 if (!defined $self->{'metafileref'}->{$target}) { 261 $self->{'metafileref'}->{$target} = {}; 262 } 263 264 $self->{'metafileref'}->{$target}->{$file} = $filename 247 265 } 248 266 } -
gsdl/trunk/perllib/plugins/OAIPlugin.pm
r19213 r19493 183 183 my $self = shift (@_); 184 184 185 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 185 my ($pluginfo, $base_dir, $file, $block_hash, 186 $extrametakeys, $extrametadata, $extrametafile, 187 $processor, $maxdocs, $gli) = @_; 186 188 187 189 # can we process this file?? -
gsdl/trunk/perllib/plugins/PDFPlugin.pm
r18406 r19493 148 148 push(@$pagedimg_options, "-title_sub", '^(Page\s+\d+)?(\s*1\s+)?'); 149 149 push(@$pagedimg_options, "-screenviewsize", "1000"); 150 push(@$pagedimg_options, "-enable_cache"); 150 151 } 151 152 } -
gsdl/trunk/perllib/plugins/SplitTextFile.pm
r18327 r19493 118 118 sub metadata_read { 119 119 my $self = shift (@_); 120 my ($pluginfo, $base_dir, $file, $block_hash, $extrametakeys, $extrametadata, $processor, $maxdocs, $gli) = @_; 120 my ($pluginfo, $base_dir, $file, $block_hash, 121 $extrametakeys, $extrametadata, $extrametafile, 122 $processor, $maxdocs, $gli) = @_; 121 123 122 124 # returns 1 if matches process_exp, and has done blocking in the meantime … … 124 126 $block_hash, 125 127 $extrametakeys, 126 $extrametadata, $processor, 127 $maxdocs, $gli); 128 $extrametadata, 129 $extrametafile, 130 $processor, $maxdocs, $gli); 128 131 my $split_matched = undef; 129 132
Note:
See TracChangeset
for help on using the changeset viewer.