private void msgview_erase_Click(object sender, System.EventArgs e)
        {
            MessageTreeNode node = null;

            try
            {
                node = (MessageTreeNode)this.messages.SelectedNode;
            }
            catch { return; }

            string key    = null;
            string theKey = node.msg.KeyOid;

            if (theKey == null || theKey == string.Empty)
            {
                theKey = node.msg.KeyQuery;
                if (theKey == null || theKey == string.Empty)
                {
                    logger.Error("Could not compute the OID for this message. Erase aborted.");
                    return;
                }
                key = "<key oid='' queryType='XPATH'>" + theKey + "</key>";
            }
            else
            {
                key = "<key oid=\"" + theKey + "\" />\n";
            }

            QosErase qos = new QosErase();

            this.xmlBlaster.Erase(key, qos.ToString());
        }
Ejemplo n.º 2
0
        private static void DisplayRegisterOnTreeView(DataTree message, TreeView tree, string rootName = "")
        {
            tree.Nodes.Clear();

            dynamic root = new MessageTreeNode(rootName);

            tree.Nodes.Add(root);

            RecursivelyDisplayMessageAsTreeNodes(message, root);
            tree.ExpandAll();
        }
        public void messagesFill(MessageUnit[] msgs)
        {
            string me = "messagesFill()";

            logger.Debug(me);

            //System.Threading.Monitor.Enter(this.messages);
            //try
            //{
            lock (this.messages)
            {
                logger.Debug("{0} entering lock", me);
                try
                {
                    //messages.BeginUpdate();
                    foreach (MessageUnit msg in msgs)
                    {
                        MessageTreeNode mtn       = new MessageTreeNode(msg);
                        MessageTreeNode topicNode = SearchForLabel(mtn.Text);
                        if (topicNode == null)
                        {
                            logger.Debug("messagesFill() new topic: " + mtn.Text);
                            messages.Nodes.Add(mtn);
                        }
                        else
                        {
                            logger.Debug("messagesFill() add message to topic: " + mtn.Text);
                            topicNode.Nodes.Add(mtn);
                        }
                    }
                    //messages.EndUpdate();
                }
                catch (Exception ex)
                {
                    logger.Error("{0} Failed: {1}", me, ex.Message);
                }
                logger.Debug("{0} releasing lock", me);
            }
            //}
            //finally
            //{
            // Always use Finally to ensure that you exit the Monitor.
            // The following line creates another object containing
            // the value of x, and throws SynchronizationLockException
            // because the two objects do not match.
            //	System.Threading.Monitor.Exit(this.messages);
            //}
        }
Ejemplo n.º 4
0
        private static void RecursivelyDisplayMessageAsTreeNodes(DataTree message, TreeNode parentNode)
        {
            foreach (DataTree dataTreeNode in message)
            {
                string itemString = dataTreeNode.Name;
                if (!string.IsNullOrEmpty(Convert.ToString(dataTreeNode)))
                {
                    itemString += ": " + dataTreeNode.Value;
                }

                var displayTreeNode = new MessageTreeNode(itemString);
                displayTreeNode.TreeName = dataTreeNode.Name;

                parentNode.Nodes.Add(displayTreeNode);
                RecursivelyDisplayMessageAsTreeNodes(dataTreeNode, displayTreeNode);
            }
        }
 public void AddChild(MessageTreeNode childNode)
 {
     children.Add(childNode);
 }
Ejemplo n.º 6
0
 public void AddChild(MessageTreeNode childNode)
 {
     children.Add(childNode);
 }