package org.apache.kerberos.kerb.spec.fast; import org.apache.haox.asn1.type.Asn1FieldInfo; import org.apache.haox.asn1.type.Asn1Integer; import org.apache.haox.asn1.type.Asn1OctetString; import org.apache.kerberos.kerb.spec.KrbSequenceType; import org.apache.kerberos.kerb.spec.pa.PaDataType; /** PA-AUTHENTICATION-SET-ELEM ::= SEQUENCE { pa-type [0] Int32, pa-hint [1] OCTET STRING OPTIONAL, pa-value [2] OCTET STRING OPTIONAL, } */ public class PaAuthnEntry extends KrbSequenceType { private static int PA_TYPE = 0; private static int PA_HINT = 1; private static int PA_VALUE = 2; static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] { new Asn1FieldInfo(PA_TYPE, Asn1Integer.class), new Asn1FieldInfo(PA_HINT, Asn1OctetString.class), new Asn1FieldInfo(PA_VALUE, Asn1OctetString.class) }; public PaAuthnEntry() { super(fieldInfos); } public PaAuthnEntry(PaDataType type, byte[] paData) { this(); setPaType(type); setPaValue(paData); } public PaDataType getPaType() { Integer value = getFieldAsInteger(PA_TYPE); return PaDataType.fromValue(value); } public void setPaType(PaDataType paDataType) { setFieldAsInt(PA_TYPE, paDataType.getValue()); } public byte[] getPaHint() { return getFieldAsOctets(PA_HINT); } public void setPaHint(byte[] paHint) { setFieldAsOctets(PA_HINT, paHint); } public byte[] getPaValue() { return getFieldAsOctets(PA_VALUE); } public void setPaValue(byte[] paValue) { setFieldAsOctets(PA_VALUE, paValue); } }