コード例 #1
0
        static void Main(string[] args)
        {
            RedisServices.Init("127.0.0.1", null, string.Empty);

            CommandsAndEventsRegisterEngine.AutoRegister();

            EngineeCommandWorkerQueue.Start();
            EngineeEventWorkerQueue.Start();

            while (true)
            {
                var cmd = Console.ReadLine();
                switch (cmd.ToLower())
                {
                case "quit":
                    _stop = true;
                    Environment.Exit(0);
                    break;

                case "stop":
                    _stop = true;
                    break;

                case "start":
                    _stop = false;
                    MessiveSendCmd();
                    break;
                }
            }
        }
コード例 #2
0
        public JsonResult AddPingData(string pingData, int?pingQuantity = 1, bool?reset = false, bool?worker = false, string type = "")
        {
            var xtype = typeof(PingWorker);

            if (!string.IsNullOrEmpty(type))
            {
                xtype = EngineeCommandWorkerQueue.GetType(type);
            }
            if (worker == true)
            {
                for (int i = 0; i < pingQuantity; i++)
                {
                    EngineeCommandWorkerQueue.AddAndStartWorker(xtype);
                }
            }
            else
            {
                if (reset == true)
                {
                    EngineeCommandWorkerQueue.ResetToOneWorker(xtype);
                }
                else
                {
                    for (int i = 0; i < pingQuantity; i++)
                    {
                        EngineeCommandWorkerQueue.Push(new PingWorker($"{i + 1}. {pingData}"));
                    }
                }
            }

            return(Json(new { Ok = true, Data = new { }, Message = "Success" }, JsonRequestBehavior.AllowGet));
        }
コード例 #3
0
        protected void Application_Start()
        {
            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            AppDomain.CurrentDomain.AssemblyLoad += CurrentDomain_AssemblyLoad;

            // new CreateDatabaseIfNotExists<DomainDrivenDesign.CoreEcommerce.Ef.CoreEcommerceDbContext>().InitializeDatabase(new DomainDrivenDesign.CoreEcommerce.Ef.CoreEcommerceDbContext());

            MemoryMessageBuss.AutoRegister();

            DomainDrivenDesign.Core.EngineeCurrentContext.Init();

            EngineePermission.Init();

            EngineeEcommerce.Init();

            EngineeEmailSender.Init();

            EngineeCommandWorkerQueue.Init();

            UnhandleExceptionLogs.Log("INIT-DONE-NON-ERROR");
        }
コード例 #4
0
        private static void Run()
        {
            var redishost = ConfigurationManagerExtensions.GetConnectionString("RedisConnectionString");

            RedisServices.Init(redishost, null, string.Empty);

            CommandsAndEventsRegisterEngine.AutoRegister();

            EngineeCommandWorkerQueue.Start();
            EngineeEventWorkerQueue.Start();
            var cmd = (Console.ReadLine() ?? string.Empty).ToLower().Trim();

            while (!cmd.Equals("quit"))
            {
                switch (cmd)
                {
                case "quit":
                    _stop = true;
                    break;

                case "stop":
                    _stop = true;
                    break;

                case "start":
                    _stop = false;
                    MessiveSendCmd(null);
                    break;

                case "pubsub":
                    CommandEventSender.Send(new SampleEventCreated()
                    {
                        PublishedEventId = Guid.NewGuid(),
                        SampleVersion    = DateTime.Now.ToString(),
                        Version          = 0
                    });
                    break;

                case "pubsubmad":
                    _stop = false;
                    MessiveSendCmd(() => {
                        CommandEventSender.Send(new SampleEventCreated()
                        {
                            PublishedEventId = Guid.NewGuid(),
                            SampleVersion    = DateTime.Now.ToString(),
                            Version          = 0
                        });
                    });
                    break;
                }
                cmd = (Console.ReadLine() ?? string.Empty).ToLower().Trim();
            }

            Console.Read();
        }
コード例 #5
0
        public JsonResult List(string keywords,
                               int?skip, int?take, string sortField, string orderBy)
        {
            var  xtake = 10;
            var  xskip = 0;
            long total = 0;

            var rows = EngineeCommandWorkerQueue.ListAllCommandName().Select(i => new{ Type = i }).ToList();

            return(Json(new { total, rows, success = true }, JsonRequestBehavior.AllowGet));
        }
コード例 #6
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

            RedisServices.Init("127.0.0.1", null, string.Empty);

            CommandsAndEventsRegisterEngine.AutoRegister();

            EngineeCommandWorkerQueue.Start();
            EngineeEventWorkerQueue.Start();

            services.AddSwagger();
        }
コード例 #7
0
        public JsonResult GetStatistic(string type)
        {
            var xtype = typeof(PingWorker);

            if (!string.IsNullOrEmpty(type))
            {
                xtype = EngineeCommandWorkerQueue.GetType(type);
            }
            int workerCount;
            int dataCount;

            EngineeCommandWorkerQueue.CountStatistic(xtype, out dataCount, out workerCount);
            return(Json(new { Ok = true, Data = new { dataCount, workerCount }, Message = "Success" }, JsonRequestBehavior.AllowGet));
        }
コード例 #8
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddCors();
            services.AddMvc(option => {
                // option.Filters.Add(new IotHubAuthorizeAttribute());
            }).SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

            //RedisServices.Init("172.16.10.166", null, string.Empty);
            var redishost = ConfigurationManagerExtensions.GetConnectionString("RedisConnectionString");

            RedisServices.Init(redishost, null, string.Empty);
            CommandsAndEventsRegisterEngine.AutoRegister();

            EngineeCommandWorkerQueue.Start();
            EngineeEventWorkerQueue.Start();

            services.AddSwagger();
        }