Changeset 21546


Ignore:
Timestamp:
2010-01-20T16:53:47+13:00 (14 years ago)
Author:
mdewsnip
Message:

Changed dbutil.pm so all the sub-module function calls now have @_ as the final argument, so extra database-specific parameters can be passed through. This is currently only used by the gdbm and jdbm open_infodb_write_handle() functions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone2/perllib/dbutil.pm

    r21544 r21546  
    3737  {
    3838    require dbutil::sqlite;
    39     return &dbutil::sqlite::open_infodb_write_handle($infodb_file_path);
     39    return &dbutil::sqlite::open_infodb_write_handle($infodb_file_path, @_);
    4040  }
    4141  elsif ($infodb_type eq "gdbm-txtgz")
    4242  {
    4343    require dbutil::gdbmtxtgz;
    44     return &dbutil::gdbmtxtgz::open_infodb_write_handle($infodb_file_path);
     44    return &dbutil::gdbmtxtgz::open_infodb_write_handle($infodb_file_path, @_);
    4545  }
    4646  elsif ($infodb_type eq "jdbm")
    4747  {
    4848    require dbutil::jdbm;
    49     return &dbutil::jdbm::open_infodb_write_handle($infodb_file_path);
     49    return &dbutil::jdbm::open_infodb_write_handle($infodb_file_path, @_);
    5050  }
    5151  elsif ($infodb_type eq "mssql")
    5252  {
    5353    require dbutil::mssql;
    54     return &dbutil::mssql::open_infodb_write_handle($infodb_file_path);
    55   }
    56 
    57   # Use GDBM if the infodb type is empty or not one of the values above
    58   require dbutil::gdbm;
    59   return &dbutil::gdbm::open_infodb_write_handle($infodb_file_path);
     54    return &dbutil::mssql::open_infodb_write_handle($infodb_file_path, @_);
     55  }
     56
     57  # Use GDBM if the infodb type is empty or not one of the values above
     58  require dbutil::gdbm;
     59  return &dbutil::gdbm::open_infodb_write_handle($infodb_file_path, @_);
    6060}
    6161
     
    6969  {
    7070    require dbutil::sqlite;
    71     return &dbutil::sqlite::close_infodb_write_handle($infodb_handle);
    72   }
    73   elsif ($infodb_type eq "gdbm-txtgz")
    74   {
    75     require dbutil::gdbmtxtgz;
    76     return &dbutil::gdbmtxtgz::close_infodb_write_handle($infodb_handle);
    77   }
    78   elsif ($infodb_type eq "jdbm")
    79   {
    80     require dbutil::jdbm;
    81     return &dbutil::jdbm::close_infodb_write_handle($infodb_handle);
    82   }
    83   elsif ($infodb_type eq "mssql")
    84   {
    85     require dbutil::mssql;
    86     return &dbutil::mssql::close_infodb_write_handle($infodb_handle);
     71    return &dbutil::sqlite::close_infodb_write_handle($infodb_handle, @_);
     72  }
     73  elsif ($infodb_type eq "gdbm-txtgz")
     74  {
     75    require dbutil::gdbmtxtgz;
     76    return &dbutil::gdbmtxtgz::close_infodb_write_handle($infodb_handle, @_);
     77  }
     78  elsif ($infodb_type eq "jdbm")
     79  {
     80    require dbutil::jdbm;
     81    return &dbutil::jdbm::close_infodb_write_handle($infodb_handle, @_);
     82  }
     83  elsif ($infodb_type eq "mssql")
     84  {
     85    require dbutil::mssql;
     86    return &dbutil::mssql::close_infodb_write_handle($infodb_handle, @_);
    8787  }
    8888   
    8989  # Use GDBM if the infodb type is empty or not one of the values above
    9090  require dbutil::gdbm;
    91   return &dbutil::gdbm::close_infodb_write_handle($infodb_handle);
     91  return &dbutil::gdbm::close_infodb_write_handle($infodb_handle, @_);
    9292}
    9393
     
    110110  {
    111111    require dbutil::sqlite;
    112     return &dbutil::sqlite::get_infodb_file_path($collection_name, $infodb_directory_path);
    113   }
    114   elsif ($infodb_type eq "gdbm-txtgz")
    115   {
    116     require dbutil::gdbmtxtgz;
    117     return &dbutil::gdbmtxtgz::get_infodb_file_path($collection_name, $infodb_directory_path);
    118   }
    119   elsif ($infodb_type eq "jdbm")
    120   {
    121     require dbutil::jdbm;
    122     return &dbutil::jdbm::get_infodb_file_path($collection_name, $infodb_directory_path);
     112    return &dbutil::sqlite::get_infodb_file_path($collection_name, $infodb_directory_path, @_);
     113  }
     114  elsif ($infodb_type eq "gdbm-txtgz")
     115  {
     116    require dbutil::gdbmtxtgz;
     117    return &dbutil::gdbmtxtgz::get_infodb_file_path($collection_name, $infodb_directory_path, @_);
     118  }
     119  elsif ($infodb_type eq "jdbm")
     120  {
     121    require dbutil::jdbm;
     122    return &dbutil::jdbm::get_infodb_file_path($collection_name, $infodb_directory_path, @_);
    123123  }
    124124  elsif ($infodb_type eq "mssql")
     
    136136    #==================================================================================================#
    137137    require dbutil::mssql;
    138     return &dbutil::mssql::get_infodb_file_path($collection_name, $infodb_directory_path);
     138    return &dbutil::mssql::get_infodb_file_path($collection_name, $infodb_directory_path, @_);
    139139  }
    140140 
    141141  # Use GDBM if the infodb type is empty or not one of the values above
    142142  require dbutil::gdbm;
    143   return &dbutil::gdbm::get_infodb_file_path($collection_name, $infodb_directory_path);
     143  return &dbutil::gdbm::get_infodb_file_path($collection_name, $infodb_directory_path, @_);
    144144}
    145145
     
    154154  {
    155155    require dbutil::sqlite;
    156     return &dbutil::sqlite::read_infodb_file($infodb_file_path, $infodb_map);
    157   }
    158   elsif ($infodb_type eq "gdbm-txtgz")
    159   {
    160     require dbutil::gdbmtxtgz;
    161     return &dbutil::gdbmtxtgz::read_infodb_file($infodb_file_path, $infodb_map);
    162   }
    163   elsif ($infodb_type eq "jdbm")
    164   {
    165     require dbutil::jdbm;
    166     return &dbutil::jdbm::read_infodb_file($infodb_file_path, $infodb_map);
    167   }
    168   elsif ($infodb_type eq "mssql")
    169   {
    170     require dbutil::mssql;
    171     return &dbutil::mssql::read_infodb_file($infodb_file_path, $infodb_map);
     156    return &dbutil::sqlite::read_infodb_file($infodb_file_path, $infodb_map, @_);
     157  }
     158  elsif ($infodb_type eq "gdbm-txtgz")
     159  {
     160    require dbutil::gdbmtxtgz;
     161    return &dbutil::gdbmtxtgz::read_infodb_file($infodb_file_path, $infodb_map, @_);
     162  }
     163  elsif ($infodb_type eq "jdbm")
     164  {
     165    require dbutil::jdbm;
     166    return &dbutil::jdbm::read_infodb_file($infodb_file_path, $infodb_map, @_);
     167  }
     168  elsif ($infodb_type eq "mssql")
     169  {
     170    require dbutil::mssql;
     171    return &dbutil::mssql::read_infodb_file($infodb_file_path, $infodb_map, @_);
    172172  }
    173173 
    174174  # Use GDBM if the infodb type is empty or not one of the values above
    175175  require dbutil::gdbm;
    176   return &dbutil::gdbm::read_infodb_file($infodb_file_path, $infodb_map);
     176  return &dbutil::gdbm::read_infodb_file($infodb_file_path, $infodb_map, @_);
    177177}
    178178
     
    188188  {
    189189    require dbutil::sqlite;
    190     return &dbutil::sqlite::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map);
    191   }
    192   elsif ($infodb_type eq "gdbm-txtgz")
    193   {
    194     require dbutil::gdbmtxtgz;
    195     return &dbutil::gdbmtxtgz::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map);
    196   }
    197   elsif ($infodb_type eq "jdbm")
    198   {
    199     require dbutil::jdbm;
    200     return &dbutil::jdbm::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map);
    201   }
    202   elsif ($infodb_type eq "mssql")
    203   {
    204     require dbutil::mssql;
    205     return &dbutil::mssql::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map);
    206   }
    207 
    208   # Use GDBM if the infodb type is empty or not one of the values above
    209   require dbutil::gdbm;
    210   return &dbutil::gdbm::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map);
     190    return &dbutil::sqlite::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map, @_);
     191  }
     192  elsif ($infodb_type eq "gdbm-txtgz")
     193  {
     194    require dbutil::gdbmtxtgz;
     195    return &dbutil::gdbmtxtgz::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map, @_);
     196  }
     197  elsif ($infodb_type eq "jdbm")
     198  {
     199    require dbutil::jdbm;
     200    return &dbutil::jdbm::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map, @_);
     201  }
     202  elsif ($infodb_type eq "mssql")
     203  {
     204    require dbutil::mssql;
     205    return &dbutil::mssql::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map, @_);
     206  }
     207
     208  # Use GDBM if the infodb type is empty or not one of the values above
     209  require dbutil::gdbm;
     210  return &dbutil::gdbm::write_infodb_entry($infodb_handle, $infodb_key, $infodb_map, @_);
    211211}
    212212
     
    221221  {
    222222    require dbutil::sqlite;
    223     return &dbutil::sqlite::delete_infodb_entry($infodb_handle, $infodb_key);
    224   }
    225   elsif ($infodb_type eq "gdbm-txtgz")
    226   {
    227     require dbutil::gdbmtxtgz;
    228     return &dbutil::gdbmtxtgz::delete_infodb_entry($infodb_handle, $infodb_key);
    229   }
    230   elsif ($infodb_type eq "jdbm")
    231   {
    232     require dbutil::jdbm;
    233     return &dbutil::jdbm::delete_infodb_entry($infodb_handle, $infodb_key);
    234   }
    235   elsif ($infodb_type eq "mssql")
    236   {
    237     require dbutil::mssql;
    238     return &dbutil::mssql::delete_infodb_entry($infodb_handle, $infodb_key);
    239   }
    240 
    241   # Use GDBM if the infodb type is empty or not one of the values above
    242   require dbutil::gdbm;
    243   return &dbutil::gdbm::delete_infodb_entry($infodb_handle, $infodb_key);
     223    return &dbutil::sqlite::delete_infodb_entry($infodb_handle, $infodb_key, @_);
     224  }
     225  elsif ($infodb_type eq "gdbm-txtgz")
     226  {
     227    require dbutil::gdbmtxtgz;
     228    return &dbutil::gdbmtxtgz::delete_infodb_entry($infodb_handle, $infodb_key, @_);
     229  }
     230  elsif ($infodb_type eq "jdbm")
     231  {
     232    require dbutil::jdbm;
     233    return &dbutil::jdbm::delete_infodb_entry($infodb_handle, $infodb_key, @_);
     234  }
     235  elsif ($infodb_type eq "mssql")
     236  {
     237    require dbutil::mssql;
     238    return &dbutil::mssql::delete_infodb_entry($infodb_handle, $infodb_key, @_);
     239  }
     240
     241  # Use GDBM if the infodb type is empty or not one of the values above
     242  require dbutil::gdbm;
     243  return &dbutil::gdbm::delete_infodb_entry($infodb_handle, $infodb_key, @_);
    244244}
    245245
Note: See TracChangeset for help on using the changeset viewer.