Exemplo n.º 1
0
        private AuthTokenDto GetJwtTokenByCertificate(ServiceGateway service, ServerDto serverDto)
        {
            var cert   = new X509Certificate2(txtCertificate.Text);
            var rsaKey = ShaWithRsaSigner.PrivatePemKeyToRSACryptoServiceProvider(txtPrivateKey.Text);

            return(service.JwtTokenService.GetTokenFromCertificate(serverDto, cert, rsaKey));
        }
Exemplo n.º 2
0
        public override void AnnounceServer(string serverId, ServerContext context)
        {
            if (serverId == null)
            {
                throw new ArgumentNullException(nameof(serverId));
            }

            if (context == null)
            {
                throw new ArgumentNullException(nameof(context));
            }

            var server = new ServerDto
            {
                Id            = serverId,
                WorkerCount   = context.WorkerCount,
                Queues        = context.Queues,
                StartedAt     = DateTime.UtcNow,
                LastHeartbeat = DateTime.UtcNow
            };

            _dbContext.Server.ReplaceOne(Builders <ServerDto> .Filter.Eq(_ => _.Id, serverId), server, new UpdateOptions {
                IsUpsert = true
            });
        }
 /// <summary>
 /// Raises the server tool bar item activated event.
 /// </summary>
 /// <param name="sender">Sender.</param>
 /// <param name="e">E.</param>
 void OnServerToolBarItem_Activated(object sender, EventArgs e)
 {
     if (_serverState == ServerState.Connected)
     {
         _serverState = ServerState.Disconnected;
         _isLoggedIn  = false;
         if (_rootNode != null)
         {
             _rootNode.OnCacheRefresh -= OnCacheRefresh;
         }
         _rootNode                 = null;
         _managementDto            = null;
         ServerToolBarItem.Image   = NSImage.ImageNamed(Constants.ConnectIcon);
         ServerToolBarItem.Label   = Constants.ConnectLabel;
         _serverDto                = null;
         RefreshToolBarItem.Active = false;
         for (int index = 0; index < this.ContainerView.Subviews.Length; index++)
         {
             this.ContainerView.Subviews[index].RemoveFromSuperview();
         }
         LoggedInLabel.StringValue = (NSString)string.Empty;
     }
     else
     {
         ConnectToServer();
     }
 }
Exemplo n.º 4
0
 public AllGroupsPropertyManager(ServiceGateway service, ServerDto serverDto, string tenantName, string domainName)
 {
     _service    = service;
     _serverDto  = serverDto;
     _domainName = domainName;
     _tenantName = tenantName;
 }
Exemplo n.º 5
0
 public TenantNode(ServerDto serverDto, string tenantName)
 {
     _serverDto     = serverDto;
     _tenantName    = tenantName;
     Active         = true;
     IsSystemTenant = false;
 }
Exemplo n.º 6
0
        public List <ServerDto> GetServersInPast7Days()
        {
            var servers = GetQueryableSummary().ToList();

            var serverStatues = new List <ServerDto>();

            foreach (var server in servers)
            {
                var color   = server.Status.Equals(ServerStatusEnum.Success.ToString()) ? ServerColorEnum.Orange.ToString() : ServerColorEnum.Green.ToString();
                var latency = GetLatencyFromServer(server.SvcNo, DateTime.Now.AddDays(-7));

                var newServerStatus = new ServerDto
                {
                    ServerName         = server.SvcName,
                    Color              = color,
                    Latency            = latency,
                    ExclamationCount   = server.Failed7,
                    CheckCount         = server.Count7,
                    HourTimeAvgLatency = server.AvgLatency7,
                    CheckDateTime      = server.CheckDateTime
                };

                serverStatues.Add(newServerStatus);
            }

            return(serverStatues);
        }
        private void LoadCachedDetails()
        {
            var node = _formView.ScopeNode as ManagementNode;

            lblName.Text = node.DisplayName;
            var serverNode = node.GetServerNode();
            var siteName   = node.GetSiteName();

            lblSitename.Text = siteName;
            //_infraDtos = serverNode.Hosts.Where(x => x.NodeType == NodeType.Infrastructure && x.Sitename == siteName);
            _serverDto = new ServerDto {
                Server = node.DisplayName, Upn = node.ServerDto.Upn, Password = node.ServerDto.Password, DomainName = node.ServerDto.DomainName
            };
            _dto = serverNode.Hosts.First(x => x.Name == node.DisplayName) as ManagementDto;

            _dto.DomainControllers = GetInfraNodesForTheSite(_dto.DomainControllers, siteName);
            _infraDtos             = _dto.DomainControllers;
            txtIpAddress.Text      = _dto.Ip;
            if (_dto.State == null)
            {
                _dto = PscHighAvailabilityAppEnvironment.Instance.Service.GetManagementNodeDetails(_serverDto);
            }
            UpdateState();
            foreach (InfrastructureDto dc in _infraDtos)
            {
                AddNewDomainController(dc);
            }
            lblLastRefreshed.Text = DateTime.Now.ToString(Constants.DateFormat);
            if (lstdcs.Items.Count > 0)
            {
                lstdcs.Items[node.SelectedInfrastructureItem].Selected = true;
            }
            UpdateServices();
        }
Exemplo n.º 8
0
        public AuthTokenDto GetAuthToken(ServerDto serverDto, string tenant)
        {
            var key       = string.Format("{0}|{1}", serverDto.ServerName, tenant);
            var authToken = _localData.Get(key);

            return(authToken);
        }
Exemplo n.º 9
0
        public NewExternalIdp(ExternalIdentityProviderDto externalIdentityProviderDto, ServiceGateway service, ServerDto serverDto, string tenantName)
        {
            _service    = service;
            _serverDto  = serverDto;
            _tenantName = tenantName;
            _externalIdentityProviderDtoOrig = externalIdentityProviderDto;
            InitializeComponent();

            txtEntityId.ReadOnly           = true;
            btnCreate.Visible              = false;
            btnAddCert.Visible             = false;
            btnRemoveCert.Visible          = false;
            btnAddNameIdFormat.Visible     = false;
            btnRemoveNameIdFormat.Visible  = false;
            btnAddSsoService.Visible       = false;
            btnRemoveSsoService.Visible    = false;
            btnAddSubjectFormat.Visible    = false;
            btnRemoveSubjectFormat.Visible = false;
            btnSloService.Visible          = false;
            btnRemoveSloService.Visible    = false;
            lstNameIdFormats.Enabled       = false;
            lstSubjectFormat.Enabled       = false;
            lstSloServices.Enabled         = false;
            lstSsoServices.Enabled         = false;
            chkJit.Enabled = false;
            DtoToView(_externalIdentityProviderDtoOrig);
            if (lstCertificateChain.Items.Count > 0)
            {
                lstCertificateChain.Items[0].Selected = true;
            }
            Text           = "External Identity Provider";
            btnCreate.Text = "Update";
        }
        public void RemoveServer_RemovesAServerRecord()
        {
            var realm = _storage.GetRealm();

            realm.Write(() =>
            {
                var server1 = new ServerDto
                {
                    Id            = "server1",
                    LastHeartbeat = DateTime.UtcNow
                };
                realm.Add(server1);

                var server2 = new ServerDto
                {
                    Id            = "server2",
                    LastHeartbeat = DateTime.UtcNow
                };
                realm.Add(server2);
            });


            _connection.RemoveServer("server1");

            var servers = realm.All <ServerDto>();

            Assert.IsTrue(servers.Any(s => s.Id == "server2"));
            Assert.IsFalse(servers.Any(s => s.Id == "server1"));
        }
Exemplo n.º 11
0
 public ExternalDomainPropertyManager(string tenantName, ServiceGateway service, ServerDto server, IdentityProviderDto provider)
 {
     _tenantName = tenantName;
     _service    = service;
     _server     = server;
     _provider   = provider;
 }
        public void Heartbeat_UpdatesLastHeartbeat_OfTheServerWithGivenId()
        {
            var realm = _storage.GetRealm();

            realm.Write(() =>
            {
                var server1 = new ServerDto
                {
                    Id            = "server1",
                    LastHeartbeat = new DateTime(2012, 12, 12, 12, 12, 12, DateTimeKind.Utc)
                };

                var server2 = new ServerDto
                {
                    Id            = "server2",
                    LastHeartbeat = new DateTime(2012, 12, 12, 12, 12, 12, DateTimeKind.Utc)
                };

                realm.Add(server1);
                realm.Add(server2);
            });

            _connection.Heartbeat("server1");

            var servers = realm.All <ServerDto>().ToList()
                          .ToDictionary(x => x.Id, x => x.LastHeartbeat);

            Assert.True(servers.ContainsKey("server1"));
            Assert.True(servers.ContainsKey("server2"));
            Assert.AreNotEqual(2012, servers["server1"].Value.Year);
            Assert.AreEqual(2012, servers["server2"].Value.Year);
        }
Exemplo n.º 13
0
        private string GetSamlTokenByGss(ServiceGateway service, ServerDto serverDto)
        {
            var gssTicket = KerberosHelper.GetKerberosContext(txtGssUsername.Text, txtGssPassword.Text, txtGssDomain.Text, txtGssSpn.Text);
            var token     = service.SamlTokenService.GetSamlTokenFromGss(serverDto, gssTicket);

            return(token);
        }
Exemplo n.º 14
0
        private AuthTokenDto GetJwtTokenByGssTicket(ServiceGateway service, ServerDto serverDto)
        {
            var gssTicket        = KerberosHelper.GetKerberosContext(txtGssUsername.Text, txtGssPassword.Text, txtGssDomain.Text, txtGssSpn.Text);
            var gssBase64Encoded = Uri.EscapeDataString(gssTicket);

            return(service.JwtTokenService.GetTokenFromGssTicket(serverDto, gssBase64Encoded, Guid.NewGuid().ToString()));
        }
Exemplo n.º 15
0
        protected override void OnAction(Action action, AsyncStatus status)
        {
            base.OnAction(action, status);
            switch ((SnapInNodeAction)(int)action.Tag)
            {
            case SnapInNodeAction.AddServer:
                _dto = NavigateToAddServerView();
                if (_dto != null)
                {
                    AddServerNodeAndAskForLogin(_dto);
                }
                break;

            case SnapInNodeAction.ShowHttpTransport:
                NavigateToHttpTransportView();
                break;

            case SnapInNodeAction.ActionTokenWizard:
                ShowTokenWizard();
                break;

            case SnapInNodeAction.OfflineSuperLog:
                ShowSuperLog();
                break;
            }
        }
        /// <summary>
        /// Gets the nodes.
        /// </summary>
        /// <returns>The nodes.</returns>
        /// <param name="serverDto">Server dto.</param>
        /// <param name="dcName">Dc name.</param>
        /// <param name="siteName">Site name.</param>
        private List <NodeDto> GetNodes(ServerDto serverDto, string dcName, string siteName)
        {
            List <NodeDto> list1 = null, list2 = null;
            var            t1     = Task.Run(() => { list1 = GetInfrastructureNodes(serverDto, dcName); });
            var            t2     = Task.Run(() => { list2 = GetManagementNodes(serverDto, dcName, siteName); });
            var            tasks  = new Task[] { t1, t2 };
            var            result = Task.WaitAll(tasks, Constants.TopologyTimeout * Constants.MilliSecsMultiplier);

            if (!result)
            {
                throw new Exception(Constants.TolologyApiIsTakenLonger);
            }
            else
            {
                if (t1.Exception != null)
                {
                    throw t1.Exception;
                }
                if (t2.Exception != null)
                {
                    throw t2.Exception;
                }
            }
            if (list2 != null)
            {
                list2.AddRange(list1);
                return(list2);
            }
            return(list1);
        }
Exemplo n.º 17
0
        public List <ServerDto> GetServersInPast24Hours()
        {
            var servers = GetQueryableSummary().ToList();

            var serverStatues = new List <ServerDto>();

            foreach (var server in servers)
            {
                var color = server.Status.Equals(ServerStatusEnum.Success.ToString())
                    ? ServerColorEnum.Green.ToString() : ServerColorEnum.Orange.ToString();

                var latency = GetLatencyFromServer(server.SvcNo, DateTime.Now.AddDays(-1));

                var checkDateTime = server.CheckDateTime.ToUniversalTime() <= DateTimeOffset.MinValue.UtcDateTime
                    ? DateTimeOffset.MinValue : new DateTimeOffset(server.CheckDateTime);

                var newServerStatus = new ServerDto
                {
                    ServerName         = server.SvcName,
                    Color              = color,
                    Latency            = latency,
                    ExclamationCount   = server.Failed24,
                    CheckCount         = server.Count24,
                    HourTimeAvgLatency = server.AvgLatency24,
                    CheckDateTime      = DateTimeOffset.Parse(checkDateTime.ToString(), null).DateTime
                };

                serverStatues.Add(newServerStatus);
            }

            return(serverStatues);
        }
        /// <summary>
        /// Sets the management node to legacy mode
        /// </summary>
        /// <param name="legacy">True if legacy mode needs to be set false otherwise</param>
        /// <param name="serverDto">Management node details</param>
        public void SetLegacyMode(bool legacy, ServerDto serverDto)
        {
            try
            {
                using (Client client = new Client(serverDto.Server, serverDto.Upn, serverDto.Password))
                {
                    if (legacy)
                    {
                        var message = string.Format("CdcDisableClientAffinity API call for Server: {0} ", serverDto.Server);
                        _logger.Log(message, LogLevel.Info);

                        client.CdcDisableClientAffinity();

                        message = string.Format("CdcDisableClientAffinity API call for Server: {0} complete", serverDto.Server);
                        _logger.Log(message, LogLevel.Info);
                    }
                    else
                    {
                        var message = string.Format("CdcEnableClientAffinity API call for Server: {0} ", serverDto.Server);
                        _logger.Log(message, LogLevel.Info);

                        client.CdcEnableClientAffinity();

                        message = string.Format("CdcEnableClientAffinity API call for Server: {0} complete", serverDto.Server);
                        _logger.Log(message, LogLevel.Info);
                    }
                }
            }
            catch (Exception exc)
            {
                _logger.LogException(exc);
                throw;
            }
        }
Exemplo n.º 19
0
 public SolutionUserPropertyManager(ServiceGateway service, SolutionUserDto dto, ServerDto serverDto, string tenantName)
 {
     _tenantName  = tenantName;
     _dtoOriginal = dto;
     _service     = service;
     _serverDto   = serverDto;
 }
        /// <summary>
        /// Gets the vmdir service status.
        /// </summary>
        /// <returns>The infrastructure nodes.</returns>
        /// <param name="serverDto">Server dto.</param>
        private ServiceDto GetVmDirServiceStatus(ServerDto serverDto)
        {
            var dto = new ServiceDto
            {
                HostName      = serverDto.Server,
                ServiceName   = Constants.DirectoryServiceName,
                Description   = Constants.DirectoryServiceDesc,
                LastHeartbeat = System.DateTime.UtcNow
            };

            try
            {
                var message = string.Format("Method: GetVmDirServiceStatus - VmDirGetDCInfos API call for Server: {0} complete", serverDto.Server);
                _logger.Log(message, LogLevel.Info);

                var entries = vmdirClient.Client.VmDirGetDCInfos(serverDto.Server, serverDto.UserName, serverDto.Password);
                dto.Alive = true;

                message = string.Format("Method: GetVmDirServiceStatus -  VmDirGetDCInfos API call for Server: {0} complete", serverDto.Server);
                _logger.Log(message, LogLevel.Info);
            }
            catch (Exception exc)
            {
                dto.Alive = false;
            }
            return(dto);
        }
Exemplo n.º 21
0
        private void UpdateManagementNode(NodeDto host, ServerDto serverDto)
        {
            var message = string.Format("Method: UpdateManagementNode refresh cache cycle start for Server: {0}", host.Name);
            var logger  = PscHighAvailabilityAppEnvironment.Instance.Logger;

            logger.Log(message, LogLevel.Info);
            var service = PscHighAvailabilityAppEnvironment.Instance.Service;
            var server  = new ServerDto
            {
                Server     = host.Name,
                Upn        = serverDto.Upn,
                UserName   = serverDto.UserName,
                Password   = serverDto.Password,
                DomainName = serverDto.DomainName
            };
            var dto = service.GetManagementNodeDetails(server);

            dto.Name   = server.Server;
            dto.Domain = server.DomainName;
            message    = string.Format("Method: UpdateManagementNode - for Server: {0}", host.Name);
            logger.Log(message, LogLevel.Info);
            var index = Hosts.FindIndex(x => x.Name == dto.Name);

            if (index > -1 && index < Hosts.Count)
            {
                Hosts[index] = dto;

                message = string.Format("Method: UpdateManagementNode updated VC Server: {0}", host.Name);
                logger.Log(message, LogLevel.Info);
            }
            message = string.Format("Method: UpdateManagementNode refresh cache cycle end for Server: {0}", host.Name);
            logger.Log(message, LogLevel.Info);
        }
        /// <summary>
        /// Gets the domain functional level for the server
        /// </summary>
        /// <param name="serverDto">Server details</param>
        /// <returns>Domain functional level</returns>
        public string GetDomainFunctionalLevel(ServerDto serverDto)
        {
            var dfl = string.Empty;

            try
            {
                var message = string.Format("Method: GetDomainFunctionalLevel - LdapSearchHelper.Search API call for Server: {0} complete", serverDto.Server);
                _logger.Log(message, LogLevel.Info);

                var helper   = new LdapSearchHelper(serverDto.Server, serverDto.Upn, serverDto.Password);
                var searchDN = "DC=" + serverDto.DomainName.Replace(".", ", DC=");
                Action <ILdapMessage, List <ILdapEntry> > action = delegate(ILdapMessage searchRequest, List <ILdapEntry> values)
                {
                    dfl = GetDomainFunctionalLevel(searchRequest, values);
                };
                helper.Search(searchDN, LdapScope.SCOPE_BASE, "(objectClass=*)", new[] { "+" }, true, action);

                message = string.Format("Method: GetDomainFunctionalLevel - CdcGetDCStatus API call for Server: {0} complete", serverDto.Server);
                _logger.Log(message, LogLevel.Info);
            }
            catch (Exception exc)
            {
                _logger.LogException(exc);
            }
            return(dfl);
        }
Exemplo n.º 23
0
        public GroupDto Update(ServerDto serverDto, string tenant, GroupDto groupDto, Token token)
        {
            var principalName = Uri.EscapeDataString(groupDto.GroupName + "@" + groupDto.GroupDomain);

            tenant = Uri.EscapeDataString(tenant);
            var url = string.Format(ServiceConfigManager.GroupEndPoint, serverDto.Protocol, serverDto.ServerName, serverDto.Port, tenant, principalName);
            var g   = new GroupDto()
            {
                GroupDetails = new GroupDetailsDto {
                    Description = groupDto.GroupDetails.Description
                }
            };
            var json = JsonConvert.Serialize(g);

            ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); };
            var requestConfig = new RequestSettings
            {
                Method = HttpMethod.Put,
            };
            var headers = ServiceHelper.AddHeaders(ServiceConfigManager.JsonContentType);

            json = "access_token=" + token.AccessToken + "&token_type=" + token.TokenType.ToString().ToLower() + "&" + json;
            var response = _webRequestManager.GetResponse(url, requestConfig, headers, null, json);

            return(JsonConvert.Deserialize <GroupDto>(response));
        }
Exemplo n.º 24
0
 private void GetDomainFunctionalLevel()
 {
     try
     {
         var domainFucntionalLevel = string.Empty;
         var serverNode            = _formView.ScopeNode as ServerNode;
         if (serverNode != null)
         {
             var dto = serverNode.Hosts.FirstOrDefault(x => x.NodeType == NodeType.Infrastructure && x.Active);
             if (dto != null)
             {
                 if (serverNode.ServerDto != null)
                 {
                     var serverDto = new ServerDto {
                         Server = dto.Name, Upn = serverNode.ServerDto.Upn, Password = serverNode.ServerDto.Password, DomainName = serverNode.ServerDto.DomainName
                     };
                     domainFucntionalLevel = PscHighAvailabilityAppEnvironment.Instance.Service.GetDomainFunctionalLevel(serverDto);
                 }
             }
         }
         txtDomainFunctionalLevel.Text = domainFucntionalLevel;
     }
     catch (Exception exc)
     {
         var custom = new CustomExceptionExtractor().GetCustomMessage(exc);
         PscHighAvailabilityAppEnvironment.Instance.Logger.LogException(exc, custom);
         MiscUtilsService.ShowError(exc);
     }
 }
Exemplo n.º 25
0
        /// <summary>
        /// Updates the management node.
        /// </summary>
        /// <param name="host">Host.</param>
        /// <param name="serverDto">Server dto.</param>
        public void UpdateManagementNode(NodeDto host, ServerDto serverDto)
        {
            var server = new ServerDto
            {
                Server     = host.Name,
                Upn        = serverDto.Upn,
                UserName   = serverDto.UserName,
                Password   = serverDto.Password,
                DomainName = serverDto.DomainName
            };
            var dto = _service.GetManagementNodeDetails(server);

            dto.Name   = server.Server;
            dto.Domain = server.DomainName;
            var index = Hosts.FindIndex(x => x.Name == dto.Name);

            if (index < Hosts.Count)
            {
                Hosts[index] = dto;
            }
            if (OnCacheRefresh != null)
            {
                OnCacheRefresh(this, EventArgs.Empty);
            }
        }
        public override void AnnounceServer(string serverId, ServerContext context)
        {
            if (serverId == null)
            {
                throw new ArgumentNullException(nameof(serverId));
            }

            if (context == null)
            {
                throw new ArgumentNullException(nameof(context));
            }
            try
            {
                using var realm       = _storage.GetRealm();
                using var transaction = realm.BeginWrite();
                var server = new ServerDto
                {
                    Id            = serverId,
                    WorkerCount   = context.WorkerCount,
                    StartedAt     = DateTime.UtcNow,
                    LastHeartbeat = DateTime.UtcNow
                };
                ((List <string>)server.Queues).AddRange(context.Queues);
                realm.Add(server, update: true);
                transaction.Commit();
            }
            catch (Exception e)
            {
                _logger.ErrorException($"Error announcing {serverId}.", e);
                throw;
            }
        }
        /// <summary>
        /// Connects to server.
        /// </summary>
        /// <returns>The to server.</returns>
        /// <param name="server">Server.</param>
        public ServerDto ConnectToServer(string server)
        {
            var form = new LoginWindowController()
            {
                Server = server
            };
            var serverDto = new ServerDto {
                Server = server
            };

            NSApplication.SharedApplication.BeginSheet(form.Window, this.Window, () => {
            });
            try {
                nint result = NSApplication.SharedApplication.RunModalForWindow(form.Window);
                if (result == VMIdentityConstants.DIALOGOK)
                {
                    serverDto = new ServerDto {
                        Server     = form.Server,
                        UserName   = form.UserName,
                        Password   = form.Password,
                        DomainName = form.DomainName,
                        Upn        = form.Upn
                    };
                }
            } finally {
                Window.EndSheet(form.Window);
                form.Close();
                form.Dispose();
            }
            return(serverDto);
        }
Exemplo n.º 28
0
        public string GetSamlTokenFromGss(ServerDto serverDto, string bet, int lifeTimeSeconds=300)
        {            
            var soapString = XmlResourceHelper.GetResourceXml("Vmware.Tools.RestSsoAdminSnapIn.Service.xml.BETLoginRequest.xml");            
            var dt = DateTime.Now;
            dt = TimeZoneInfo.ConvertTimeToUtc(dt);
            ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
            var dtEnd = dt.AddSeconds(lifeTimeSeconds);

            string format = "yyyy-MM-ddTHH:mm:ss.fffZ";
            var dt1 = dt.ToString(format);
            var dt2 = dtEnd.ToString(format);

            soapString = string.Format(soapString, dt1, dt2, dt1, dt2, bet);

            var customHeaders = new Dictionary<string, string>();
            customHeaders.Add("SOAPAction", "http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/Issue");
            var headers = ServiceHelper.AddHeaders("text/xml");
            var url = serverDto.Url;
            var requestConfig = new RequestSettings
            {
                Method = HttpMethod.Post,
            };
            var responseFromServer = _webRequestManager.GetResponse(url, requestConfig, headers, customHeaders, soapString);

            XmlDocument doc = new XmlDocument();
            doc.PreserveWhitespace = false;
            using (var reader = new StringReader(responseFromServer))
                doc.Load(reader);
            var node = doc.GetElementsByTagName("saml2:Assertion")[0];
            if (node != null)
                return node.OuterXml;
            else
                throw new Exception(responseFromServer);
        }
Exemplo n.º 29
0
 public UserGeneralPropertyManager(ServiceGateway service, UserDto dto, ServerDto serverDto, string tenantName)
 {
     _tenantName  = tenantName;
     _dtoOriginal = dto;
     _service     = service;
     _serverDto   = serverDto;
 }
Exemplo n.º 30
0
 public IHttpActionResult Create([FromBody] ServerDto server)
 {
     server.CreatorId   = UserHelper.CurrUserInfo.UserId;
     server.CreatorName = UserHelper.CurrUserInfo.NickName;
     _serverSvc.CreateServer(server);
     return(Ok());
 }