Exemple #1
0
 private void UpdateSertificates(IEnumerable <object> list)
 {
     Certificates.Clear();
     if (list != null)
     {
         foreach (object tmp in list)
         {
             List <object> it;
             if (tmp is List <object> )
             {
                 it = (List <object>)tmp;
             }
             else
             {
                 it = new List <object>((object[])tmp);
             }
             GXDLMSCertificateInfo info = new GXDLMSCertificateInfo();
             info.Entity         = (CertificateEntity)Convert.ToInt32(it[0]);
             info.Type           = (CertificateType)Convert.ToInt32(it[1]);
             info.SerialNumber   = ASCIIEncoding.ASCII.GetString((byte[])it[2]);
             info.Issuer         = ASCIIEncoding.ASCII.GetString((byte[])it[3]);
             info.Subject        = ASCIIEncoding.ASCII.GetString((byte[])it[4]);
             info.SubjectAltName = ASCIIEncoding.ASCII.GetString((byte[])it[5]);
             Certificates.Add(info);
         }
     }
 }
Exemple #2
0
 private void UpdateSertificates(object[] list)
 {
     Certificates.Clear();
     if (list != null)
     {
         foreach (object[] it in list)
         {
             GXDLMSCertificateInfo info = new GXDLMSCertificateInfo();
             info.Entity         = (CertificateEntity)Convert.ToInt32(it[0]);
             info.Type           = (CertificateType)Convert.ToInt32(it[1]);
             info.SerialNumber   = ASCIIEncoding.ASCII.GetString((byte[])it[2]);
             info.Issuer         = ASCIIEncoding.ASCII.GetString((byte[])it[3]);
             info.Subject        = ASCIIEncoding.ASCII.GetString((byte[])it[4]);
             info.SubjectAltName = ASCIIEncoding.ASCII.GetString((byte[])it[5]);
             Certificates.Add(info);
         }
     }
 }
        void IGXDLMSBase.Load(GXXmlReader reader)
        {
            SecurityPolicy = (SecurityPolicy)reader.ReadElementContentAsInt("SecurityPolicy");
            //This is old functionality.It can be removed in some point.
            reader.ReadElementContentAsInt("SecurityPolicy0");
            SecuritySuite = (SecuritySuite)reader.ReadElementContentAsInt("SecuritySuite");
            string str = reader.ReadElementContentAsString("ClientSystemTitle");

            if (str == null)
            {
                ClientSystemTitle = null;
            }
            else
            {
                ClientSystemTitle = GXDLMSTranslator.HexToBytes(str);
            }
            str = reader.ReadElementContentAsString("ServerSystemTitle");
            if (str == null)
            {
                ServerSystemTitle = null;
            }
            else
            {
                ServerSystemTitle = GXDLMSTranslator.HexToBytes(str);
            }
            Certificates.Clear();
            if (reader.IsStartElement("Certificates", true))
            {
                while (reader.IsStartElement("Item", true))
                {
                    GXDLMSCertificateInfo it = new GXDLMSCertificateInfo();
                    Certificates.Add(it);
                    it.Entity         = (CertificateEntity)reader.ReadElementContentAsInt("Entity");
                    it.Type           = (CertificateType)reader.ReadElementContentAsInt("Type");
                    it.SerialNumber   = BigInteger.Parse(reader.ReadElementContentAsString("SerialNumber"));
                    it.Issuer         = reader.ReadElementContentAsString("Issuer");
                    it.Subject        = reader.ReadElementContentAsString("Subject");
                    it.SubjectAltName = reader.ReadElementContentAsString("SubjectAltName");
                }
                reader.ReadEndElement("Certificates");
            }
        }
        private void UpdateSertificates(object[] list)
        {
            Certificates.Clear();
            foreach (object[] it in list)
            {
                GXDLMSCertificateInfo info = new GXDLMSCertificateInfo();
                info.Entity = (CertificateEntity)Convert.ToInt32(it[0]);
                info.Type = (CertificateType)Convert.ToInt32(it[1]);
                info.SerialNumber = ASCIIEncoding.ASCII.GetString((byte[])it[2]);
                info.Issuer = ASCIIEncoding.ASCII.GetString((byte[])it[3]);
                info.Subject = ASCIIEncoding.ASCII.GetString((byte[])it[4]);
                info.SubjectAltName = ASCIIEncoding.ASCII.GetString((byte[])it[5]);
                Certificates.Add(info);
            }

        }