Changeset 122 for branches/XmlTextReaderBranch/HeuristicLab.Core/Scope.cs
- Timestamp:
- 04/15/08 14:17:26 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/XmlTextReaderBranch/HeuristicLab.Core/Scope.cs
r121 r122 313 313 //} 314 314 public override void Populate(XmlReader reader, IDictionary<Guid, IStorable> restoredObjects) { 315 myName = reader["Name"]; 315 316 base.Populate(reader, restoredObjects); 316 myName = reader["Name"]; 317 318 reader.ReadStartElement("Variables"); 319 while(reader.IsStartElement()) { 320 IVariable variable = (IVariable)PersistenceManager.Restore(reader, restoredObjects); 321 AddVariable(variable); 322 } 323 reader.ReadEndElement(); 324 325 if(reader.IsStartElement() && reader.Name=="Aliases") { 326 reader.ReadStartElement("Aliases"); 327 while(reader.IsStartElement()) 317 reader.Read(); 318 if(reader.Name != "Variables") throw new XmlException("Expected: \"Variables\", found: \""+reader.Name+"\""); 319 if(!reader.IsEmptyElement) { 320 reader.Read(); 321 while(reader.IsStartElement()) { 322 IVariable variable = (IVariable)PersistenceManager.Restore(reader, restoredObjects); 323 reader.Skip(); 324 AddVariable(variable); 325 } 326 reader.ReadEndElement(); 327 } else { 328 reader.Read(); 329 } 330 if(reader.Name == "Aliases" && !reader.IsEmptyElement) { 331 reader.Read(); 332 while(reader.IsStartElement()) { 328 333 AddAlias(reader["Alias"], reader["Name"]); 334 } 329 335 reader.ReadEndElement(); 330 } 331 reader.ReadStartElement("SubScopes"); 332 while(reader.IsStartElement()) { 333 IScope scope = (IScope)PersistenceManager.Restore(reader, restoredObjects); 334 AddSubScope(scope); 335 } 336 reader.ReadEndElement(); 336 } else { 337 reader.Read(); 338 } 339 if(reader.Name != "SubScopes") throw new XmlException("Expected: \"SubScopes\", found: \"" + reader.Name + "\""); 340 if(!reader.IsEmptyElement) { 341 reader.Read(); 342 while(reader.IsStartElement()) { 343 IScope scope = (IScope)PersistenceManager.Restore(reader, restoredObjects); 344 reader.Skip(); 345 AddSubScope(scope); 346 } 347 reader.ReadEndElement(); 348 } else { 349 reader.Read(); 350 } 337 351 } 338 352 #endregion
Note: See TracChangeset
for help on using the changeset viewer.