void RenamePrincipalHack(Configure configure)
 {
     #region 3to4RenamePrincipalHack
     var unicastBus = configure.UnicastBus();
     unicastBus.RunHandlersUnderIncomingPrincipal(true);
     #endregion
 }
Example #2
0
        void RenamePrincipalHack(Configure configure)
        {
            #region 3to4RenamePrincipalHack

            ConfigUnicastBus unicastBus = configure.UnicastBus();
            unicastBus.ImpersonateSender(true);

            #endregion
        }
        void Simple(Configure configure)
        {
            #region HandlerOrderingWithCode

            var configUnicastBus = configure.UnicastBus();
            configUnicastBus.LoadMessageHandlers(First<HandlerB>.Then<HandlerA>().AndThen<HandlerC>());

            #endregion
        }
        ForInstallationOn(Configure configure)
        {
            #region Installers

            ConfigUnicastBus configUnicastBus = configure.UnicastBus();
            IStartableBus startableBus = configUnicastBus.CreateBus();
            startableBus.Start(() => Configure.Instance.ForInstallationOn<Windows>().Install());

            #endregion
        }
        StaticHeaders(Configure configure)
        {
            #region header-static-endpoint

            using (IStartableBus startableBus = configure.UnicastBus().CreateBus())
            {
                startableBus.OutgoingHeaders.Add("AllOutgoing", "ValueAllOutgoing");

                #endregion
            }
        }
        PublishAtStartup(Configure configure)
        {
            #region publishAtStartup
            using (IStartableBus startableBus = configure.UnicastBus().CreateBus())
            {
                IBus bus = startableBus.Start(() => configure.ForInstallationOn<Windows>().Install());
                bus.Publish(new MyEvent());

                #endregion
            }

        }
 public void ConfigureBus(Configure config, string endpointName, IWindsorContainer container)
 {
     config.DefineEndpointName(endpointName);
     config.CastleWindsorBuilder(container);
     //config.UseNHibernateTimeoutPersister();
     config.UseNHibernateSubscriptionPersister();
     config.DisableTimeoutManager();
     config.DefiningCommandsAs(t => t.GetInterfaces().Contains(typeof(Contracts.ICommand)));
     config.DefiningEventsAs(t => t.GetInterfaces().Contains(typeof(Contracts.IEvent)));
     config.SetEndpointSLA(TimeSpan.FromSeconds(600));
     config.UnicastBus();
 }
        ConfigureSagaPersistence(Configure configure)
        {
            #region saga-configure

            Feature.Enable<Sagas>();
            configure.DefaultBuilder();
            configure.UseTransport<Msmq>();
            configure.UnicastBus();
            configure.RavenSagaPersister();

            #endregion
        }
Example #9
0
    static void Main()
    {
        Configure.Serialization.Json();
        Configure configure = Configure.With();

        configure.DefineEndpointName("Samples.Log4Net.Appender");

        #region ConfigureAppender
        configure.Log4Net <MyConsoleAppender>(appender => { appender.Color = ConsoleColor.Green; });
        #endregion
        configure.DefaultBuilder();
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        configure.UseTransport <Msmq>();
        IBus bus = configure.UnicastBus()
                   .CreateBus()
                   .Start(() => Configure.Instance.ForInstallationOn <Windows>().Install());

        bus.SendLocal(new MyMessage());

        Console.WriteLine("\r\nPress any key to stop program\r\n");
        Console.ReadKey();
    }
Example #10
0
    static void Main()
    {
        #region startbus
        Configure.Serialization.Json();
        Configure configure = Configure.With();
        configure.Log4Net();
        configure.DefineEndpointName("Samples.OwinPassThrough");
        configure.DefaultBuilder();
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        configure.UseTransport <Msmq>();
        using (IStartableBus startableBus = configure.UnicastBus().CreateBus())
        {
            IBus bus = startableBus.Start(() => configure.ForInstallationOn <Windows>().Install());
            using (StartOwinHost(bus))
            {
                Console.WriteLine("Press any key to exit");
                Console.ReadKey();
            }
        }

        #endregion
    }
Example #11
0
    static void Main()
    {
        Console.Title = "Samples.Scaleout.Server";
        Configure.Serialization.Json();

        #region server
        Configure configure = Configure.With();
        configure.Log4Net();
        configure.DefineEndpointName("Samples.Scaleout.Server");
        configure.DefaultBuilder();
        configure.RunMSMQDistributor(withWorker: false);
        #endregion
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        configure.UseTransport <Msmq>();
        using (IStartableBus startableBus = configure.UnicastBus().CreateBus())
        {
            startableBus.Start(() => configure.ForInstallationOn <Windows>().Install());

            Console.WriteLine("Press any key to exit");
            Console.ReadKey();
        }
    }
Example #12
0
    protected override void OnStart(string[] args)
    {
        #region logging
        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d %-5p %c - %m%n"
        };
        layout.ActivateOptions();
        ConsoleAppender appender = new ConsoleAppender
        {
            Layout    = layout,
            Threshold = Level.Info
        };
        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();
        #endregion

        #region create-config
        Configure configure = Configure.With();
        #endregion
        #region endpoint-name
        configure.DefineEndpointName("Samples.FirstEndpoint");
        #endregion

        #region container
        ContainerBuilder builder = new ContainerBuilder();
        //configure your custom services
        //builder.RegisterInstance(new MyService());
        IContainer container = builder.Build();
        configure.AutofacBuilder(container);
        #endregion

        #region serialization
        Configure.Serialization.Json();
        #endregion

        #region transport
        configure.UseTransport <Msmq>();
        #endregion

        #region sagas
        Configure.Features.Enable <Sagas>();
        #endregion

        #region persistence
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        #endregion

        #region critical-errors
        Configure.Instance.DefineCriticalErrorAction((errorMessage, exception) =>
        {
            // Log the critical error
            logger.Fatal(string.Format("CRITICAL: {0}", errorMessage), exception);

            // Kill the process on a critical error
            Environment.FailFast(string.Format("The following critical error was encountered by NServiceBus:\n{0}\nNServiceBus is shutting down.", errorMessage), exception);
        });
        #endregion

        #region start-bus
        bus = configure.UnicastBus()
              .CreateBus()
              .Start(() => configure.ForInstallationOn <Windows>().Install());
        #endregion
    }
    protected override void OnStart(string[] args)
    {
        #region logging
        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d %-5p %c - %m%n"
        };
        layout.ActivateOptions();
        ConsoleAppender appender = new ConsoleAppender
        {
            Layout    = layout,
            Threshold = Level.Info
        };
        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();
        #endregion

        #region create-config
        Configure configure = Configure.With();
        configure.DefineEndpointName("Samples.FirstEndpoint");
        #endregion

        #region container
        ContainerBuilder builder = new ContainerBuilder();
        //configure custom services
        //builder.RegisterInstance(new MyService());
        IContainer container = builder.Build();
        configure.AutofacBuilder(container);
        #endregion

        #region serialization
        configure.JsonSerializer();
        #endregion

        #region transport
        configure.MsmqTransport();
        #endregion

        #region sagas
        configure.Sagas();
        #endregion

        #region persistence
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        #endregion

        #region critical-errors
        Configure.Instance.DefineCriticalErrorAction(() =>
        {
            //Write log entry in version 3 since this is not done by default.
            logger.Fatal("CRITICAL Error");

            // Kill the process on a critical error
            string output = "Critical error was encountered by NServiceBus:\nNServiceBus is shutting down.";
            Environment.FailFast(output);
        });
        #endregion

        #region start-bus
        bus = configure.UnicastBus()
              .CreateBus()
              .Start(() => configure.ForInstallationOn <Windows>().Install());
        #endregion

        bus.SendLocal(new MyMessage());
    }
Example #14
0
    static void Main()
    {
        #region ConfigureLog4Net

        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d [%t] %-5p %c [%x] - %m%n"
        };
        layout.ActivateOptions();
        ColoredConsoleAppender consoleAppender = new ColoredConsoleAppender
        {
            Threshold = Level.Info,
            Layout    = layout
        };
        // Note that no consoleAppender.ActivateOptions(); is required since NSB 4 does this internally

        RollingFileAppender fileAppender = new RollingFileAppender
        {
            DatePattern        = "yyyy-MM-dd'.txt'",
            RollingStyle       = RollingFileAppender.RollingMode.Composite,
            MaxFileSize        = 10 * 1024 * 1024,
            MaxSizeRollBackups = 10,
            LockingModel       = new FileAppender.MinimalLock(),
            StaticLogFileName  = false,
            File         = @"nsblog2",
            Layout       = layout,
            AppendToFile = true,
            Threshold    = Level.Info,
        };
        // Note that no fileAppender.ActivateOptions(); is required since NSB 4 does this internally
        BasicConfigurator.Configure(fileAppender, consoleAppender);

        #endregion

        Configure.Serialization.Json();

        #region UseConfig

        Configure configure = Configure.With();
        configure.DefineEndpointName("Samples.Logging.Log4NetCustom");

        //Pass the appenders to NServiceBus
        configure.Log4Net(consoleAppender);
        configure.Log4Net(fileAppender);

        #endregion

        configure.DefaultBuilder();
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        configure.UseTransport <Msmq>();
        using (IStartableBus startableBus = configure.UnicastBus().CreateBus())
        {
            IBus bus = startableBus.Start(() => configure.ForInstallationOn <Windows>().Install());
            bus.SendLocal(new MyMessage());

            Console.WriteLine("\r\nPress any key to stop program\r\n");
            Console.ReadKey();
        }
    }