diff options
| author | Mike Vink <mike1994vink@gmail.com> | 2021-07-28 16:52:08 +0200 |
|---|---|---|
| committer | Mike Vink <mike1994vink@gmail.com> | 2021-07-28 16:52:08 +0200 |
| commit | 9e675c3652eb7a16ce5c2a865c030c76653c921e (patch) | |
| tree | 6ae24d621eb38b832ba6d6595d2ad87b6f1ec5aa /api/src | |
| parent | 4d84c12df52c89abb7d3ba9f565753116b99dbf0 (diff) | |
feat(): refactor after playing with mixins
Diffstat (limited to 'api/src')
| -rw-r--r-- | api/src/main/java/akkamon/api/MessagingEngine.java | 25 | ||||
| -rw-r--r-- | api/src/main/java/akkamon/api/models/InteractionRequest.java | 12 |
2 files changed, 18 insertions, 19 deletions
diff --git a/api/src/main/java/akkamon/api/MessagingEngine.java b/api/src/main/java/akkamon/api/MessagingEngine.java index 3cdd7be..f1c4a78 100644 --- a/api/src/main/java/akkamon/api/MessagingEngine.java +++ b/api/src/main/java/akkamon/api/MessagingEngine.java @@ -2,10 +2,7 @@ package akkamon.api; import akka.actor.typed.ActorRef; import akka.actor.typed.ActorSystem; -import akkamon.api.models.Event; -import akkamon.api.models.HeartBeatEvent; -import akkamon.api.models.InteractionRequest; -import akkamon.api.models.TrainerRegistrationReplyEvent; +import akkamon.api.models.*; import akkamon.domain.AkkamonMessageEngine; import akkamon.domain.AkkamonNexus; import akkamon.domain.AkkamonSession; @@ -19,6 +16,7 @@ public class MessagingEngine implements AkkamonMessageEngine { private Map<String, Set<AkkamonSession>> sceneIdToAkkamonSessions = new HashMap<>(); private Map<String, AkkamonSession> trainerIdToAkkamonSessions = new HashMap<>(); + private Set<String> pendingInteractioRequestNameSet = new HashSet<>(); private Gson gson = new Gson(); private ActorRef<AkkamonNexus.Command> system; @@ -67,19 +65,20 @@ public class MessagingEngine implements AkkamonMessageEngine { } @Override - public void broadCastInteractionRequestToSessionWithTrainerIds(List<String> trainerIds, String type, String trainerId, long requestId) { + public void broadCastInteractionRequestToSessionWithTrainerIds(List<String> trainerIds, String type, String trainerId, String requestName) { + System.out.println("Sending interaction request " + requestName); + this.pendingInteractioRequestNameSet.add(requestName); for (String id : trainerIds) { AkkamonSession session = trainerIdToAkkamonSessions.get(id); if (session != null) { - session.send(gson.toJson( - new InteractionRequest( - type, - trainerId, - requestId - ) - )); + session.send(gson.toJson(new InteractionRequest( + type, + id, + requestName + ))); } } + } @Override @@ -140,7 +139,7 @@ public class MessagingEngine implements AkkamonMessageEngine { System.out.println(event.interaction); system.tell(new AkkamonNexus.RequestInteraction( UUID.randomUUID().getMostSignificantBits() & Long.MAX_VALUE, - event.type.name(), + event.interaction.type, event.sceneId, event.interaction.requestingTrainerId, event.interaction.receivingTrainerIds, diff --git a/api/src/main/java/akkamon/api/models/InteractionRequest.java b/api/src/main/java/akkamon/api/models/InteractionRequest.java index 32f4974..601f846 100644 --- a/api/src/main/java/akkamon/api/models/InteractionRequest.java +++ b/api/src/main/java/akkamon/api/models/InteractionRequest.java @@ -2,13 +2,13 @@ package akkamon.api.models; public class InteractionRequest extends Event { - public String type; - public String trainerId; - public long requestId; + public String interactionType; + public String requestName; - public InteractionRequest(String type, String trainerId, long requestId) { - this.type = type; + public InteractionRequest(String interactionType, String trainerId, String requestName) { + this.type = EventType.INTERACTION_REQUEST; + this.interactionType = interactionType; this.trainerId = trainerId; - this.requestId = requestId; + this.requestName = requestName; } } |
