public static VCServersInfo getVCServerInfoByOrganizationID(string organizationID) { VCSettingsInfo settingsInfo = GetVCSettingsInfo(); List <VCServersInfo> vcServers = null; VCServersInfo server = null; if (settingsInfo != null) { vcServers = settingsInfo.servers; } if (vcServers != null) { server = vcServers.FirstOrDefault(vcServer => vcServer.organizations.Any(organizations => organizations.organizationID == organizationID)); } return(server); }
internal static List <VCServersInfo> readVCSettingsXML(XmlReader reader) { List <VCServersInfo> vcServersList = new List <VCServersInfo>(); bool insideServer = false; bool insideOrganization = false; string name = string.Empty; string URL = string.Empty; string authorName = string.Empty; string encryptKey = string.Empty; string encryptedUserName = string.Empty; string encryptedPassword = string.Empty; string orgName = string.Empty; string orgID = string.Empty; List <VCOrganizationInfo> organizationsList = new List <VCOrganizationInfo>(); do { if (reader.NodeType == XmlNodeType.Element && reader.Name == TAGS_VC.SERVER && !insideServer) // e.g. <SYS> or <COUNTRY> { insideServer = true; } else if (reader.NodeType == XmlNodeType.EndElement && reader.Name == TAGS_VC.SERVER && insideServer) // e.g. </SYS> or </COUNTRY> { insideServer = false; VCServersInfo vcServerSingle = new VCServersInfo(name, URL, authorName, encryptKey, organizationsList, encryptedUserName, encryptedPassword); vcServersList.Add(vcServerSingle); name = string.Empty; URL = string.Empty; authorName = string.Empty; encryptKey = string.Empty; encryptedUserName = string.Empty; orgName = string.Empty; orgID = string.Empty;; organizationsList = new List <VCOrganizationInfo>(); } if (reader.NodeType == XmlNodeType.Element && reader.Name == TAGS_VC.ORGANIZATION && insideServer && !insideOrganization) { insideOrganization = true; } else if (reader.NodeType == XmlNodeType.EndElement && reader.Name == TAGS_VC.ORGANIZATION && insideServer && insideOrganization) { insideOrganization = false; VCOrganizationInfo organization = new VCOrganizationInfo(orgName, orgID); organizationsList.Add(organization); orgName = string.Empty; orgID = string.Empty;; } if (insideServer && !insideOrganization) { switch (reader.Name) { case TAGS_VC.SERVER_NAME: name = reader.ReadInnerXml(); break; case TAGS_VC.SERVER_URL: URL = reader.ReadInnerXml(); break; case TAGS_VC.SERVER_AUTHOR_NAME: authorName = reader.ReadInnerXml(); break; case TAGS_VC.SERVER_ENCRYPT_KEY: encryptKey = reader.ReadInnerXml(); break; case TAGS_VC.SERVER_USER_NAME: encryptedUserName = reader.ReadInnerXml(); break; case TAGS_VC.SERVER_PASSWORD: encryptedPassword = reader.ReadInnerXml(); break; default: //Console.WriteLine("Default case"); break; } } else if (insideServer && insideOrganization) { switch (reader.Name) { case TAGS_VC.ORGANIZATION_NAME: orgName = reader.ReadInnerXml(); break; case TAGS_VC.ORGANIZATION_ID: orgID = reader.ReadInnerXml(); break; default: //Console.WriteLine("Default case"); break; } } } while (reader.Read()); return(vcServersList); }