public AO(string aiName, List <KeyValuePair <string, string> > aiData, TreeNode tn, MasterTypes mType, int mNo, int iNo) { string strRoutineName = "AO"; try { masterType = mType; masterNo = mNo; IEDNo = iNo; SetSupportedAttributes(); SetSupportedResponseTypes(); SetSupportedDataTypes(); try { ainType = (aoType)Enum.Parse(typeof(aoType), aiName); } catch (System.ArgumentException) { Utils.WriteLine(VerboseLevel.WARNING, "Enum argument {0} not supported!!!", aiName); } if (aiData != null && aiData.Count > 0) { foreach (KeyValuePair <string, string> aikp in aiData) { Utils.Write(VerboseLevel.DEBUG, "{0} {1} ", aikp.Key, aikp.Value); try { if (this.GetType().GetProperty(aikp.Key) != null) //Ajay: 10/08/2018 { this.GetType().GetProperty(aikp.Key).SetValue(this, aikp.Value); } } catch (System.NullReferenceException) { Utils.WriteLine(VerboseLevel.WARNING, "Field doesn't exist. XML and class fields mismatch!!! key: {0} value: {1}", aikp.Key, aikp.Value); } } Utils.Write(VerboseLevel.DEBUG, "\n"); } } catch (Exception ex) { MessageBox.Show(strRoutineName + ": " + "Error: " + ex.Message.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public AO(string aiName, List <KeyValuePair <string, string> > aiData, TreeNode tn, MasterTypes mType, int mNo, int iNo) { string strRoutineName = "AO"; try { masterType = mType; masterNo = mNo; IEDNo = iNo; SetSupportedAttributes(); SetSupportedResponseTypes(); SetSupportedDataTypes(); try { ainType = (aoType)Enum.Parse(typeof(aoType), aiName); } catch (System.ArgumentException) { } if (aiData != null && aiData.Count > 0) { foreach (KeyValuePair <string, string> aikp in aiData) { try { if (this.GetType().GetProperty(aikp.Key) != null) //Ajay: 03/07/2018 { this.GetType().GetProperty(aikp.Key).SetValue(this, aikp.Value); } } catch (System.NullReferenceException) { } } } } catch (Exception ex) { MessageBox.Show(strRoutineName + ": " + "Error: " + ex.Message.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public AO(XmlNode aiNode, MasterTypes mType, int mNo, int iNo, bool imported) { string strRoutineName = "AO"; try { masterType = mType; masterNo = mNo; IEDNo = iNo; SetSupportedAttributes(); SetSupportedResponseTypes(); SetSupportedDataTypes(); Utils.WriteLine(VerboseLevel.DEBUG, "aoNode name: '{0}'", aiNode.Name); if (aiNode.Attributes != null) { try { ainType = (aoType)Enum.Parse(typeof(aoType), aiNode.Name); } catch (System.ArgumentException) { Utils.WriteLine(VerboseLevel.WARNING, "Enum argument {0} not supported!!!", aiNode.Name); } if (masterType == MasterTypes.ADR || masterType == MasterTypes.IEC101 || masterType == MasterTypes.IEC103 || masterType == MasterTypes.MODBUS || masterType == MasterTypes.Virtual) { foreach (XmlAttribute item in aiNode.Attributes) { Utils.Write(VerboseLevel.DEBUG, "{0} {1} ", item.Name, item.Value); try { if (this.GetType().GetProperty(item.Name) != null) //Ajay: 10/08/2018 { this.GetType().GetProperty(item.Name).SetValue(this, item.Value); } } catch (System.NullReferenceException) { Utils.WriteLine(VerboseLevel.WARNING, "Field doesn't exist. XML and class fields mismatch!!! key: {0} value: {1}", item.Name, item.Value); } } } //Namrata: 21/04/2018 // If master Type is IEC61850Client if (masterType == MasterTypes.IEC61850Client) { if (aiNode.Name == "AO") { foreach (XmlAttribute xmlattribute in aiNode.Attributes) { Utils.Write(VerboseLevel.DEBUG, "{0} {1} ", xmlattribute.Name, xmlattribute.Value); try { if (xmlattribute.Name == "ResponseType") { Iec61850ResponseType = aiNode.Attributes[1].Value; } else if (xmlattribute.Name == "Index") { Iec61850Index = aiNode.Attributes[2].Value; } else if (xmlattribute.Name == "FC") { fc = aiNode.Attributes[3].Value; } else { if (this.GetType().GetProperty(xmlattribute.Name) != null) //Ajay: 10/08/2018 { this.GetType().GetProperty(xmlattribute.Name).SetValue(this, xmlattribute.Value); } } } catch (System.NullReferenceException) { Utils.WriteLine(VerboseLevel.WARNING, "DI: Field doesn't exist. XML and class fields mismatch!!! key: {0} value: {1}", xmlattribute.Name, xmlattribute.Value); } } } } Utils.Write(VerboseLevel.DEBUG, "\n"); } else if (aiNode.NodeType == XmlNodeType.Comment) { isNodeComment = true; comment = aiNode.Value; } if (imported)//Generate a new unique id... { this.AONo = (Globals.AONo + 1).ToString(); if (masterType == MasterTypes.IEC103) { //Commented as asked by Amol, 29 / 12 / 2k16: //this.Index = (Globals.AIIndex + 1).ToString(); } else if (masterType == MasterTypes.ADR) { //Commented as asked by Amol, 29/12/2k16: this.Index = (Globals.AIIndex + 1).ToString(); } else if (masterType == MasterTypes.MODBUS) { //Commented as asked by Amol, 29 / 12 / 2k16: this.Index = (Globals.AIIndex + 1).ToString(); } } } catch (Exception Ex) { MessageBox.Show(strRoutineName + ": " + "Error: " + Ex.Message.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public AO(XmlNode aiNode, MasterTypes mType, int mNo, int iNo, bool imported) { string strRoutineName = "AO"; try { masterType = mType; masterNo = mNo; IEDNo = iNo; SetSupportedAttributes(); SetSupportedResponseTypes(); SetSupportedDataTypes(); if (aiNode.Attributes != null) { try { ainType = (aoType)Enum.Parse(typeof(aoType), aiNode.Name); } catch (System.ArgumentException) { } if (masterType == MasterTypes.ADR || masterType == MasterTypes.IEC101 || masterType == MasterTypes.IEC103 || masterType == MasterTypes.MODBUS || masterType == MasterTypes.Virtual || masterType == MasterTypes.IEC104 || masterType == MasterTypes.LoadProfile) //Ajay: 31/07/2018 LoadProfile added { foreach (XmlAttribute item in aiNode.Attributes) { try { if (this.GetType().GetProperty(item.Name) != null) //Ajay: 03/07/2018 { this.GetType().GetProperty(item.Name).SetValue(this, item.Value); } } catch (System.NullReferenceException) { } } } //Namrata: 21/04/2018 #region If master Type is IEC61850Client if (masterType == MasterTypes.IEC61850Client) { if (aiNode.Name == "AO") { foreach (XmlAttribute xmlattribute in aiNode.Attributes) { Utils.Write(VerboseLevel.DEBUG, "{0} {1} ", xmlattribute.Name, xmlattribute.Value); try { if (xmlattribute.Name == "ResponseType") { Iec61850ResponseType = aiNode.Attributes[1].Value; } else if (xmlattribute.Name == "Index") { Iec61850Index = aiNode.Attributes[2].Value; } else if (xmlattribute.Name == "FC") { fc = aiNode.Attributes[3].Value; } else { if (this.GetType().GetProperty(xmlattribute.Name) != null) //Ajay: 03/07/2018 { this.GetType().GetProperty(xmlattribute.Name).SetValue(this, xmlattribute.Value); } } } catch (System.NullReferenceException) { } } } } #endregion If master Type is IEC61850Client } else if (aiNode.NodeType == XmlNodeType.Comment) { isNodeComment = true; comment = aiNode.Value; } if (imported)//Generate a new unique id... { this.AONo = (Globals.AONo + 1).ToString(); } } catch (Exception Ex) { MessageBox.Show(strRoutineName + ": " + "Error: " + Ex.Message.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } }