Mono.Debugger.DebuggerSession.LoadEvents C# (CSharp) Method

LoadEvents() protected method

protected LoadEvents ( XPathNodeIterator event_iter ) : void
event_iter System.Xml.XPath.XPathNodeIterator
return void
        protected void LoadEvents(XPathNodeIterator event_iter)
        {
            while (event_iter.MoveNext ()) {
                if (event_iter.Current.Name != "Breakpoint")
                    throw new InternalError ();

                int index = Int32.Parse (event_iter.Current.GetAttribute ("index", ""));
                bool enabled = Boolean.Parse (event_iter.Current.GetAttribute ("enabled", ""));

                string gname = event_iter.Current.GetAttribute ("threadgroup", "");
                ThreadGroup group;
                if (gname == "system")
                    group = ThreadGroup.System;
                else if (gname == "global")
                    group = ThreadGroup.Global;
                else
                    group = CreateThreadGroup (gname);

                Event e = null;

                XPathNodeIterator children = event_iter.Current.SelectChildren (
                    XPathNodeType.Element);

                if (!children.MoveNext ())
                    throw new InternalError ();
                e = ParseEvent (children.Current, index, group);
                if (children.MoveNext ())
                    throw new InternalError ();

                e.IsEnabled = enabled;
                AddEvent (e);
            }
        }