private void BuildFormatters()
        {
            FormatterCollectionNodeBuilder builder    = new FormatterCollectionNodeBuilder(ServiceProvider, settings.Formatters);
            FormatterCollectionNode        formatters = builder.Build();

            BuildTraceListeners(formatters);
            node.AddNode(formatters);
        }
        private void BuildTraceListeners(FormatterCollectionNode formatters)
        {
            TraceListenerCollectionNodeBuilder builder   = new TraceListenerCollectionNodeBuilder(ServiceProvider, settings.TraceListeners, formatters);
            TraceListenerCollectionNode        listeners = builder.Build();

            BuildCategoryTraceSources(listeners);
            BuildSpecialTraceSources(listeners);
            node.AddNode(listeners);
        }
Example #3
0
        private void ResolveDefaultFormatterNodeReferences()
        {
            FormatterCollectionNode formatterCollectionNodes = Hierarchy.FindNodeByType(typeof(FormatterCollectionNode)) as FormatterCollectionNode;

            if (formatterCollectionNodes == null)
            {
                return;
            }
            DefaultFormatter = Hierarchy.FindNodeByName(formatterCollectionNodes, distributorSettings.DefaultFormatter) as FormatterNode;
        }
Example #4
0
        public void FormattersAddChildNodesTest()
        {
            FormatterCollectionNode node = new FormatterCollectionNode();

            GeneratedApplicationNode.Nodes.AddWithDefaultChildren(node);
            Assert.AreEqual(1, node.Nodes.Count);
            Assert.AreEqual(typeof(TextFormatterNode), node.Nodes[0].GetType());
            Assert.AreEqual(SR.DefaultFormatter, node.Nodes[0].Name);
            Assert.AreEqual(SR.DefaultTextFormat, ((TextFormatterNode)node.Nodes[0]).Template.Text);
        }
Example #5
0
        private void ResolveFormatterNode()
        {
            FormatterCollectionNode formatterCollectionNode = Hierarchy.FindNodeByType(typeof(FormatterCollectionNode)) as FormatterCollectionNode;

            if (formatterCollectionNode == null)
            {
                return;
            }
            Formatter = Hierarchy.FindNodeByName(formatterCollectionNode, this.destinationData.Format) as FormatterNode;
        }
Example #6
0
        /// <summary>
        /// Adds the <see cref="LoggingSettingsNode"/> and adds the default nodes.
        /// </summary>
        /// <param name="node">The <see cref="LoggingSettingsNode"/> added.</param>
        protected override void ExecuteCore(ConfigurationNode node)
        {
            base.ExecuteCore(node);
            LoggingSettingsNode loggingNode = ChildNode as LoggingSettingsNode;

            if (loggingNode == null)
            {
                return;
            }

            TextFormatterNode defaultTextFormatterNode = new TextFormatterNode();
            FormattedEventLogTraceListenerNode defaultTraceListenerNode = new FormattedEventLogTraceListenerNode();
            CategoryTraceSourceNode            generalCategoryNode      = new CategoryTraceSourceNode(new TraceSourceData(Resources.TraceSourceCategoryGeneral, SourceLevels.All));

            loggingNode.AddNode(new LogFilterCollectionNode());

            CategoryTraceSourceCollectionNode categoryTraceSourcesNode   = new CategoryTraceSourceCollectionNode();
            TraceListenerReferenceNode        generalCategoryListenerRef = new TraceListenerReferenceNode(new TraceListenerReferenceData(defaultTraceListenerNode.Name));

            categoryTraceSourcesNode.AddNode(generalCategoryNode);
            generalCategoryNode.AddNode(generalCategoryListenerRef);
            generalCategoryListenerRef.ReferencedTraceListener = defaultTraceListenerNode;
            loggingNode.AddNode(categoryTraceSourcesNode);

            SpecialTraceSourcesNode    specialTraceSourcesNode          = new SpecialTraceSourcesNode();
            ErrorsTraceSourceNode      errorsTraceSourcesNode           = new ErrorsTraceSourceNode(new TraceSourceData());
            TraceListenerReferenceNode errorsTraceListenerReferenceNode = new TraceListenerReferenceNode();

            errorsTraceSourcesNode.AddNode(errorsTraceListenerReferenceNode);
            errorsTraceListenerReferenceNode.ReferencedTraceListener = defaultTraceListenerNode;
            specialTraceSourcesNode.AddNode(errorsTraceSourcesNode);
            specialTraceSourcesNode.AddNode(new NotProcessedTraceSourceNode(new TraceSourceData()));
            specialTraceSourcesNode.AddNode(new AllTraceSourceNode(new TraceSourceData()));
            loggingNode.AddNode(specialTraceSourcesNode);

            TraceListenerCollectionNode traceListenerCollectionNode = new TraceListenerCollectionNode();

            traceListenerCollectionNode.AddNode(defaultTraceListenerNode);
            defaultTraceListenerNode.Formatter = defaultTextFormatterNode;
            loggingNode.AddNode(traceListenerCollectionNode);

            FormatterCollectionNode formattersNode = new FormatterCollectionNode();

            formattersNode.AddNode(defaultTextFormatterNode);
            loggingNode.AddNode(formattersNode);


            loggingNode.DefaultCategory = generalCategoryNode;
            loggingNode.LogWarningWhenNoCategoriesMatch = true;
            loggingNode.TracingEnabled = true;

            ServiceHelper.GetUIService(serviceProvider).RefreshPropertyGrid();
        }
Example #7
0
        private void BuilFormatters()
        {
            FormatterCollectionNode formatterCollectionNode = (FormatterCollectionNode)hierarchy.FindNodeByType(loggingSettingsNode, typeof(FormatterCollectionNode));

            if (formatterCollectionNode != null)
            {
                foreach (FormatterNode formatterNode in formatterCollectionNode.Nodes)
                {
                    loggingSettings.Formatters.Add(formatterNode.FormatterData);
                }
            }
        }
Example #8
0
        /// <summary>
        /// Adds the following nodes: <see cref="SinkCollectionNode"/>, <see cref="FormatterCollectionNode"/>, and <see cref="CategoryCollectionNode"/>.
        /// </summary>
        protected override void AddDefaultChildNodes()
        {
            base.AddDefaultChildNodes();
            SinkCollectionNode sinksNode = new SinkCollectionNode();

            Nodes.AddWithDefaultChildren(sinksNode);
            FormatterCollectionNode fomattersNode = new FormatterCollectionNode();

            Nodes.AddWithDefaultChildren(fomattersNode);
            CategoryCollectionNode cateogoriesNode = new CategoryCollectionNode();

            Nodes.AddWithDefaultChildren(cateogoriesNode);
        }
Example #9
0
        public void RuntimeTest()
        {
            GeneratedHierarchy.Open();
            Assert.AreEqual(0, ConfigurationErrorsCount);

            ConfigurationContext builder = GeneratedHierarchy.ConfigurationContext;

            if (builder.IsValidSection(DistributorSettings.SectionName))
            {
                DistributorSettings distributorSettings = builder.GetConfiguration(DistributorSettings.SectionName) as DistributorSettings;
                if (distributorSettings != null)
                {
                    DistributorSettingsNode distributorSettingsNode = new DistributorSettingsNode(distributorSettings);
                    foreach (ConfigurationNode node in distributorSettingsNode.Nodes)
                    {
                        if (node is SinkCollectionNode)
                        {
                            SinkCollectionNode sinkCollectionNode = (SinkCollectionNode)node;
                            Assert.AreEqual(4, sinkCollectionNode.SinkDataCollection.Count);
                        }
                        else if (node is FormatterCollectionNode)
                        {
                            FormatterCollectionNode formatterCollectionNode = (FormatterCollectionNode)node;
                            Assert.AreEqual(4, formatterCollectionNode.FormatterDataCollection.Count);
                        }
                        else if (node is CategoryCollectionNode)
                        {
                            CategoryCollectionNode categoryCollectionNode = (CategoryCollectionNode)node;
                            Assert.AreEqual(2, categoryCollectionNode.CategoryDataCollection.Count);
                        }
                    }

                    MsmqDistributorServiceNode msmqNode =
                        new MsmqDistributorServiceNode(distributorSettings.DistributorService);
                    Assert.IsNotNull(msmqNode.MsmqPath);
                }
                else
                {
                    Assert.Fail(String.Format("Can not load section: {0}", DistributorSettings.SectionName));
                }
            }
        }
Example #10
0
        private void GetFormatters()
        {
            FormatterCollectionNode formatterCollectionNode = Hierarchy.FindNodeByType(this, typeof(FormatterCollectionNode)) as FormatterCollectionNode;

            if (formatterCollectionNode == null)
            {
                return;
            }

            FormatterDataCollection formatters = formatterCollectionNode.FormatterDataCollection;

            if (Object.ReferenceEquals(distributorSettings.Formatters, formatters))
            {
                return;
            }

            distributorSettings.Formatters.Clear();
            foreach (FormatterData formatterData in formatters)
            {
                distributorSettings.Formatters[formatterData.Name] = formatterData;
            }
        }
 public TraceListenerCollectionNodeBuilder(IServiceProvider serviceProvider, TraceListenerDataCollection listeners, FormatterCollectionNode formatters)
     : base(serviceProvider)
 {
     this.listeners  = listeners;
     this.formatters = formatters;
 }
Example #12
0
 public FormatterCollectionNode Build()
 {
     node = new FormatterCollectionNode();
     formatters.ForEach(new Action <FormatterData>(CreateFormatterNode));
     return(node);
 }