private void processCommandSave(ProcessorContext context, DataInputStream dis)
     throws IOException {
   GameRecord record = extractGameRecord(context, dis);
   try {
     recordServ.saveOrUpdate(record, context.getProductId());
   } catch (ServiceException e) {
     context.setErrorCode(ErrorCode.EC_SERVICE_FAILED);
     context.setMessage(ErrorCode.getErrorMessage(ErrorCode.EC_SERVICE_FAILED));
     throw new RequestProcessException(e);
   }
 }
 private void processCommandQueryDescList(ProcessorContext context, DataInputStream dis)
     throws IOException {
   int accountId = dis.readInt();
   int productId = dis.readInt();
   try {
     List<GameRecordDesc> descList = recordServ.queryRecordDescList(accountId, productId);
     context.setResult(descList);
   } catch (ServiceException e) {
     context.setErrorCode(ErrorCode.EC_SERVICE_FAILED);
     context.setMessage(ErrorCode.getErrorMessage(ErrorCode.EC_SERVICE_FAILED));
     throw new RequestProcessException(e);
   }
 }
 private void processCommandRead(ProcessorContext context, DataInputStream dis)
     throws IOException {
   int accountId = dis.readInt();
   int productId = dis.readInt();
   int recordId = dis.readInt();
   try {
     GameRecord record = recordServ.read(accountId, productId, recordId);
     context.setResult(record);
   } catch (ServiceException e) {
     context.setErrorCode(ErrorCode.EC_SERVICE_FAILED);
     context.setMessage(ErrorCode.getErrorMessage(ErrorCode.EC_SERVICE_FAILED));
     throw new RequestProcessException(e);
   }
 }