Ignore:
Timestamp:
2015-12-10T12:19:20+13:00 (8 years ago)
Author:
jmt12
Message:

Continuing to refactor driver code to move shared code up to parent classes. Have all the basic drivers done...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • gs2-extensions/tdb/trunk/perllib/DBDrivers/Readme.txt

    r30331 r30347  
    11===== DBDriver =====
     2
     3Note that there are a couple of Drivers that could be further separated to
     4have even better OO, but I started to get bogged down in multiple inheritence
     5problems so I left them as is for now. For instance, separating PipedExecutable
     6support from the 70HyphenFormat driver would increase flexibility, but then it
     7becomes tricky to say which should inherit from which (in a single inheritence)
     8or what order methods should be resolved (in multiple inheritence).
    29
    310==== Inheritence Overview ====
    411
    5   * BaseDBDriver - superclass of all drivers. Some shared utility methods.
    6     * PipedDrivers - drivers that write and read their data via pipes to external executables. Data is in simple Greenstone archive form (i.e. key/value pairs and separated by seventy hyphens)
     12  * BaseDBDriver - superclass of all drivers. Some shared utility methods
     13                   including support for persistent connections (ala TDB).
     14           Thus this is a candidate for separating out the the
     15           PersistentConnectionsDriver.
     16    * 70HyphenFormat - drivers that write and read their data via pipes to
     17                       external executables. Data is in simple Greenstone
     18               archive form (i.e. key/value pairs and separated by
     19               seventy hyphens) - this is a candidate for further
     20               separating out a PipedExecutableDriver.
    721      * GDBM - makes use of GDBM utils (txt2db, db2txt etc)
    822      * GDBMTXTGZ - makes use of gzip (for later use with GDBM)
Note: See TracChangeset for help on using the changeset viewer.