code: @Override
      protected EmitItem generateEmitItem(List<Object> retItems, KestrelSourceId sourceId)
      {
          String groupingInfo = null;
          String jsonMessage = (String) retItems.get(0);
  
          try
          {
              // グルーピング情報を取得する
              groupingInfo = JsonValueExtractor.extractValue(jsonMessage, HEADER_TAG, MESSAGEKEY_TAG);
          }
          catch (JSONException jex)
          {
              String logFormat = "Received message is not json. : message={0}";
              logger.debug(MessageFormat.format(logFormat, jsonMessage), jex);
              return null;
          }
  
          // グルーピング情報をグルーピングキーに指定し、Boltにメッセージを送信する
          EmitItem generatedItem = new EmitItem(Arrays.asList((Object) groupingInfo, jsonMessage),
                  sourceId);
          return generatedItem;
      }
docs: {@inheritDoc}