Opc.Ua.X509SubjectAltNameExtension.ParseSubjectAltNameUsageExtension C# (CSharp) Method

ParseSubjectAltNameUsageExtension() private method

Extract URI, DNS and IP from formatted Subject Alternative Name.
private ParseSubjectAltNameUsageExtension ( string formattedData ) : void
formattedData string
return void
        private void ParseSubjectAltNameUsageExtension(string formattedData)
        {
            List<string> uris = new List<string>();
            List<string> domainNames = new List<string>();
            List<string> ipAddresses = new List<string>();

            string[] pairedData = formattedData.Split(',');

            // find desired keys in formatted data
            foreach (string pair in pairedData)
            {
                // Windows style
                string[] splitPair = pair.Trim().Split(new Char[] { ':', '=' }, 2);
                if (splitPair.Length == 2)
                {
                    if (splitPair[0] == s_UniformResourceIdentifier || splitPair[0] == s_URI)
                    {
                        uris.Add(splitPair[1]);
                    }
                    else if (splitPair[0] == s_DnsName || splitPair[0] == s_Dns)
                    {
                        domainNames.Add(splitPair[1]);
                    }
                    else if (splitPair[0] == s_IpAddress || splitPair[0] == s_Ip)
                    {
                        ipAddresses.Add(splitPair[1]);
                    }
                    // ignore unknown keys
                }
            }
            m_uris = new ReadOnlyList<string>(uris);
            m_domainNames = new ReadOnlyList<string>(domainNames);
            m_ipAddresses = new ReadOnlyList<string>(ipAddresses);
        }