public void SetUp()
        {
            Builder = new FuncBuilder();
            InMemoryFaultManager = new Faults.InMemory.FaultManager();
            FakeReceiver = new FakeReceiver();

            Transport = new TransportReceiver
                {
                    Receiver = FakeReceiver,
                    TransactionSettings = TransactionSettings.Default
                };

            Configure.With(new Assembly[0])
                .DefineEndpointName("Test")
                .DefaultBuilder();
            Configure.Instance.Builder = Builder;

            RegisterTypes();
            Builder.Register<IManageMessageFailures>(() => InMemoryFaultManager);
            Builder.Register<TransportReceiver>(() => Transport);

            var configurer = new SatelliteConfigurer();
            configurer.Init();

            var launcher = new SatelliteLauncher();

            BeforeRun();
            launcher.Start();
        }
        public void SetUp()
        {
            Builder = new FuncBuilder();
            InMemoryFaultManager = new NServiceBus.Faults.InMemory.FaultManager();
            FakeReceiver = new FakeReceiver();

            var configurationBuilder = new BusConfiguration();

            configurationBuilder.EndpointName("xyz");
            configurationBuilder.AssembliesToScan(new Assembly[0]);

            Transport = new TransportReceiver(new TransactionSettings(true, TimeSpan.FromSeconds(30), IsolationLevel.ReadCommitted, 5, false, false), 1, 0, FakeReceiver, InMemoryFaultManager, new SettingsHolder(), configurationBuilder.BuildConfiguration());

            RegisterTypes();
            Builder.Register<IManageMessageFailures>(() => InMemoryFaultManager);
            Builder.Register<TransportReceiver>(() => Transport);

            //var configurer = new SatelliteConfigurer();
            //configurer.Customize(configure);

            var launcher = new SatelliteLauncher(Builder);

            BeforeRun();
            launcher.Start();
        }
        public void SetUp()
        {
            Builder = new FuncBuilder();
            InMemoryFaultManager = new Faults.InMemory.FaultManager();
            FakeReceiver         = new FakeReceiver();

            Transport = new TransportReceiver
            {
                Receiver            = FakeReceiver,
                TransactionSettings = TransactionSettings.Default
            };

            Configure.With(new Assembly[0])
            .DefineEndpointName("Test")
            .DefaultBuilder();
            Configure.Instance.Builder = Builder;

            RegisterTypes();
            Builder.Register <IManageMessageFailures>(() => InMemoryFaultManager);
            Builder.Register <TransportReceiver>(() => Transport);

            var configurer = new SatelliteConfigurer();

            configurer.Init();

            var launcher = new SatelliteLauncher
            {
                Builder = Builder,
            };

            BeforeRun();
            launcher.Start();
        }
        public void SetUp()
        {
            Builder = new FuncBuilder();
            InMemoryFaultManager = new Faults.InMemory.FaultManager();
            FakeReceiver         = new FakeReceiver();

            var configurationBuilder = new BusConfiguration();

            configurationBuilder.EndpointName("xyz");
            configurationBuilder.AssembliesToScan(new Assembly[0]);

            Transport = new TransportReceiver(new TransactionSettings(true, TimeSpan.FromSeconds(30), IsolationLevel.ReadCommitted, 5, false, false), 1, 0, FakeReceiver, InMemoryFaultManager, new SettingsHolder(), configurationBuilder.BuildConfiguration());

            RegisterTypes();
            Builder.Register <IManageMessageFailures>(() => InMemoryFaultManager);
            Builder.Register <TransportReceiver>(() => Transport);

            //var configurer = new SatelliteConfigurer();
            //configurer.Customize(configure);

            var launcher = new SatelliteLauncher(Builder);

            BeforeRun();
            launcher.Start();
        }
Exemple #5
0
        /// <summary>
        /// <see cref="IStartableBus.Start()"/>
        /// </summary>
        public IBus Start()
        {
            LicenseManager.PromptUserForLicenseIfTrialHasExpired();

            if (started)
            {
                return(this);
            }

            lock (startLocker)
            {
                if (started)
                {
                    return(this);
                }

                AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);

                if (!DoNotStartTransport)
                {
                    Transport.StartedMessageProcessing  += TransportStartedMessageProcessing;
                    Transport.TransportMessageReceived  += TransportMessageReceived;
                    Transport.FinishedMessageProcessing += TransportFinishedMessageProcessing;
                    Transport.Start(InputAddress);
                }

                started = true;
            }

            satelliteLauncher = new SatelliteLauncher(Builder);
            satelliteLauncher.Start();

            ProcessStartupItems(
                Builder.BuildAll <IWantToRunWhenBusStartsAndStops>().ToList(),
                toRun =>
            {
                toRun.Start();
                thingsRanAtStartup.Add(toRun);
                Log.DebugFormat("Started {0}.", toRun.GetType().AssemblyQualifiedName);
            },
                ex => CriticalError.Raise("Startup task failed to complete.", ex),
                startCompletedEvent);

            return(this);
        }
Exemple #6
0
        public IBus Start(Action startupAction)
        {
            LicenseManager.PromptUserForLicenseIfTrialHasExpired();

            if (started)
            {
                return(this);
            }

            lock (startLocker)
            {
                if (started)
                {
                    return(this);
                }

                starting = true;

                Address.PreventChanges();

                ValidateConfiguration();

                if (startupAction != null)
                {
                    startupAction();
                }

                AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);


                if (!DoNotStartTransport)
                {
                    transport.Start(InputAddress);
                }

                started = true;
            }

            if (Started != null)
            {
                Started(this, null);
            }

            satelliteLauncher = new SatelliteLauncher {
                Builder = Builder
            };
            satelliteLauncher.Start();

            thingsToRunAtStartup = Builder.BuildAll <IWantToRunWhenBusStartsAndStops>().ToList();

            thingsToRunAtStartupTask = thingsToRunAtStartup.Select(toRun => Task.Factory.StartNew(() =>
            {
                var name = toRun.GetType().AssemblyQualifiedName;

                try
                {
                    Log.DebugFormat("Starting {0}.", name);
                    toRun.Start();
                    Log.DebugFormat("Started {0}.", name);
                }
                catch (Exception ex)
                {
                    Log.ErrorFormat("{0} could not be started.", ex, name);
                    //don't rethrow so that thread doesn't die before log message is shown.
                }
            }, TaskCreationOptions.LongRunning)).ToArray();

            return(this);
        }
Exemple #7
0
        public IBus Start(Action startupAction)
        {
            LicenseManager.PromptUserForLicenseIfTrialHasExpired();

            if (started)
            {
                return(this);
            }

            lock (startLocker)
            {
                if (started)
                {
                    return(this);
                }

                Address.PreventChanges();

                if (startupAction != null)
                {
                    startupAction();
                }

                AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);

                if (!DoNotStartTransport)
                {
                    transport.StartedMessageProcessing  += TransportStartedMessageProcessing;
                    transport.TransportMessageReceived  += TransportMessageReceived;
                    transport.FinishedMessageProcessing += TransportFinishedMessageProcessing;
                    transport.FailedMessageProcessing   += TransportFailedMessageProcessing;
                    transport.Start(InputAddress);
                }

                started = true;
            }

            if (Started != null)
            {
                Started(this, null);
            }

            satelliteLauncher = new SatelliteLauncher {
                Builder = Builder
            };
            satelliteLauncher.Start();

            thingsToRunAtStartup = Builder.BuildAll <IWantToRunWhenBusStartsAndStops>().ToList();

            thingsToRunAtStartupTask = thingsToRunAtStartup.Select(toRun => Task.Factory.StartNew(() =>
            {
                var name = toRun.GetType().AssemblyQualifiedName;

                try
                {
                    toRun.Start();
                    Log.DebugFormat("Started {0}.", name);
                }
                catch (Exception ex)
                {
                    Configure.Instance.RaiseCriticalError(String.Format("{0} could not be started.", name), ex);
                }
            }, TaskCreationOptions.LongRunning)).ToArray();

            return(this);
        }