Ejemplo n.º 1
0
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="serverKeeper">服务管理员</param>
        /// <param name="connectionStringKey">连接字段(app.config)</param>
        /// <param name="maxConn"></param>
        public DBNetKeeper(ServerKeeper serverKeeper, string connectionStringKey, int maxConn = 20) : base(serverKeeper)
        {
            connText = ConfigurationManager.ConnectionStrings[connectionStringKey].ConnectionString;
            isUnUse  = new ConcurrentQueue <SQL>();
            isUse    = new ConcurrentDictionary <string, SqlConnection>();

            //最大连接数绑定
            this.maxConn = maxConn;

            ParamsSave = new ConcurrentDictionary <string, IParams>();
            //参数导入
            foreach (var item in TReflection.Instance.GetClasses <IParams>("Server.Net.ParamsComponents"))
            {
                ParamsSave.AddOrUpdate(item.GetKey(), item, (o_k, o_v) => item);
            }
        }
Ejemplo n.º 2
0
        public QuartzKeeper(ServerKeeper serverKeeper) : base(serverKeeper)
        {
            schedulerFactory = new StdSchedulerFactory();
            scheduler        = schedulerFactory.GetScheduler();

            ITrigger trigger = CreateTrigger("erveTime", "Core", "0 30 8 * * ? *");

            List <IJob> jobs = TReflection.Instance.GetClasses <IJob>("Server.Quartz.Jobs");

            foreach (var job in jobs)
            {
                IJobDetail jobDetail = CreateJob(job.GetType(), job.GetType().Name, "Core");
                scheduler.ScheduleJob(jobDetail, trigger);
                scheduler.TriggerJob(jobDetail.Key);
            }

            QuartzStart();
        }
Ejemplo n.º 3
0
        public StrategyKeeper(ServerKeeper serverKeeper) : base(serverKeeper)
        {
            Strategys = new ConcurrentDictionary <string, StrategyModel>();

            StrategyModel strategyNone = new StrategyModel {
                Name = "不选择", Describe = "无任何集成策略"
            };

            Strategys.AddOrUpdate(strategyNone.Name, strategyNone, (_oK, _oV) => strategyNone);

            foreach (var item in TReflection.Instance.GetClasses <IStrategy>("Server.Strategy.StrategyComponents"))
            {
                StrategyModel strategyModel = new StrategyModel
                {
                    Name     = item.Name(),
                    Describe = item.Describe(),
                    Strategy = item
                };

                Strategys.AddOrUpdate(strategyModel.Name, strategyModel, (_oK, _oV) => strategyModel);
            }
        }
Ejemplo n.º 4
0
 public DBLocalKeeper(ServerKeeper serverKeeper) : base(serverKeeper)
 {
     componentsSave = new ConcurrentDictionary <string, DBComponent>();
 }