fix(build): switch from uber-jar to fast-jar for Docker compatibility

- Change quarkus.package.type from uber-jar to fast-jar
- Add EventShare entity and migration for share tracking
- Add establishment capacity field
- Improve event and establishment services
- Add comprehensive tests

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
dahoud
2026-01-31 20:27:27 +00:00
parent 9dc9ca591c
commit 0240442671
19 changed files with 574 additions and 62 deletions

View File

@@ -47,7 +47,7 @@ public class ChatWebSocketNext {
try {
UUID userUUID = UUID.fromString(userId);
sessions.put(userUUID, connection);
Log.info("[CHAT-WS-NEXT] WebSocket ouvert pour l'utilisateur ID : " + userId);
Log.info("[CHAT-WS-NEXT] WebSocket ouvert pour l'utilisateur ID : " + userId + " (sessions actives: " + sessions.size() + ")");
// Envoyer un message de confirmation
String confirmation = buildJsonMessage("connected",
@@ -220,7 +220,11 @@ public class ChatWebSocketNext {
WebSocketConnection connection = sessions.get(userId);
if (connection == null || !connection.isOpen()) {
Log.debug("[CHAT-WS-NEXT] Utilisateur " + userId + " non connecté");
if (connection != null) {
sessions.remove(userId);
Log.debug("[CHAT-WS-NEXT] Connexion périmée supprimée pour " + userId);
}
Log.debug("[CHAT-WS-NEXT] Utilisateur " + userId + " non connecté (sessions actives: " + sessions.size() + ")");
return;
}
@@ -228,7 +232,8 @@ public class ChatWebSocketNext {
connection.sendText(message);
Log.debug("[CHAT-WS-NEXT] Message envoyé à l'utilisateur: " + userId);
} catch (Exception e) {
Log.error("[CHAT-WS-NEXT] Erreur lors de l'envoi à " + userId, e);
Log.error("[CHAT-WS-NEXT] Erreur lors de l'envoi à " + userId + ", connexion supprimée", e);
sessions.remove(userId);
}
}
@@ -239,6 +244,7 @@ public class ChatWebSocketNext {
WebSocketConnection connection = sessions.get(senderId);
if (connection == null || !connection.isOpen()) {
if (connection != null) sessions.remove(senderId);
Log.debug("[CHAT-WS-NEXT] Expéditeur " + senderId + " non connecté pour confirmation");
return;
}
@@ -248,7 +254,8 @@ public class ChatWebSocketNext {
connection.sendText(response);
Log.debug("[CHAT-WS-NEXT] Confirmation de délivrance envoyée à: " + senderId);
} catch (Exception e) {
Log.error("[CHAT-WS-NEXT] Erreur envoi confirmation à " + senderId, e);
Log.error("[CHAT-WS-NEXT] Erreur envoi confirmation à " + senderId + ", connexion supprimée", e);
sessions.remove(senderId);
}
}
@@ -259,6 +266,7 @@ public class ChatWebSocketNext {
WebSocketConnection connection = sessions.get(senderId);
if (connection == null || !connection.isOpen()) {
if (connection != null) sessions.remove(senderId);
Log.debug("[CHAT-WS-NEXT] Expéditeur " + senderId + " non connecté pour confirmation de lecture");
return;
}
@@ -268,7 +276,8 @@ public class ChatWebSocketNext {
connection.sendText(response);
Log.debug("[CHAT-WS-NEXT] Confirmation de lecture envoyée à: " + senderId);
} catch (Exception e) {
Log.error("[CHAT-WS-NEXT] Erreur envoi confirmation lecture à " + senderId, e);
Log.error("[CHAT-WS-NEXT] Erreur envoi confirmation lecture à " + senderId + ", connexion supprimée", e);
sessions.remove(senderId);
}
}