Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/15/08 15:57:41 (16 years ago)
Author:
gkronber
Message:

fixed more bugs (not thoroughly tested but at least it works for OSGP_NOx and OSGA_TSP)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/XmlTextReaderBranch/HeuristicLab.Core/OperatorGroup.cs

    r122 r123  
    111111      myName = reader["Name"];
    112112      base.Populate(reader, restoredObjects);
    113 
    114       reader.ReadToDescendant("SubGroups");
    115       while(reader.IsStartElement())
    116         AddSubGroup((IOperatorGroup)PersistenceManager.Restore(reader, restoredObjects));
    117       reader.ReadEndElement();
    118       reader.ReadToDescendant("Operators");
    119       while(reader.IsStartElement())
    120         AddOperator((IOperator)PersistenceManager.Restore(reader, restoredObjects));
    121       reader.ReadEndElement();
     113      reader.Read();
     114      if(reader.Name != "SubGroups") throw new XmlException("Expected: \"SubGroups\", found: \"" + reader.Name + "\"");
     115      if(!reader.IsEmptyElement) {
     116        reader.Read();
     117        while(reader.IsStartElement()) {
     118          AddSubGroup((IOperatorGroup)PersistenceManager.Restore(reader, restoredObjects));
     119          reader.Skip();
     120        }
     121        reader.ReadEndElement();
     122      } else {
     123        reader.Read();
     124      }
     125      if(reader.Name != "Operators") throw new XmlException("Expected: \"Operators\", found: \"" + reader.Name + "\"");
     126      if(!reader.IsEmptyElement) {
     127        reader.Read();
     128        while(reader.IsStartElement()) {
     129          AddOperator((IOperator)PersistenceManager.Restore(reader, restoredObjects));
     130          reader.Skip();
     131        }
     132        reader.ReadEndElement();
     133      } else {
     134        reader.Read();
     135      }
    122136    }
    123137    #endregion
Note: See TracChangeset for help on using the changeset viewer.