Ignore:
Timestamp:
2013-05-06T15:29:38+12:00 (11 years ago)
Author:
jmt12
Message:

Moving the critical file-related functions (copy, rm, etc) out of util.pm into their own proper class FileUtils. Use of the old functions in util.pm will prompt deprecated warning messages. There may be further functions that could be moved across in the future, but these are the critical ones when considering supporting other filesystems (HTTP, HDFS, WebDav, etc). Updated some key files to use the new functions so now deprecated messages thrown when importing/building demo collection 'out of the box'

Location:
main/trunk/greenstone2/perllib/plugins
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone2/perllib/plugins/ArchivesInfPlugin.pm

    r24351 r27306  
    3131
    3232use util;
     33use FileUtils;
    3334use doc;
    3435use PrintInfo;
     
    120121        my $base_dir =$self->{'base_dir'};
    121122
    122         my $doc_filename = &util::filename_cat($base_dir,$doc_file);
     123        my $doc_filename = &FileUtils::filenameConcatenate($base_dir,$doc_file);
    123124
    124125        my ($doc_tailname, $doc_dirname, $suffix)
     
    229230   
    230231    # see if this has a archives information file within it
    231 ##    my $archive_info_filename = &util::filename_cat($base_dir,$file,"archives.inf");
    232     my $archive_info_filename = &dbutil::get_infodb_file_path($infodbtype, "archiveinf-doc", &util::filename_cat($base_dir, $file));
     232##    my $archive_info_filename = &FileUtils::filenameConcatenate($base_dir,$file,"archives.inf");
     233    my $archive_info_filename = &dbutil::get_infodb_file_path($infodbtype, "archiveinf-doc", &FileUtils::filenameConcatenate($base_dir, $file));
    233234
    234235    if (-e $archive_info_filename) {
     
    254255        last if ($maxdocs != -1 && ($total_count + $count) >= $maxdocs);
    255256
    256         my $tmp = &util::filename_cat ($file, $subfile->[0]);
     257        my $tmp = &FileUtils::filenameConcatenate($file, $subfile->[0]);
    257258        next if $tmp eq $file;
    258259
  • main/trunk/greenstone2/perllib/plugins/BasePlugin.pm

    r26893 r27306  
    3939use ghtml;
    4040use gsprintf 'gsprintf';
     41use util;
     42use FileUtils;
    4143
    4244use PrintInfo;
     
    447449    return if $coverfile eq $filename;
    448450   
    449     if (!&util::fd_exists($coverfile)) {
     451    if (!&FileUtils::fileExists($coverfile)) {
    450452        $coverfile =~ s/jpg$/JPG/;
    451453    }   
    452     if (&util::fd_exists($coverfile)) {
     454    if (&FileUtils::fileExists($coverfile)) {
    453455        &util::block_filename($block_hash,$coverfile);
    454456    }
     
    14181420    my $top_section=$doc_obj->get_top_section();
    14191421
    1420     if (&util::fd_exists($upgraded_filename)) {
     1422    if (&FileUtils::fileExists($upgraded_filename)) {
    14211423    $doc_obj->associate_source_file($filename);
    14221424        $doc_obj->associate_file($filename, "cover.jpg", "image/jpeg");
     
    14291431    $upgraded_upper_filename =~ s/jpg$/JPG/;
    14301432
    1431     if (&util::fd_exists($upgraded_upper_filename)) {
     1433    if (&FileUtils::fileExists($upgraded_upper_filename)) {
    14321434        $doc_obj->associate_source_file($upper_filename);
    14331435        $doc_obj->associate_file($upper_filename, "cover.jpg",
  • main/trunk/greenstone2/perllib/plugins/DirectoryPlugin.pm

    r26867 r27306  
    3434use plugin;
    3535use util;
     36use FileUtils;
    3637use metadatautil;
    3738
     
    294295    # that it is not explicitly blocked.
    295296    my $dirname = $file;
    296     $dirname = &util::filename_cat ($base_dir, $file) if $base_dir =~ /\w/;
     297    $dirname = &FileUtils::filenameConcatenate($base_dir, $file) if $base_dir =~ /\w/;
    297298
    298299    my $directory_ok = $self->check_directory_path($dirname);
     
    329330
    330331    my $this_file_base_dir = $base_dir;
    331     my $raw_file_subfile = &util::filename_cat($file, $raw_subfile);
     332    my $raw_file_subfile = &FileUtils::filenameConcatenate($file, $raw_subfile);
    332333
    333334    # Recursively read each $raw_subfile
     
    381382    } else {
    382383    $dirname = $file;
    383     $dirname = &util::filename_cat ($base_dir, $file) if $base_dir =~ /\w/;
     384    $dirname = &FileUtils::filenameConcatenate($base_dir, $file) if $base_dir =~ /\w/;
    384385    }
    385386   
     
    412413    # Re-order the files in the list so any directories ending with .all are moved to the end
    413414    for (my $i = scalar(@dir) - 1; $i >= 0; $i--) {
    414     if (-d &util::filename_cat($dirname, $dir[$i]) && $dir[$i] =~ /\.all$/) {
     415    if (-d &FileUtils::filenameConcatenate($dirname, $dir[$i]) && $dir[$i] =~ /\.all$/) {
    415416        push(@dir, splice(@dir, $i, 1));
    416417    }
     
    461462    my $raw_subfile = &unicode::url_encoded_to_raw_filename($subfile);
    462463
    463     my $raw_file_subfile = &util::filename_cat($file, $raw_subfile);
    464     my $raw_full_filename = &util::filename_cat($this_file_base_dir, $raw_file_subfile);
     464    my $raw_file_subfile = &FileUtils::filenameConcatenate($file, $raw_subfile);
     465    my $raw_full_filename = &FileUtils::filenameConcatenate($this_file_base_dir, $raw_file_subfile);
    465466
    466467    if ($self->file_is_blocked($block_hash,$raw_full_filename)) {
     
    542543    my $raw_subfile = &unicode::url_encoded_to_raw_filename($subfile);
    543544
    544     my $raw_file_subfile = &util::filename_cat($file, $raw_subfile);
     545    my $raw_file_subfile = &FileUtils::filenameConcatenate($file, $raw_subfile);
    545546    my $raw_full_filename
    546         = &util::filename_cat($this_file_base_dir,$raw_file_subfile);
     547        = &FileUtils::filenameConcatenate($this_file_base_dir,$raw_file_subfile);
    547548
    548549    if ($self->file_is_blocked($block_hash,$raw_full_filename)) {
     
    554555    if ($raw_subfile =~ /(?i)\.lnk$/ && $ENV{'GSDLOS'} =~ /^windows$/i) {
    555556        require Win32::Shortcut;
    556         my $shortcut = new Win32::Shortcut(&util::filename_cat($dirname, $raw_subfile));
     557        my $shortcut = new Win32::Shortcut(&FileUtils::filenameConcatenate($dirname, $raw_subfile));
    557558        if ($shortcut) {
    558559        # The file to be processed is now the target of the shortcut
  • main/trunk/greenstone2/perllib/plugins/GreenstoneXMLPlugin.pm

    r23753 r27306  
    3636
    3737use ReadXMLFile;
     38use util;
     39use FileUtils;
    3840
    3941use strict;
     
    118120
    119121        my $dirname = dirname($filename_full_path);
    120         my $full_gsdl_assoc_filename = &util::filename_cat($dirname,$gsdl_assoc_file);
     122        my $full_gsdl_assoc_filename = &FileUtils::filenameConcatenate($dirname,$gsdl_assoc_file);
    121123        if ($self->{'verbosity'}>2) {
    122124            print $outhandle "  Storing block list item: $full_gsdl_assoc_filename\n";
     
    316318          {
    317319            # And if not, append it so as to make this absolute
    318             $assoc_filepath = &util::filename_cat($self->{'base_dir'}, $assoc_filepath);
     320            $assoc_filepath = &FileUtils::filenameConcatenate($self->{'base_dir'}, $assoc_filepath);
    319321          }
    320322      }
     
    331333        #rint STDERR "mime_type: $mime_type\n";
    332334        #rint STDERR "dir: $dir\n";
    333     my $real_dir = &util::filename_cat($assoc_filepath, $assoc_file),
     335    my $real_dir = &FileUtils::filenameConcatenate($assoc_filepath, $assoc_file),
    334336    my $assoc_dir = (defined $dir && $dir ne "")
    335         ? &util::filename_cat($dir, $assoc_file) : $assoc_file;
     337        ? &FileUtils::filenameConcatenate($dir, $assoc_file) : $assoc_file;
    336338    $self->{'doc_obj'}->associate_file($real_dir, $assoc_dir, $mime_type);
    337339        #rint STDERR "According to me the real assoc_filepath is: $real_dir\n";
  • main/trunk/greenstone2/perllib/plugins/HTMLPlugin.pm

    r25673 r27306  
    4444use unicode;
    4545use util;
     46use FileUtils;
    4647use XMLParser;
    4748
     
    229230        # Turn relative file path into full path
    230231        my $dirname = &File::Basename::dirname($filename_full_path);
    231         $raw_link = &util::filename_cat($dirname, $raw_link);
     232        $raw_link = &FileUtils::filenameConcatenate($dirname, $raw_link);
    232233    }
    233234    $raw_link = $self->eval_dir_dots($raw_link);
     
    336337   
    337338    # set the file to be tidied
    338     $input_filename = &util::filename_cat($base_dir,$file) if $base_dir =~ m/\w/;
     339    $input_filename = &FileUtils::filenameConcatenate($base_dir,$file) if $base_dir =~ m/\w/;
    339340   
    340341    # get the tidied file
     
    386387    }
    387388
    388     my $filename = &util::filename_cat($base_dir,$file);
     389    my $filename = &FileUtils::filenameConcatenate($base_dir,$file);
    389390    my $upgraded_base_dir = &util::upgrade_if_dos_filename($base_dir);
    390391    my $upgraded_filename = &util::upgrade_if_dos_filename($filename);
     
    709710    if(scalar(@styleTagsText) > 0)
    710711    {
    711         my $css_filename_dirname = &File::Basename::dirname(&util::filename_cat($base_dir, $file));
     712        my $css_filename_dirname = &File::Basename::dirname(&FileUtils::filenameConcatenate($base_dir, $file));
    712713        foreach my $styleText (@styleTagsText)
    713714        {
     
    823824        my $directory = &File::Basename::dirname($file);
    824825       
    825         my $css_filename = &util::filename_cat($base_dir, $directory, $actual_link);   
     826        my $css_filename = &FileUtils::filenameConcatenate($base_dir, $directory, $actual_link);   
    826827        $self->retrieve_css_associated_files($css_filename);
    827828    }
     
    943944        $img_url =~ s/^\s*"?([^"]*)"?\s*$/$1/;
    944945
    945         $self->{'css_assoc_files'}->{&util::filename_cat($css_filename_dirname, $img_url)} = $img_url;
     946        $self->{'css_assoc_files'}->{&FileUtils::filenameConcatenate($css_filename_dirname, $img_url)} = $img_url;
    946947    }
    947948}
     
    980981    }
    981982
    982     $filename = &util::filename_cat($base_dir, $filename);
     983    $filename = &FileUtils::filenameConcatenate($base_dir, $filename);
    983984
    984985    if (($self->{'use_realistic_book'}) || ($self->{'old_style_HDL'})) {
     
    10351036    # some special processing if the intended filename was converted to utf8, but
    10361037    # the actual file still needs to be renamed
    1037     if (!&util::fd_exists($filename)) {
     1038    #if (!&util::fd_exists($filename)) {
     1039    if (!&FileUtils::fileExists($filename)) {
    10381040    # try the original filename stored in map
    10391041    if ((defined $ENV{"DEBUG_UNICODE"}) && ($ENV{"DEBUG_UNICODE"})) {
     
    11311133        # Turn url (using /) into file name (possibly using \ on windows)
    11321134        my @http_dir_split = split('/', $before_hash);
    1133         $before_hash = &util::filename_cat(@http_dir_split);
     1135        $before_hash = &FileUtils::filenameConcatenate(@http_dir_split);
    11341136    }
    11351137
    11361138    $before_hash = $self->eval_dir_dots($before_hash);
    11371139   
    1138     my $linkfilename = &util::filename_cat ($base_dir, $before_hash);
     1140    my $linkfilename = &FileUtils::filenameConcatenate($base_dir, $before_hash);
    11391141   
    11401142    my $rl = 0;
     
    11581160        my @dirs = split /[\/\\]/, $file;
    11591161        my $domname = shift (@dirs);
    1160         $before_hash = &util::filename_cat($domname, $before_hash);
     1162        $before_hash = &FileUtils::filenameConcatenate($domname, $before_hash);
    11611163        $before_hash =~ s@\\@/@g; # for windows
    11621164        }
     
    11811183            $before_hash = "/$before_hash";
    11821184
    1183             $before_hash = &util::filename_cat("",$before_hash);
     1185            $before_hash = &FileUtils::filenameConcatenate("",$before_hash);
    11841186            $before_hash =~ s@^$base_dir/@@;
    11851187        }
     
    11881190        # Turn relative file path into full path
    11891191        my $dirname = &File::Basename::dirname($file);
    1190         $before_hash = &util::filename_cat($dirname, $before_hash);
     1192        $before_hash = &FileUtils::filenameConcatenate($dirname, $before_hash);
    11911193        $before_hash = $self->eval_dir_dots($before_hash);             
    11921194    }
    11931195
    1194     my $linkfilename = &util::filename_cat ($base_dir, $before_hash);
     1196    my $linkfilename = &FileUtils::filenameConcatenate($base_dir, $before_hash);
    11951197
    11961198
     
    14621464    # Need to fiddle with number of elements in @eval_dirs if the
    14631465    # first one is the empty string.  This is because of a
    1464     # modification to util::filename_cat that supresses the addition
     1466    # modification to FileUtils::filenameConcatenate that supresses the addition
    14651467    # of a leading '/' character (or \ if windows) (intended to help
    14661468    # filename cat with relative paths) if the first entry in the
     
    14741476    }
    14751477   
    1476     my $evaluated_filename = (scalar @eval_dirs > 0) ? &util::filename_cat(@eval_dirs) : "";
     1478    my $evaluated_filename = (scalar @eval_dirs > 0) ? &FileUtils::filenameConcatenate(@eval_dirs) : "";
    14771479    return $evaluated_filename;
    14781480}
     
    17561758   
    17571759    # softlink to collection tmp dir
    1758     my $tmp_dirname = &util::filename_cat($ENV{'GSDLCOLLECTDIR'}, "tidytmp");
     1760    my $tmp_dirname = &FileUtils::filenameConcatenate($ENV{'GSDLCOLLECTDIR'}, "tidytmp");
    17591761    &util::mk_dir($tmp_dirname) if (!-e $tmp_dirname);
    17601762   
     
    17711773    {
    17721774        my $folderdirname = $`;
    1773         $tmp_dirname = &util::filename_cat($tmp_dirname,$folderdirname);
     1775        $tmp_dirname = &FileUtils::filenameConcatenate($tmp_dirname,$folderdirname);
    17741776        &util::mk_dir($tmp_dirname) if (!-e $tmp_dirname);
    17751777        $test_dirname = $'; #'
     
    17771779    }
    17781780   
    1779     my $tmp_filename = &util::filename_cat($tmp_dirname, "$tailname$suffix");
     1781    my $tmp_filename = &FileUtils::filenameConcatenate($tmp_dirname, "$tailname$suffix");
    17801782   
    17811783    # tidy or convert the input file if it is a HTML-like file or it is accepted by the process_exp
     
    17861788        if ($self->{'old_style_HDL'})
    17871789        {
    1788         $hdl_output_filename = &util::filename_cat($tmp_dirname, "$tailname$suffix");
     1790        $hdl_output_filename = &FileUtils::filenameConcatenate($tmp_dirname, "$tailname$suffix");
    17891791        $hdl_output_filename = $self->convert_to_newHDLformat($input_filename,$hdl_output_filename);
    17901792        }
     
    17971799    foreach my $file (@files)
    17981800    {
    1799         my $src_file = &util::filename_cat($base_dirname,$file);
    1800         my $dest_file = &util::filename_cat($tmp_dirname,$file);
     1801        my $src_file = &FileUtils::filenameConcatenate($base_dirname,$file);
     1802        my $dest_file = &FileUtils::filenameConcatenate($tmp_dirname,$file);
    18011803        if ((!-e $dest_file) && (!-d $src_file))
    18021804        {
     
    18101812    if ($self->{'use_realistic_book'})
    18111813    {
    1812         $tidy_output_filename = &util::filename_cat($tmp_dirname, "$tailname$suffix");
     1814        $tidy_output_filename = &FileUtils::filenameConcatenate($tmp_dirname, "$tailname$suffix");
    18131815        $tidy_output_filename = $self->tmp_tidy_file($hdl_output_filename,$tidy_output_filename);
    18141816    }
     
    18581860
    18591861        # get the full path to the image
    1860         my $img_file = &util::filename_cat($dirname,$attr->{src});
     1862        my $img_file = &FileUtils::filenameConcatenate($dirname,$attr->{src});
    18611863       
    18621864        # set the width and height attribute
  • main/trunk/greenstone2/perllib/plugins/MetadataXMLPlugin.pm

    r25094 r27306  
    9595use extrametautil;
    9696use util;
     97use FileUtils;
    9798use metadatautil;
    9899
     
    216217    my ($pluginfo, $base_dir, $file, $block_hash, $metadata, $gli) = @_;
    217218   
    218     my $filename_full_path = &util::filename_cat($base_dir, $file);
     219    my $filename_full_path = &FileUtils::filenameConcatenate($base_dir, $file);
    219220    return undef unless $self->can_process_this_file($filename_full_path);   
    220221
     
    244245    $processor, $gli, $aux) = @_;
    245246
    246     my $filename = &util::filename_cat($base_dir, $file);
     247    my $filename = &FileUtils::filenameConcatenate($base_dir, $file);
    247248    return undef unless $self->can_process_this_file($filename);   
    248249   
Note: See TracChangeset for help on using the changeset viewer.