private static TasksConfiguration AddFromTestAssembly(TasksConfiguration tasks)
 {
     return(tasks
            .Clear()
            .AddFromAssemblyOfThis <TaskFactoryTester>()
            .Remove <SQLiteTester.TestMigrationsTask>()
            .Remove <TaskDistributedMutexTester.SomeTask>());
 }
        /// <summary>构造函数</summary>
        public TaskHistoryProvider()
        {
            this.configuration = TasksConfigurationView.Instance.Configuration;

            this.ibatisMapping = this.configuration.Keys["IBatisMapping"].Value;

            this.ibatisMapper = ISqlMapHelper.CreateSqlMapper(this.ibatisMapping);
        }
        /// <summary>构造函数</summary>
        public TaskWorkReceiverProvider()
        {
            this.configuration = TasksConfigurationView.Instance.Configuration;

            this.ibatisMapping = this.configuration.Keys["IBatisMapping"].Value;

            this.ibatisMapper = ISqlMapHelper.CreateSqlMapper(this.ibatisMapping, true);
        }
Exemplo n.º 4
0
        public void TestInit()
        {
            TasksConfiguration configuration = TasksConfigurationView.Instance.Configuration;

            Assert.IsNotNull(configuration);

            Assert.IsNotNull(configuration.Keys["SpringObjectFile"]);
            Assert.IsNotNull(configuration.Keys["IBatisMapping"]);
        }
        /// <summary>构造函数</summary>
        public TaskReceiverProvider()
        {
            this.configuration = TasksConfigurationView.Instance.Configuration;

            this.ibatisMapping = this.configuration.Keys["IBatisMapping"].Value;

            this.ibatisMappers = StorageContext.Instance.CreateSqlMappers(this.storageSchemaId, this.ibatisMapping);

            this.storageStrategy = StorageContext.Instance.StorageSchemaService[this.storageSchemaId].GetStrategyClass();
        }
Exemplo n.º 6
0
        public void TestCreateMapper()
        {
            TasksConfiguration configuration = TasksConfigurationView.Instance.Configuration;

            string ibatisMapping = configuration.Keys["IBatisMapping"].Value;

            Console.WriteLine(ibatisMapping);

            ISqlMapper ibatisMapper = ISqlMapHelper.CreateSqlMapper(ibatisMapping, true);

            Assert.IsNotNull(ibatisMapper);
        }
        /// <summary></summary>
        public TaskCategoryService()
        {
            this.configuration = TasksConfigurationView.Instance.Configuration;

            // 创建对象构建器(Spring.NET)
            string springObjectFile = this.configuration.Keys["SpringObjectFile"].Value;

            SpringObjectBuilder objectBuilder = SpringObjectBuilder.Create(TasksConfiguration.ApplicationName, springObjectFile);

            // 创建数据提供器
            this.provider = objectBuilder.GetObject <ITaskCategoryProvider>(typeof(ITaskCategoryProvider));
        }
 internal ApplicationConfiguration()
 {
     this._extensibility    = new ExtensibilityConfiguration();
     this.IgnoreSslErrors   = true;
     this._customInstallers = new List <IWindsorInstaller>();
     this._database         = this.Register <DatabaseConfiguration>(() => new DatabaseConfiguration(this));
     this._tasks            = this.Register <TasksConfiguration>(() => new TasksConfiguration(this));
     this._logging          = this.Register <LoggingConfiguration>(() => new LoggingConfiguration(this));
     this._migration        = this.Register <MigrationConfiguration>(() => new MigrationConfiguration(this));
     this._hosts            = this.Register <HostsConfiguration>(() => new HostsConfiguration(this));
     this._advanced         = this.Register <AdvancedConfiguration>(() => new AdvancedConfiguration(this));
     this.Register <ApplicationConfiguration>(() => this);
 }
        internal ApplicationConfiguration()
        {
            _extensibility = new ExtensibilityConfiguration();

            _database    = Register(() => new DatabaseConfiguration(this));
            _services    = Register(() => new ServicesConfiguration(this));
            _hosts       = Register(() => new HostsConfiguration(this));
            _tasks       = Register(() => new TasksConfiguration(this));
            _logging     = Register(() => new LoggingConfiguration(this));
            _migration   = Register(() => new MigrationConfiguration(this));
            _environment = Register(() => new EnvironmentConfiguration(this));

            Register(() => this);
        }
        public static IWebHost BuildWebHost(string[] args)
        {
            var mongoConfiguration  = new MongoConfiguration("mongodb://localhost:27017", "Api");
            var tasksConfiguration  = new TasksConfiguration("http://localhost:34127");
            var mailerConfiguration = new MailerConfiguration("smtp.domain.com", 25);

            return(WebHost.CreateDefaultBuilder(args)
                   .UseStartup <Startup>()
                   .ConfigureServices(configureServices =>
            {
                configureServices.AddSingleton(mongoConfiguration);
                configureServices.AddSingleton(tasksConfiguration);
                configureServices.AddSingleton(mailerConfiguration);
            })
                   .Build());
        }
        public static TasksConfiguration MaintenanceTask(this TasksConfiguration configuration, Action <TaskConfiguration <MaintenanceWorkItem> > task = null)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException("configuration");
            }
            TaskConfiguration <MaintenanceWorkItem> taskConfiguration = null;

            configuration = configuration.Task <MaintenanceTask, MaintenanceWorkItem>((TaskConfiguration <MaintenanceWorkItem> x) => taskConfiguration = x);
            taskConfiguration.Step <CleanUpIntegrationDbStep>().Step <CleanUpArchivesStep>().Step <ArchiveFoldersStep>();
            if (task != null)
            {
                task(taskConfiguration);
            }
            return(configuration);
        }
Exemplo n.º 12
0
        public static TasksConfiguration MonitorTask(this TasksConfiguration configuration, Action <TaskConfiguration <MonitorWorkItem> > task = null)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException("configuration");
            }
            TaskConfiguration <MonitorWorkItem> taskConfiguration = null;

            configuration = configuration.Task <MonitorTask, MonitorWorkItem>((TaskConfiguration <MonitorWorkItem> x) => taskConfiguration = x);
            taskConfiguration.Step <ExportIntegrationErrorsStep>().Step <MonitorFoldersStep>().Step <PingUrlsStep>();
            if (task != null)
            {
                task(taskConfiguration);
            }
            return(configuration);
        }
Exemplo n.º 13
0
        /// <summary>重新加载</summary>
        private void Reload()
        {
            this.configuration = TasksConfigurationView.Instance.Configuration;

            // 创建对象构建器(Spring.NET)
            string springObjectFile = this.configuration.Keys["SpringObjectFile"].Value;

            SpringObjectBuilder objectBuilder = SpringObjectBuilder.Create(TasksConfiguration.ApplicationName, springObjectFile);

            // 创建数据服务对象
            this.m_TaskWorkService            = objectBuilder.GetObject <ITaskWorkService>(typeof(ITaskWorkService));
            this.m_TaskWorkReceiverService    = objectBuilder.GetObject <ITaskWorkReceiverService>(typeof(ITaskWorkReceiverService));
            this.m_TaskCategoryService        = objectBuilder.GetObject <ITaskCategoryService>(typeof(ITaskCategoryService));
            this.m_TaskHistoryService         = objectBuilder.GetObject <ITaskHistoryService>(typeof(ITaskHistoryService));
            this.m_TaskWaitingService         = objectBuilder.GetObject <ITaskWaitingService>(typeof(ITaskWaitingService));
            this.m_TaskWaitingReceiverService = objectBuilder.GetObject <ITaskWaitingReceiverService>(typeof(ITaskWaitingReceiverService));
        }
Exemplo n.º 14
0
        private void StartApi()
        {
            var mongoConfiguration  = new MongoConfiguration(_testMongoDb.ConnectionString, "Api");
            var tasksConfiguration  = new TasksConfiguration(TasksApiBaseUrl, TasksApiBehavior.ToHttpClient());
            var mailerConfiguration = new MailerConfiguration(FakeSmtpHost, 25);

            var builder = new WebHostBuilder()
                          .UseStartup <Startup>()
                          .ConfigureServices(configureServices =>
            {
                configureServices.AddSingleton(mongoConfiguration);
                configureServices.AddSingleton(tasksConfiguration);
                configureServices.AddSingleton(mailerConfiguration);
            });

            _server = new TestServer(builder);
            Handler = _server.CreateHandler();
        }
        public static TasksConfiguration MonitorTask(this TasksConfiguration configuration, Action <TaskConfiguration <MonitorWorkItem> > task = null)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            TaskConfiguration <MonitorWorkItem> localConfiguration = null;

            configuration = configuration
                            .Task <MonitorTask, MonitorWorkItem>(x => localConfiguration = x);

            localConfiguration
            .Step <MonitorFoldersStep>()
            .Step <PingUrlsStep>()
            .Step <ExportIntegrationErrorsStep>();

            task?.Invoke(localConfiguration);

            return(configuration);
        }
        public static TasksConfiguration MaintenanceTask(this TasksConfiguration configuration, Action <TaskConfiguration <MaintenanceWorkItem> > task = null)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            TaskConfiguration <MaintenanceWorkItem> taskConfiguration = null;

            configuration = configuration
                            .Task <MaintenanceTask, MaintenanceWorkItem>(x => taskConfiguration = x);

            taskConfiguration
            .Step <CleanUpIntegrationDbStep>()
            .Step <CleanUpDbDistributedMutexStep>()
            .Step <CleanUpArchivesStep>()
            .Step <ArchiveFoldersStep>();

            task?.Invoke(taskConfiguration);

            return(configuration);
        }
Exemplo n.º 17
0
        internal ConcurrentTaskExecutionConfiguration(TasksConfiguration tasks)
        {
            if (tasks == null)
            {
                throw new ArgumentNullException(nameof(tasks));
            }

            _evaluators             = new ScanAddRemoveInstaller <IPreventConcurrentTaskExecutionRuntimeEvaluator>(serviceDescriptor: x => x.Self());
            _customLockNames        = new ScanAddRemoveInstaller <IPreventConcurrentTaskExecutionCustomLockName>(serviceDescriptor: x => x.Self());
            _customLockDescriptions = new ScanAddRemoveInstaller <IPreventConcurrentTaskExecutionCustomLockDescription>(serviceDescriptor: x => x.Self());
            _exceptionHandlers      = new ScanAddRemoveInstaller <IPreventConcurrentTaskExecutionExceptionHandler>(serviceDescriptor: x => x.Self());

            // scan own assembly
            AddFromAssemblyOfThis <ConcurrentTaskExecutionConfiguration>();

            Tasks = tasks.Change(t => t.Application
                                 .Services(services => services
                                           .Advanced(advanced => advanced
                                                     .Install(_evaluators)
                                                     .Install(_customLockNames)
                                                     .Install(_customLockDescriptions)
                                                     .Install(_exceptionHandlers))));
        }
Exemplo n.º 18
0
 public TaskManager(TasksConfiguration configuration)
 {
     _baseUrl = configuration.BaseUrl;
     _client  = configuration.Client ?? new HttpClient();
 }
 public TaskRepository(TasksConfiguration configuration, ILog logger) : base(configuration.DatabaseConnectionString, logger)
 {
 }