コード例 #1
0
  public void start(Future<Void> startFuture) {

    logger.info("[PacketDividerController-start()] START! > " + this.name);

    EventBus eb = vertx.eventBus();
    PacketAnalyzer pa = new PacketAnalyzer();

    eb.consumer(
        "PD_Trap" + remoteAddr,
        message -> {
          JsonObject jo = (JsonObject) message.body();
          String recvMsg = jo.getString("recvPacket");

          logger.debug(name_log + "PD_Trap, RECV[" + recvMsg.length() + "]> \n" + recvMsg);

          JsonObject paJo = new JsonObject();
          paJo = pa.reqAnalyzePacket(recvMsg);

          logger.debug("paJo.size(): " + paJo.size());

          // RESPONSE, to Target
          if (!paJo.isEmpty()) {
            logger.debug("nextCmd: " + paJo.getString("nextCmd"));

            String sendPacket = paJo.getString("sendPacket");
            logger.debug("[sendData()] sendPacket: " + sendPacket);
            logger.debug(name_log + "PD_Trap, SEND> " + sendPacket);
            eb.send(remoteAddr + "Trap_ACK", sendPacket);
          } else {
            logger.debug(name_log + "PD_Trap, SEND> " + "NACK");
            String sendPacket = "NACK";
            eb.send(remoteAddr + "Trap_NACK", sendPacket);
          }
        });
  }