private static int SaveMailboxServer(IMailboxServerDao daoMailboxServer, MailboxServer server, int providerId) { server.IsUserData = true; server.ProviderId = providerId; return(daoMailboxServer.SaveServer(server)); }
private static int GetMailboxServerId(IMailboxServerDao daoMailboxServer, MailboxServer dbServer, MailboxServer newServer, List <MailboxServer> trustedServers) { int serverId; if (!dbServer.Equals(newServer)) { // Server settings have been changed if (dbServer.IsUserData) { if (trustedServers != null) { var foundInServer = trustedServers.FirstOrDefault(ts => ts.Equals(newServer)); if (foundInServer != null) { daoMailboxServer.DelteServer(dbServer.Id); newServer.Id = foundInServer.Id; newServer.IsUserData = false; } else { newServer.Id = dbServer.Id; newServer.Id = SaveMailboxServer(daoMailboxServer, newServer, dbServer.ProviderId); } } else { newServer.Id = dbServer.Id; newServer.Id = SaveMailboxServer(daoMailboxServer, newServer, dbServer.ProviderId); } } else { if (trustedServers != null) { var foundInServer = trustedServers.FirstOrDefault(ts => ts.Equals(newServer)); if (foundInServer != null) { newServer.Id = foundInServer.Id; newServer.IsUserData = false; } else { newServer.Id = SaveMailboxServer(daoMailboxServer, newServer, dbServer.ProviderId); } } else { newServer.Id = SaveMailboxServer(daoMailboxServer, newServer, dbServer.ProviderId); } } serverId = newServer.Id; } else { serverId = dbServer.Id; } return(serverId); }