Exemplo n.º 1
0
        public void AddServiceToConfigAndStart(ServiceFormViewModel service)
        {
            var config = this.config.Get();

            var sqlDServiceModel = new SqlDServiceModel()
            {
                Name     = service.Name,
                Database = service.Database,
                Host     = service.Host,
                Port     = service.Port,
                Tags     = (service.Tags ?? string.Empty).Split(',').ToList(),
            };

            var registryEntryViewModels = service.Forwards.Where(x => x.Selected).ToList();

            if (registryEntryViewModels.Any())
            {
                sqlDServiceModel.ForwardingTo.AddRange(registryEntryViewModels.Select(y => new SqlDForwardingModel()
                {
                    Host = y.Host,
                    Port = y.Port
                }));
            }

            config.Services.Add(sqlDServiceModel);

            this.config.Set(config);

            SqlDStart.SqlDGo(typeof(ServiceService).Assembly, config);
        }
Exemplo n.º 2
0
        public void UpdateServiceAndRestart(ServiceFormViewModel service)
        {
            var config = this.config.Get();

            var sqlDServiceModel = config.Services.First(x => x.ToEndPoint().Equals(new EndPoint(service.Host, service.Port)));

            var registryEntryViewModels = service.Forwards.Where(x => x.Selected).ToList();

            if (registryEntryViewModels.Any())
            {
                sqlDServiceModel.ForwardingTo = new List <SqlDForwardingModel>();
                sqlDServiceModel.ForwardingTo.AddRange(registryEntryViewModels.Select(y => new SqlDForwardingModel()
                {
                    Host = y.Host,
                    Port = y.Port
                }));
            }

            this.config.Set(config);

            KillService(sqlDServiceModel.Host, sqlDServiceModel.Port, removeFromConfig: false);

            SqlDStart.SqlDGo(typeof(ServiceService).Assembly, config);
        }