feat: Stop transaction logging

feature/altai
Terekhin Alexandr 2 years ago
parent 9e2cc2f657
commit 103d5bb8a4
Signed by: didinst
GPG Key ID: D2EF94423C23BF12
  1. 7
      src/main/java/com/yablochkov/ocppstub/EventHandler.java
  2. 10
      src/main/java/com/yablochkov/ocppstub/TransactionService.java

@ -76,12 +76,15 @@ public class EventHandler implements ServerCoreEventHandler, ServerEvents {
@Override
public StopTransactionConfirmation handleStopTransactionRequest(UUID sessionIndex, StopTransactionRequest request) {
log.info("Stop transaction request {}", request);
transactionService.stopByRequest(sessionIndex, request.getTransactionId());
var transactionId = request.getTransactionId();
transactionService.stopByRequest(sessionIndex, transactionId);
log.info("Prepare stop confirmation");
var confirmation = new StopTransactionConfirmation();
Optional.ofNullable(request.getIdTag())
.ifPresent((idTag) -> confirmation.setIdTagInfo(new IdTagInfo(AuthorizationStatus.Expired)));
log.info("Stop transaction {}, with idTag {} for session {}", request.getTransactionId(), request.getIdTag(), sessionIndex);
log.info("Stop transaction {}, with idTag {} for session {}", transactionId, request.getIdTag(), sessionIndex);
return confirmation;
}

@ -15,6 +15,7 @@ import eu.chargetime.ocpp.model.core.StartTransactionConfirmation;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.UUID;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.atomic.AtomicInteger;
@ -55,9 +56,12 @@ public class TransactionService {
var identity = sessionService.getIdentityBySessionId(sessionIndex);
log.info("Try to stop transaction for {}, with id {}", identity, transactionId);
if (Objects.nonNull(identity)) {
transactionMap.remove(identity);
}
Optional.ofNullable(identity)
.map(transactionMap::remove)
.filter(Objects::nonNull)
.ifPresentOrElse(
(id) -> log.info("Transaction id {} removed ({} requested)", id, transactionId),
() -> log.info("Nothing to remove for {}", transactionId));
}
public RemoteStartTransactionConfirmation remoteStart(String id, Integer connectorId) {

Loading…
Cancel
Save