public DERMacData build()
{
switch (type)
{
case UNILATERALU:
case BILATERALU:
return new DERMacData(concatenate(type.getHeader(),
DerUtil.toByteArray(idU), DerUtil.toByteArray(idV),
DerUtil.toByteArray(ephemDataU), DerUtil.toByteArray(ephemDataV), text));
case UNILATERALV:
case BILATERALV:
return new DERMacData(concatenate(type.getHeader(),
DerUtil.toByteArray(idV), DerUtil.toByteArray(idU),
DerUtil.toByteArray(ephemDataV), DerUtil.toByteArray(ephemDataU), text));
}
throw new IllegalStateException("Unknown type encountered in build");
}