示例#1
0
 public ServerViewModel(IDialogService dialogService, ServerStateClientServiceFactory serverStateClientServiceFactory)
 {
     DialogService         = dialogService;
     ServerTotalViewModel  = new ServerTotalViewModel(serverStateClientServiceFactory, () => IsSelected);
     ServerInfoViewModel   = new ServerInfoViewModel(serverStateClientServiceFactory, () => IsSelected);
     ServerDetailViewModel = new ServerDetailViewModel(serverStateClientServiceFactory, () => IsSelected);
 }
示例#2
0
        public ActionResult Index()
        {
            var serverModels        = _serverGetter.Get();
            var serverCurrentInfos  = serverModels.Select(GetServerCurrentInfo);
            var serverInfoViewModel = new ServerInfoViewModel(serverCurrentInfos);

            return(View(serverInfoViewModel));
        }
示例#3
0
        public ActionResult ServerTime()
        {
            var model = new ServerInfoViewModel
            {
                Time = clock.Now
            };

            return(Json(model));
        }
示例#4
0
        public async Task <ApiResult <IEnumerable <ServerInfoViewModel> > > List(int pageIndex, string Title, string ProjectID, int ProviderID, string System, string RegisterDate, string ExpireDate)
        {
            var res = new ApiResult <IEnumerable <ServerInfoViewModel> >()
            {
                statusCode = (int)ApiEnum.Status
            };

            if (pageIndex == 0)
            {
                pageIndex = 1;
            }
            DateTime?RegisterDate1 = null;
            DateTime?ExpireDate1   = null;

            if (!string.IsNullOrWhiteSpace(RegisterDate))
            {
                RegisterDate1 = C.DateTimes(RegisterDate);
            }
            if (!string.IsNullOrWhiteSpace(ExpireDate))
            {
                ExpireDate1 = C.DateTimes(ExpireDate);
            }
            var parm = Expressionable.Create <ServerInfo>()
                       .AndIF(!string.IsNullOrEmpty(Title), m => m.Title.Contains(Title))
                       .AndIF(!string.IsNullOrEmpty(ProjectID), m => m.ProjectID == ProjectID)
                       .AndIF(ProviderID != 0, m => m.ProviderID == ProviderID)
                       .AndIF(!string.IsNullOrEmpty(System), m => m.System.Contains(System))
                       .AndIF(RegisterDate1 != null, m => m.RegisterDate >= RegisterDate1)
                       .AndIF(ExpireDate1 != null, m => m.ExpireDate <= ExpireDate1);
            var list = ServerInfodb.GetPages(parm.ToExpression(), new PageParm(pageIndex));
            List <ServerInfoViewModel> list2 = new List <ServerInfoViewModel>();

            if (list != null)
            {
                foreach (var item in list.DataSource)
                {
                    ServerInfoViewModel n = IMapper.Map <ServerInfoViewModel>(item);
                    n.ProjectName  = Projectdb.Get("Projects", item.ProjectID).Names;
                    n.ProviderName = providerdb.GetId(item.ProviderID).Title;
                    list2.Add(n);
                }
                res.success = true;
                res.data    = list2;
                res.index   = pageIndex;
                res.count   = list.TotalCount;
                res.size    = list.PageSize;
                res.pages   = list.TotalPages;
            }
            else
            {
                res.success    = false;
                res.statusCode = (int)ApiEnum.Status;
            }
            return(await Task.Run(() => res));
        }
        public IActionResult About()
        {
            ViewData["Message"] = "ASP.NET 5 Rocks!";

            var serverInfo = new ServerInfoViewModel()
            {
                Name     = Environment.MachineName,
                Software = Environment.OSVersion.ToString()
            };

            return(View(serverInfo));
        }
 public async Task<ActionResult> Delete(string id, ServerInfoViewModel model)
 {
     var dbModel = await Bll.DB_ServerInfo().Delete(id);
     if (dbModel.success)
     {
         return RedirectToAction("Index");
     }
     else
     {
         ModelState.AddModelError("", "Parametre Silinemedi");
         return View(model);
     }
 }
示例#7
0
        public IActionResult About()
        {
            string appName = "Your First ASP.NET 5 App";

            ViewBag.Message = "Your Application Name: " + appName;

            var serverInfo = new ServerInfoViewModel()
            {
                Name     = Environment.MachineName,
                Software = Environment.OSVersion.ToString()
            };

            return(View(serverInfo));
        }
 public async Task<ActionResult> Edit(string id, ServerInfoViewModel model)
 {
     if (ModelState.IsValid)
     {
         var dbResult = await Bll.DB_ServerInfo().Edit(id, new DataAccessLayer.AdoModel.ServerInfo
         {
             Id = id,
             key_str = model.key_str,
             value_str = model.value_str
         });
         if (dbResult.success)
             return RedirectToAction("Index");
     }
     ModelState.AddModelError("", "Parametre Düzenlenemedi!");
     return View(model);
 }
 public async Task<ActionResult> Create(ServerInfoViewModel model)
 {
     if (ModelState.IsValid)
     {
         var dbModel = await Bll.DB_ServerInfo().Add(new DataAccessLayer.AdoModel.ServerInfo
         {
             Id = Guid.NewGuid().ToString(),
             key_str = model.key_str,
             value_str = model.value_str
         });
         if (dbModel.success)
         {
             return RedirectToAction("Index");
         }
     }
     ModelState.AddModelError("", "Parametre Eklenemedi!");
     return View(model);
 }
示例#10
0
 public ActionResult Info(int serverID)
 {
     if (serverID == 0)
     {
         return(View("InfoAll"));
     }
     else
     {
         ServerInfoViewModel model = new ServerInfoViewModel(serverID);
         if (model.Server.Enabled)
         {
             return(View(model));
         }
         else
         {
             return(View("InfoNoData", model));
         }
     }
 }
示例#11
0
        public async Task <ApiResult <ServerInfoViewModel> > Item(string ID)
        {
            var                 res = new ApiResult <ServerInfoViewModel>();
            ServerInfo          m;
            ServerInfoViewModel n = new ServerInfoViewModel();

            if (!string.IsNullOrEmpty(ID))
            {
                m = ServerInfodb.GetId(ID);
                if (m != null)
                {
                    n              = IMapper.Map <ServerInfoViewModel>(m);
                    n.ProjectName  = Projectdb.Get("Projects", m.ProjectID).Names;
                    n.ProviderName = providerdb.GetId(m.ProviderID).Title;
                    res.success    = true;
                }
            }
            res.data = n;
            return(await Task.Run(() => res));
        }
 public async Task<ActionResult> Delete(string id)
 {
     var dbModel = await Bll.DB_ServerInfo().FindByIdAsync(id);
     if (!String.IsNullOrEmpty(dbModel.exceptionMessage) || dbModel.resultItem == null)
     {
         return HttpNotFound();
     }
     else
     {
         if (dbModel.resultItem != null)
         {
             var result = new ServerInfoViewModel();
             result.Id = id;
             result.key_str = dbModel.resultItem.key_str;
             result.value_str = dbModel.resultItem.value_str;
             return View(result);
         }
     }
     return HttpNotFound();
 }
示例#13
0
        private async Task AddServerAsync(string ip, int port)
        {            
            var server = await barsik.InitServerAsync(ip, port);

            var viewModel = new ServerInfoViewModel(server);
            Servers.Add(viewModel);

            server.OnLogMessageReceived += (date, message) =>
            {
               OnServerMessageReceived(viewModel, date, message);
            };

            server.Rcon.OnMessageReceived += (date, message) =>
            {
                OnServerMessageReceived(viewModel, date, message);
            };
        }
示例#14
0
 public void Init(LogHandler logHandler, ServerInfoViewModel serverInfoViewModel, NetworkHandler networkHandler)
 {
     _log = logHandler;
     _serverInfoViewModel = serverInfoViewModel;
     _networkHandler      = networkHandler;
 }
示例#15
0
 private void OnServerMessageReceived(ServerInfoViewModel serverViewModel, DateTime date, string message)
 {
     serverViewModel.Console += message;
 }
 public MainWindow()
 {
     InitializeComponent();
     DataContext        = new ServerInfoViewModel();
     _cancelTokenSource = new CancellationTokenSource();
 }
示例#17
0
        private async Task RefreshServer(ServerInfoViewModel server)
        {
            var result = await server.Server.ReceiveInfoAsync();
            if (result.IsTimeout)
            {
                server.Ping = -1;
            }
            else
            {
                var serverInfo = result.Data;

                server.Name = serverInfo.Name;
                server.Map = serverInfo.Map;
                server.Ping = serverInfo.Ping;
                server.NumberOfPlayers = serverInfo.Players;
                server.MaxPlayers = serverInfo.MaxPlayers;
                server.Bots = serverInfo.Bots;
                server.Game = serverInfo.Game;
                server.AppId = serverInfo.AppId;
                server.Type = serverInfo.Type;
                server.Environment = serverInfo.Environment;
                server.Visibility = serverInfo.Visibility;
                server.IsSecured = serverInfo.IsSecured;
                server.Version = serverInfo.Version;
                server.Protocol = serverInfo.Protocol;
                server.Tags = serverInfo.Tags;
            }
        }