protected int decodeMandatoryParameters( ISUPParameterFactory parameterFactory, byte[] b, int index) throws ParameterException { int localIndex = index; index += super.decodeMandatoryParameters(parameterFactory, b, index); if (b.length - index > 1) { CircuitGroupSuperVisionMessageType cgsvmt = parameterFactory.createCircuitGroupSuperVisionMessageType(); ((AbstractISUPParameter) cgsvmt).decode(new byte[] {b[index]}); this.setSupervisionType(cgsvmt); index++; return index - localIndex; } else { throw new IllegalArgumentException("byte[] must have atleast one octets"); } }