public void CanBindAllTypes()
        {
            IBinder binder = new MessageTypeBinder(new string[] { "*" });

            Assert.IsTrue(binder.CanBind(new TextMessage(MessageSeverity.Debug,
                                                         string.Empty, DateTime.Now, string.Empty)));
        }
        public void CanBindSpecificMessages()
        {
            IBinder binder = new MessageTypeBinder(new string[] { typeof(TextMessage).AssemblyQualifiedName });

            Assert.IsTrue(binder.CanBind(new TextMessage(MessageSeverity.Debug,
                                                         string.Empty, DateTime.Now, string.Empty)));
            Assert.IsFalse(binder.CanBind(new Message(MessageSeverity.CriticalError, string.Empty)));
        }
예제 #3
0
        /// <summary>
        /// Creates a binder for the given binding.
        /// </summary>
        /// <param name="binding"></param>
        /// <returns></returns>
        private static IBinder CreateBinder(BindingElement binding)
        {
            IBinder rootBinder = new MessageTypeBinder(GetMessageTypeNames(binding));

            IBinder sourceBinder = new SourceBinder(GetSources(binding));

            rootBinder.NextBinder = sourceBinder;

            IBinder severityBinder = new SeverityBinder(GetSeverities(binding));

            sourceBinder.NextBinder = severityBinder;

            return(rootBinder);
        }