}
private PrivateMessage decodePrivateMessageSequence( DERSequence sequence )
{
PrivateMessage message = new PrivateMessage();
for ( Enumeration<DEREncodable> e = sequence.getObjects(); e.hasMoreElements(); )
{
DERTaggedObject object = ( DERTaggedObject ) e.nextElement();
int tag = object.getTagNo();
DEREncodable derObject = object.getObject();
switch ( tag )
{
case 0:
DERInteger tag0 = ( DERInteger ) derObject;
message.setProtocolVersionNumber( tag0.intValue() );
break;
case 1:
DERInteger tag1 = ( DERInteger ) derObject;
message.setMessageType( KerberosMessageType.getTypeByOrdinal( tag1.intValue() ) );
break;
case 3:
DERSequence tag3 = ( DERSequence ) derObject;
message.setEncryptedPart( EncryptedDataDecoder.decode( tag3 ) );
break;
}
}
return message;