public async Task <VmmServer> UpdateVmmServer(VmmServer server, string id) { try { Guid stampId = Guid.Parse(id); if (stampId != server.StampId) { throw new Exception("Bad ID!"); } await this.vmmServerClient.CheckVmmConnectivity(server); byte[] encryptionResult = encryptor.EncryptData(server.Password); return(await this.configStorageClient.UpdateVmmServerAsync <VmmServer>( server.StampId, server.UserName, encryptionResult, VmmServerMapping.CreateVmmServerWithoutPassword)); } catch (Exception e) { VmBackupLog.Current.WriteErrorMessage("UpdateVmmServer", VmBackupEventId.UnexpectedAdminException, e); throw; } }
public VmmServerModel(VmmServer server) { this.ServerName = server.ServerName; this.StampId = server.StampId; this.State = server.State; this.UserName = server.UserName; }
public async Task <JsonResult> UpdateVmmServer(Guid stampId, string serverName, string userName, string password) { Requires.Argument <Guid>("stampId", stampId).NotNull(); Requires.Argument <string>("serverName", serverName).NotNullOrEmpty(); Requires.Argument <string>("userName", userName).NotNullOrEmpty(); Requires.Argument <string>("password", password).NotNullOrEmpty(); try { VmmServer serverToPost = new VmmServer() { StampId = stampId, ServerName = serverName, UserName = userName, Password = password }; var server = await ClientFactory.VmBackupClient.UpdateVmmServerAsync(serverToPost); VmmServerModel serverModel = new VmmServerModel(server); return(Json(serverModel)); } catch (Exception e) { throw this.HandleException(e); } }
public static VmmServer CreateVmmServerWithoutPassword(SqlDataReader sqlDataReader) { VmmServer server = null; if (sqlDataReader.Read()) { server = GenerateVmmServer(sqlDataReader, true); } return(server); }
public static VmmServer CreateVmmServer(SqlDataReader sqlDataReader) { VmmServer server = null; if (sqlDataReader.Read()) { server = GenerateVmmServer(sqlDataReader, false); } return(server); }
/// <summary> /// /// </summary> /// <param name="resourceToPost"></param> /// <returns></returns> public Task <VmmServer> UpdateVmmServerAsync(VmmServer resourceToPost) { if (resourceToPost == null) { throw new ArgumentNullException("resourceToPost"); } var requestUrl = this.CreateRequestUri(string.Format(CultureInfo.InvariantCulture, VmBackupClient.VmmServer, resourceToPost.StampId)); return(this.restClient.PutResourceAsync <VmmServer, VmBackupErrorResource>(resourceToPost, requestUrl) .HandleException <VmmServer>(this.HandleAggregateException)); }
/// <summary> /// /// </summary> /// <param name="resourceToPost"></param> /// <returns></returns> public Task <VmmServer> CreateVmmServerAsync(VmmServer resourceToPost) { if (resourceToPost == null) { throw new ArgumentNullException("resourceToPost"); } var requestUrl = this.CreateRequestUri(VmBackupClient.VmmServers); return(this.restClient.PostResourceAsync <VmmServer, VmBackupErrorResource>(resourceToPost, requestUrl) .HandleException <VmmServer>(this.HandleAggregateException)); }
private static VmmServer GenerateVmmServer(SqlDataReader sqlDataReader, bool removePassword = true) { VmmServer server = new VmmServer(); server.StampId = (Guid)sqlDataReader["StampId"]; server.ServerName = (string)sqlDataReader["ServerName"]; server.UserName = (string)sqlDataReader["UserName"]; //Decrypt the password byte[] encryptedPassword = (byte[])sqlDataReader["Password"]; server.Password = removePassword ? string.Empty : encryptor.DecryptData(encryptedPassword); server.State = "Registered"; return(server); }
public async Task <VmmServer> InsertVmmServer(VmmServer server) { try { await this.vmmServerClient.CheckVmmConnectivity(server); byte[] encryptionResult = encryptor.EncryptData(server.Password); return(await this.configStorageClient.InsertVmmServerAsync <VmmServer>( server.StampId, server.ServerName, server.UserName, encryptionResult, VmmServerMapping.CreateVmmServerWithoutPassword)); } catch (Exception e) { VmBackupLog.Current.WriteErrorMessage("InsertVmmServer", VmBackupEventId.UnexpectedAdminException, e); throw; } }
public async Task <VmmServer> UpdateVmmServer(VmmServer server, string stampId) { return(await this.vmmServersProvider.UpdateVmmServer(server, stampId)); }
public async Task <HttpResponseMessage> InsertVmmSever(VmmServer server) { VmmServer vmmServer = await this.vmmServersProvider.InsertVmmServer(server); return(Request.CreateResponse <VmmServer>(HttpStatusCode.Created, vmmServer)); }
public async Task CheckVmmConnectivity(VmmServer server) { await this.RunScriptAsync(PowerShellCommandFactory.GetCheckVmmConnectivityScript(server.ServerName), server.ServerName, server.UserName, server.Password); }