code: @Override
      public boolean onEvent(EventMessage<?> event) {
          AuthorizationResultEvent resultEvent;
  
          if (!(event.getPayload() instanceof AuthorizationResultEvent)) {
              // not the right type of event... not 'handled'
              return false;
          }
  
          resultEvent = (AuthorizationResultEvent) event.getPayload();
  
          Transaction transaction = domainService.createTransaction(startTransaction.getEvseId());
          NumberedTransactionId transactionId = new NumberedTransactionId(chargingStationId, protocolIdentifier, transaction.getId().intValue());
  
          IdentifyingToken identifyingToken = resultEvent.getIdentifyingToken();
          StartTransactionInfo extendedStartTransactionInfo = new StartTransactionInfo(startTransaction.getEvseId(), startTransaction.getMeterStart(), startTransaction.getTimestamp(), identifyingToken, startTransaction.getAttributes());
          
          domainService.startTransactionNoAuthorize(chargingStationId, transactionId, extendedStartTransactionInfo, addOnIdentity);
  
          StartTransactionFutureResult futureResult = new StartTransactionFutureResult();
          futureResult.setAuthorizationResultStatus(resultEvent.getAuthenticationStatus());
          futureResult.setTransactionId(transactionId.getNumber());
  
          this.setResult(futureResult);
  
          this.countDownLatch();
  
          if (continuation != null) {
              // no need to wait for the continuation timeout, resume it now
              continuation.resume();
          }
  
          return true;
      }
docs: Handles the {@code AuthorizationResultEvent} (other events will directly result in 'false' return value). In the
  flow of handling a start transaction message the first step is to authorize the identification used to start
  the transaction. This method handles that event and uses the domain service to start the transaction and sets the
  result of the start transaction using 'setResult'. The continuation, if it exists, is resumed.
  
  @param event Authorizaton result event.
  @return true if the event has been handled, false if the event was the wrong type.