summaryrefslogtreecommitdiff
path: root/api/src
diff options
context:
space:
mode:
authorMike Vink <mike1994vink@gmail.com>2021-07-28 16:52:08 +0200
committerMike Vink <mike1994vink@gmail.com>2021-07-28 16:52:08 +0200
commit9e675c3652eb7a16ce5c2a865c030c76653c921e (patch)
tree6ae24d621eb38b832ba6d6595d2ad87b6f1ec5aa /api/src
parent4d84c12df52c89abb7d3ba9f565753116b99dbf0 (diff)
feat(): refactor after playing with mixins
Diffstat (limited to 'api/src')
-rw-r--r--api/src/main/java/akkamon/api/MessagingEngine.java25
-rw-r--r--api/src/main/java/akkamon/api/models/InteractionRequest.java12
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;
}
}