private void EndElement(string name) { //Assembly executingAssembly = Assembly.GetExecutingAssembly(); //Type type = executingAssembly.GetType("MGFramework." + name, false); Type type = Type.GetType("MGFramework." + name, false); if (type != _curClass) { if (CurrentDefinitionObject != null) { CurrentDefinitionObject.UndefinedElementDidFinish(name); } return; } CurrentDefinitionObject.DefinitionObjectDidFinishParsing(); if (CurrentDefinitionObject.ParentDefinitionObject != null) { CurrentDefinitionObject.ParentDefinitionObject.ChildDefinitionObjectDidFinishParsing( CurrentDefinitionObject); } CurrentDefinitionObject = CurrentDefinitionObject.ParentDefinitionObject; if (CurrentDefinitionObject != null) { _curClass = CurrentDefinitionObject.GetType(); _isCurrentElementDefined = true; return; } _curClass = null; _isCurrentElementDefined = false; }
public override void ChildDefinitionObjectDidFinishParsing(DefinitionObject childObject) { base.ChildDefinitionObjectDidFinishParsing(childObject); if (childObject.GetType() == typeof (PartState)) { var item = (PartState) childObject; PartStates.Add(item); } }
public virtual DefinitionObject InitWithParentObject(DefinitionObject parentObject) { ParentDefinitionObject = parentObject; return this; }
public virtual void ChildDefinitionObjectDidInit(DefinitionObject childObject) { }
public virtual void ChildDefinitionObjectDidFinishParsing(DefinitionObject childObject) { }
public virtual void ChildDefinitionObject(DefinitionObject childObject, string str) { }
public DefinitionObject() { ParentDefinitionObject = null; }
public DefinitionReader() { WebConnection = 0; CurrentDefinitionObject = null; _isCurrentElementDefined = false; }
private void StartElement(string name) { //Assembly executingAssembly = Assembly.GetExecutingAssembly(); //Type type = executingAssembly.GetType("MGFramework." + name, false); Type type = Type.GetType("MGFramework." + name, false); if (type != null) { var definitionObject = (DefinitionObject)Activator.CreateInstance(type); if (_isCurrentElementDefined) { definitionObject.InitWithParentObject(CurrentDefinitionObject); } definitionObject.DefinitionObjectDidInit(); if (definitionObject.ParentDefinitionObject != null) { definitionObject.ParentDefinitionObject.ChildDefinitionObjectDidInit(definitionObject); } _curClass = type; CurrentDefinitionObject = definitionObject; _isCurrentElementDefined = true; return; } _isCurrentElementDefined = false; if (CurrentDefinitionObject != null) { CurrentDefinitionObject.UndefinedElementDidStart(name); } }