public SaslOutcome newInstance(Object described)
{
List l = (List) described;
SaslOutcome o = new SaslOutcome();
if(l.isEmpty())
{
throw new DecodeException("The code field cannot be omitted");
}
switch(2 - l.size())
{
case 0:
o.setAdditionalData( (Binary) l.get( 1 ) );
case 1:
o.setCode(SaslCode.valueOf((UnsignedByte) l.get(0)));
}
return o;
}