Ignore:
Timestamp:
2010-09-27T14:12:13+13:00 (14 years ago)
Author:
sjm84
Message:

Added the ability to change the database type between GDBM, JDBM and SQLite

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/gli/src/org/greenstone/gatherer/cdm/CollectionConfigXMLReadWrite.java

    r22381 r22970  
    991991    return element;
    992992  }
     993 
     994  static private Element doDatabaseType (Document to, String att_value) {
     995       
     996    //construct 'DatabaseType' element
     997    Element element = to.createElement (StaticStrings.DATABASETYPE_ELEMENT);
     998    element.setAttribute (StaticStrings.NAME_ATTRIBUTE, StaticStrings.DATABASETYPE_STR);
     999    element.setAttribute (StaticStrings.LANGUAGE_ATTRIBUTE, StaticStrings.ENGLISH_LANGUAGE_STR);
     1000    element.setAttribute (StaticStrings.ASSIGNED_ATTRIBUTE, StaticStrings.TRUE_STR);
     1001    element.setAttribute (StaticStrings.SPECIAL_ATTRIBUTE, StaticStrings.TRUE_STR);
     1002
     1003    XMLTools.setNodeText (element, att_value);
     1004       
     1005    return element;
     1006  }
    9931007   
    9941008  // Convert 'description', 'smallicon' etc.
     
    13151329    search.setAttribute (StaticStrings.TYPE_ATTRIBUTE, indexer);
    13161330    to.getDocumentElement ().appendChild (search);
     1331  }
     1332  static private void convertDatabaseType (Document from, Document to) {
     1333    Element e = XMLTools.getNamedElement (from.getDocumentElement (),
     1334                      StaticStrings.DATABASETYPE_ELEMENT,
     1335                      StaticStrings.NAME_ATTRIBUTE, StaticStrings.DATABASETYPE_STR);
     1336    if (e == null) {
     1337      return;
     1338    }
     1339    String db = XMLTools.getNodeText (e);
     1340    Element dbtype = to.createElement (StaticStrings.INFODB_STR);
     1341    dbtype.setAttribute (StaticStrings.TYPE_ATTRIBUTE, db);
     1342    to.getDocumentElement ().appendChild (dbtype);
    13171343  }
    13181344  static private void convertDefaultIndex (Document from, Document to, Element search) {
     
    19571983      appendArrayList (toElement, is_public);
    19581984    }
     1985
     1986    Node databaseNode = XMLTools.getChildByTagNameIndexed (fromElement, StaticStrings.INFODB_STR, 0);
     1987    String databasetype_value = ((Element)databaseNode).getAttribute (StaticStrings.TYPE_ATTRIBUTE);
     1988    Element databasetype = doDatabaseType(dOc, databasetype_value);
     1989    appendProperly (toElement, databasetype);
    19591990       
    19601991    Node searchNode = XMLTools.getChildByTagNameIndexed (fromElement, StaticStrings.SEARCH_STR, 0);
     
    20582089    convertDisplayItemList (dOc, skeleton);
    20592090    convertBuildType (dOc, skeleton);
     2091    convertDatabaseType (dOc, skeleton);
    20602092    convertIndex (dOc, skeleton);
    20612093    convertPlugin (dOc, skeleton);//also do the plugout element
Note: See TracChangeset for help on using the changeset viewer.