Exemple #1
0
        private SchedulerCenter GetScheduler(CafConfigurationContext context)
        {
            string dbProviderName = context.Configuration.GetSection("Quartz")["dbProviderName"];
            //string connectionString = context.Configuration.GetSection("Quartz")["connectionString"];

            var connectionString = context.Services.BuildServiceProvider().GetService <IOptions <Caf.Job.Entity.Quartz> >().Value.connectionString;

            if (string.IsNullOrWhiteSpace(connectionString))
            {
                connectionString = context.Configuration.GetSection("Quartz")["connectionString"];
            }

            string driverDelegateType = string.Empty;

            switch (dbProviderName)
            {
            case "SQLite-Microsoft":
            case "SQLite":
                driverDelegateType = typeof(SQLiteDelegate).AssemblyQualifiedName; break;

            case "MySql":
                driverDelegateType = typeof(MySQLDelegate).AssemblyQualifiedName; break;

            case "OracleODPManaged":
                driverDelegateType = typeof(OracleDelegate).AssemblyQualifiedName; break;

            case "SqlServer":
            case "SQLServerMOT":
                driverDelegateType = typeof(SqlServerDelegate).AssemblyQualifiedName; break;

            case "Npgsql":
                driverDelegateType = typeof(PostgreSQLDelegate).AssemblyQualifiedName; break;

            case "Firebird":
                driverDelegateType = typeof(FirebirdDelegate).AssemblyQualifiedName; break;

            default:
                throw new System.Exception("dbProviderName unreasonable");
            }
            JudgeConfigureConn(context);
            var             dbcontext       = context.Services.BuildServiceProvider().GetService <CafJobDbContext>();
            SchedulerCenter schedulerCenter = SchedulerCenter.Instance;

            schedulerCenter.Setting(new DbProvider(dbProviderName, connectionString), driverDelegateType, dbcontext);

            return(schedulerCenter);
        }
Exemple #2
0
        private SchedulerCenter GetScheduler(IConfiguration configuration)
        {
            string dbProviderName   = configuration.GetSection("Quartz")["dbProviderName"];
            string connectionString = configuration.GetSection("Quartz")["connectionString"];

            string driverDelegateType = string.Empty;

            switch (dbProviderName)
            {
            case "SQLite-Microsoft":
            case "SQLite":
                driverDelegateType = typeof(SQLiteDelegate).AssemblyQualifiedName; break;

            case "MySql":
                driverDelegateType = typeof(MySQLDelegate).AssemblyQualifiedName; break;

            case "OracleODPManaged":
                driverDelegateType = typeof(OracleDelegate).AssemblyQualifiedName; break;

            case "SqlServer":
            case "SQLServerMOT":
                driverDelegateType = typeof(SqlServerDelegate).AssemblyQualifiedName; break;

            case "Npgsql":
                driverDelegateType = typeof(PostgreSQLDelegate).AssemblyQualifiedName; break;

            case "Firebird":
                driverDelegateType = typeof(FirebirdDelegate).AssemblyQualifiedName; break;

            default:
                throw new System.Exception("dbProviderName unreasonable");
            }

            SchedulerCenter schedulerCenter = SchedulerCenter.Instance;

            schedulerCenter.Setting(new DbProvider(dbProviderName, connectionString), driverDelegateType);

            return(schedulerCenter);
        }
Exemple #3
0
 static SchedulerCenter()
 {
     Instance = new SchedulerCenter();
 }