@Override
public void execute (final ProtocolDataUnit pdu) throws IOException , InterruptedException , InternetSCSIException , DigestException , SettingsException {
final BasicHeaderSegment bhs = pdu.getBasicHeaderSegment();
final SCSICommandParser parser = (SCSICommandParser) bhs.getParser();
final ModeSense6Cdb cdb = new ModeSense6Cdb(parser.getCDB());
if (LOGGER.isDebugEnabled()) {
LOGGER.debug(Boolean.toString(cdb.getDisableBlockDescriptors()));
LOGGER.debug(cdb.getPageControl().toString());
LOGGER.debug(Integer.toString(cdb.getPageCode()));
LOGGER.debug(Integer.toString(cdb.getSubpageCode()));
LOGGER.debug("cdb.getAllocationLength() = " + cdb.getAllocationLength());
// LOGGER.debug(cdb.getModePage());
}
// final PageControl pageControl = cdb.getPageControl();//see 8 lines
// below
final ModePageCode modePageCode = cdb.getModePage();
// ModeParameterList and ModeParameterListBuilder common to
// all supported ModePage requests
ModePage[] modePages = null;