@Throws(sun.security.krb5.Asn1Exception::class, IOException::class) fun parse(data: sun.security.util.DerInputStream,explicitTag: Byte,optional: Boolean): sun.security.krb5.internal.KerberosTime? {if (optional && data.peekByte().toByte() and 0x1F.toByte() !=explicitTag.toInt()) return null val der: sun.security.util.DerValue = data.getDerValue()return if (explicitTag.toInt() != der.getTag() and 0x1F.toByte()) { throw sun.security.krb5.Asn1Exception(sun.security.krb5.internal.Krb5.ASN1_BAD_ID) } else { val subDer: sun.security.util.DerValue = der.getData().getDerValue() val temp: Date = subDer.getGeneralizedTime() sun.security.krb5.internal.KerberosTime(temp.time, 0) } }
Parse ( unmarshal ) a kerberostime from a DER input stream . This form parsing might be used when expanding a value which is part of a constructed sequence and uses explicitly tagged type .