while (offset < pduData.length) {
switch (pduData[offset]) {
case PduConstants.PARAM_VERSION:
byte major = (byte)((pduData[offset + 2] >> 4) & 0x0F);
byte minor = (byte)(pduData[offset + 2] & 0x0F);
params.add(new Version(major, minor));
break;
case PduConstants.PARAM_SN:
String serviceName = new String(pduData, offset + 2, pduData[offset + 1]);
params.add(new ServiceName(serviceName));
break;