code: @EventHandler
      protected void onEvent(IncomingDataTransferReceivedEvent event,
                             @MetaData(value = CorrelationToken.KEY, required = false) CorrelationToken correlationToken) {
          /*
           * Handle the incoming datatransfer message here, to complete the loop we now
           * just return ACCEPTED and no response data.
          */
  
          IncomingDataTransferResultStatus processingStatus = IncomingDataTransferResultStatus.ACCEPTED;
          String responseData = "";
          CommandMessage commandMessage = asCommandMessage(new IncomingDataTransferResponseCommand(event.getChargingStationId(), responseData, processingStatus, event.getIdentityContext()));
  
          if (correlationToken != null) {
              commandMessage = commandMessage.andMetaData(Collections.singletonMap(CorrelationToken.KEY, correlationToken));
          }
  
          commandGateway.send(commandMessage);
      }
docs: Listens for {@code IncomingDataTransferReceivedEvent} and handles the incoming datatransfer.
  Sends a {@code IncomingDataTransferResponseCommand} containing the response status and optional
  data to be sent back to the charging station.
  
  @param event            the incoming data transfer event.
  @param correlationToken correlation token which will be added to outgoing command if it's not null or empty.