Exemplo n.º 1
0
        private static void Main(string[] args)
        {
#if DEBUG
            // Run debugger
            Debugger.Launch();
#endif

            IocRegistrations.Register();
            DIContainer.Current.Verify();

            using (var handler = new MultitaskServiceHandler())
            {
                handler.OnJobStart  += HandlerOnJobStart;
                handler.OnJobFinish += HandlerOnJobFinish;

                handler.AddJob <OneSecondStepProcessor>("OneSecondStepProcessor");
                handler.AddJob <TwoSecondStepProcessor>(IocRegistrations.Configuration, startupArgs: "Hello world!!!");
                handler.AddJob <OneMinuteStepCrontabProcessor>(IocRegistrations.Configuration, "OneMinuteStepCrontabProcessor", automaticallyRegisterUserType: true);
                handler.AddJob <TwoParallelTasksProcessor>(invokeMethodName: "Execute");
                handler.AddBasicJob <BasicTaskProcessor>();

                if (handler.Start(args))
                {
                    return;
                }
            }

            using (var scope = DIContainer.Current.BeginLifetimeScope())
                scope.Resolver.Resolve <BasicTaskProcessor>().Run();
        }
Exemplo n.º 2
0
        private static void Main(string[] args)
        {
            // IOC container setup

            IocRegistrations.Register();
            DIContainer.Current.Verify();

            // Using scheduler

            using (var scheduler = new MultitaskScheduler())
            {
                scheduler.OnJobStart  += HandlerOnJobStart;
                scheduler.OnJobFinish += HandlerOnJobFinish;

                scheduler.AddJob <OneSecondStepProcessor>(IocRegistrations.Configuration);
                scheduler.AddJob <TwoSecondStepProcessor>(IocRegistrations.Configuration, startupArgs: "Hello world!!!");
                scheduler.AddJob <OneMinuteStepCrontabProcessor>(IocRegistrations.Configuration);
                scheduler.AddJob <TwoParallelTasksProcessor>(IocRegistrations.Configuration, invokeMethodName: "Execute");
                scheduler.AddBasicJob <BasicTaskProcessor>();

                if (scheduler.Start(args))
                {
                    return;
                }
            }

            // Testing some processors without scheduler
            using (var scope = DIContainer.Current.BeginLifetimeScope())
                scope.Resolver.Resolve <BasicTaskProcessor>().Run();
        }
Exemplo n.º 3
0
        private static void Main(string[] args)
        {
            // IOC container setup

            IocRegistrations.Register()
            .Verify();

            // Using scheduler

            using (var scheduler = new MultitaskScheduler())
            {
                scheduler.OnJobStart  += HandlerOnJobStart;
                scheduler.OnJobFinish += HandlerOnJobFinish;

                scheduler.AddJob <PeriodicalProcessor>(IocRegistrations.Configuration);

                if (scheduler.Start(args))
                {
                    return;
                }
            }

            // Testing without scheduler
            using (var scope = DIContainer.Current.BeginLifetimeScope())
                scope.Resolver.Resolve <PeriodicalProcessor>().Run();
        }
Exemplo n.º 4
0
        private static void InitializeContainer()
        {
            var provider = new SimpleInjectorDIProvider();

            DIContainer.Current = provider;

            IocRegistrations.Register();

            provider.Container.Verify();
        }
Exemplo n.º 5
0
        private static void Main()
        {
            IocRegistrations.Register();
            DIContainer.Current.Verify();

            using (var scope = DIContainer.Current.BeginLifetimeScope())
            {
                var sender = scope.Resolver.Resolve <IMailSender>();

                sender.Send("*****@*****.**", "*****@*****.**", "Hello subject",
                            "Hello World!!!");
            }
        }
Exemplo n.º 6
0
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            IocRegistrations.Register();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            HttpModelHandler.RegisterModelBinder <JsonModelBinder>();

            app.UseSimplifyWeb();
            DIContainer.Current.Verify();
        }
Exemplo n.º 7
0
        public IServiceProvider ConfigureServices(IServiceCollection services)
        {
            // DryIoc specific workaround

            var container = new DryIocDIProvider
            {
                Container = new Container()
                            .With(rules => rules.With(FactoryMethod.ConstructorWithResolvableArguments))
            };

            DIContainer.Current = container;

            // Registrations using `services`
            services.Register();

            // Registrations using `DIContainer.Current`
            IocRegistrations.Register();

            return(DIContainer.Current.IntegrateWithMicrosoftDependencyInjectionAndVerify(services));
        }
Exemplo n.º 8
0
        private static void Main(string[] args)
        {
            //-:cnd:noEmit

#if DEBUG
            // Run debugger
            System.Diagnostics.Debugger.Launch();
#endif
            //+:cnd:noEmit

            // IOC container setup
            IocRegistrations.Register().Verify();

            using var scheduler = new SingleTaskScheduler <Worker>(IocRegistrations.Configuration)
                                  .SubscribeLog();

            if (!scheduler.Start(args))
            {
                // One-time launch of user code without the scheduler
                RunAsAConsoleApplication();
            }
        }
Exemplo n.º 9
0
        private static void InitializeContainer()
        {
            IocRegistrations.Register();

            DIContainer.Current.Verify();
        }