/// <summary> /// Given a child node, returns the parent item's node reference as IdentifiedExtensionType (not the abstract ParentType). /// However, the returned node may be cast to ParentType and implements IParent /// </summary> /// <param name="childNode"></param> /// <returns></returns> public static IdentifiedExtensionType GetParentItem(BaseType childNode) { IdentifiedExtensionType parentItemNode = null; if (IdentifiedExtensionType.IdentExtNodes.TryGetValue(childNode.ParentItemID, out parentItemNode))//this is the parent of node { return(parentItemNode); } else //walk up the chain of SDC nodes to find the first ParentType (IParent) { BaseType testBT = childNode; //ParentType parentItem; while (parentItemNode == null && testBT.GetParentNode != null) { testBT = GetParentBaseNode(testBT); if (testBT == null) { return(null); } //no more parent nodes parentItemNode = testBT as ParentType; //see if the node can be cast to ParentType if (parentItemNode != null) { return(parentItemNode); } } return(parentItemNode); } }
/// Given a node, returns the parent item's node reference as IdentifiedExtensionType (not the abstract ParentType). /// However, the returned node may be cast to ParentType and implements IParent /// </summary> /// <param name="node"></param> /// <returns></returns> public static IdentifiedExtensionType GetParentItem(string parentItemID) { IdentifiedExtensionType parentItemNode = null; IdentifiedExtensionType.IdentExtNodes.TryGetValue(parentItemID, out parentItemNode);//this is the parent of node return(parentItemNode); }
/// <summary> /// Deserializes workflow markup into an IdentifiedExtensionType object /// </summary> /// <param name="input">string workflow markup to deserialize</param> /// <param name="obj">Output IdentifiedExtensionType object</param> /// <param name="exception">output Exception value if deserialize failed</param> /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns> public static bool Deserialize(string input, out IdentifiedExtensionType obj, out System.Exception exception) { exception = null; obj = default(IdentifiedExtensionType); try { obj = Deserialize(input); return(true); } catch (System.Exception ex) { exception = ex; return(false); } }
/// <summary> /// Deserializes xml markup from file into an IdentifiedExtensionType object /// </summary> /// <param name="fileName">string xml file to load and deserialize</param> /// <param name="obj">Output IdentifiedExtensionType object</param> /// <param name="exception">output Exception value if deserialize failed</param> /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns> public static bool LoadFromFile(string fileName, out IdentifiedExtensionType obj, out System.Exception exception) { exception = null; obj = default(IdentifiedExtensionType); try { obj = LoadFromFile(fileName); return(true); } catch (System.Exception ex) { exception = ex; return(false); } }
public static bool LoadFromFile(string fileName, out IdentifiedExtensionType obj) { System.Exception exception = null; return(LoadFromFile(fileName, out obj, out exception)); }
public static bool LoadFromFile(string fileName, out IdentifiedExtensionType obj, out System.Exception exception) { return(LoadFromFile(fileName, System.Text.Encoding.UTF8, out obj, out exception)); }
public static bool Deserialize(string input, out IdentifiedExtensionType obj) { System.Exception exception = null; return(Deserialize(input, out obj, out exception)); }