BSky.Statistics.R.RService.ParseUASummary C# (CSharp) Method

ParseUASummary() public method

public ParseUASummary ( XmlNode parent, string objectName ) : void
parent System.Xml.XmlNode
objectName string
return void
        public void ParseUASummary(XmlNode parent, string objectName)
        {
            object data = null;
            if (!(bool)this._RServer.Evaluate("is.null(" + objectName + ")").AsLogical()[0])//"is.null( tmp )"
            {
                try
                {
                    if (int.Parse(this._RServer.Evaluate("length(" + objectName.Trim() + ")").AsInteger()[0].ToString()) >= 6)
                    {
                        if (!(bool)this._RServer.Evaluate("is.na(" + "names(" + objectName.Trim() + "[6])" + ")").AsLogical()[0])
                        {
                            if (this._RServer.Evaluate("names(" + objectName.Trim() + "[6])").AsCharacter()[0].ToString() == "uasummary")
                            {
                                data = this._RServer.Evaluate("length(" + objectName.Trim() + "[[6]])").AsInteger()[0];
                                int notesize = int.Parse(data.ToString());
                                //create node for UASummary
                                XmlElement xe_uas = parent.OwnerDocument.CreateElement("UASummary");
                                XmlElement xe_ual = parent.OwnerDocument.CreateElement("UAList");
                                XmlElement xe_str = null;
                                string innrtxt = string.Empty;
                                data = this._RServer.Evaluate(string.Format("{0}[[6]]", objectName)).AsCharacter().ToArray();///uasummary [[6]]
                                if (data.GetType().IsArray)
                                {
                                    object[] newarr = (object[])data;
                                    for (int i = 0; i < notesize; ++i)
                                    {
                                        //data = this._RServer.Evaluate(string.Format("{0}[[6]][[{1}]]", objectName, i));///uasummary [[6]]

                                        //NULL=-2146826288   NA= -2146826246
                                        if (newarr[i].ToString() == "-2146826288" ||
                                            newarr[i].ToString() == "-2146826246")
                                            innrtxt = string.Empty;
                                        else
                                            innrtxt = newarr[i].ToString();
                                        xe_str = parent.OwnerDocument.CreateElement("UAString");
                                        xe_str.InnerText = innrtxt;
                                        xe_ual.AppendChild(xe_str);
                                        xe_str = null;
                                    }
                                    xe_uas.AppendChild(xe_ual);
                                    parent.AppendChild(xe_uas);//finally adding to main DOM
                                }
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    logService.WriteToLogLevel("Could not parse:", LogLevelEnum.Error);
                }
            }
        }