5b33384e9fdab2ee01add0c16c778ee079856eef
Aligne LUM sur la stack UnionFlow (Quarkus 3.20.0, Java 21) pour cohérence de déploiement et patches de sécurité CVE à jour. - Quarkus 3.17.8 → 3.20.0 - Java 17 → 21 (maven.compiler.source/target/release) - Lombok 1.18.30 → 1.18.36 (support Java 21) - MapStruct 1.5.5.Final → 1.6.3 (records Java 17+) - JUnit 5.10.1 → 5.11.4 - Mockito 5.11.0 → 5.14.2 - Testcontainers 1.19.3 → 1.20.6 - REST Assured 5.4.0 → 5.5.0 - Plugins : maven-compiler 3.13.0, surefire/failsafe 3.5.2, jacoco 0.8.12 À redéployer sur Gitea via script/publish-api.sh avant rebuild modules enfants.
lions-user-manager-server-api
Contrats partagés entre le serveur et le client — DTOs, interfaces de services, enums, validations
Rôle
Ce module constitue la couche de contrats (API layer) du projet Lions User Manager. Il est compilé en JAR et publié sur le Gitea Package Registry pour être consommé par server-impl et client comme dépendance Maven.
Contenu
DTOs
| DTO | Description |
|---|---|
UserDTO |
Représentation complète d'un utilisateur Keycloak |
UserCreationDTO |
Données de création d'un utilisateur |
UserUpdateDTO |
Données de mise à jour |
RoleDTO |
Rôle Keycloak |
RealmDTO |
Realm Keycloak |
RealmAssignmentDTO |
Assignation d'un utilisateur à un realm |
AuditLogDTO |
Entrée de journal d'audit |
SyncHistoryDTO |
Historique de synchronisation |
SyncConsistencyDTO |
Rapport de cohérence sync |
ImportResultDTO |
Résultat d'import CSV |
Interfaces de services
| Interface | Responsabilité |
|---|---|
UserService |
CRUD utilisateurs, export/import CSV |
RoleService |
Gestion des rôles par realm |
AuditService |
Consultation et export des logs d'audit |
SyncService |
Synchronisation Keycloak ↔ base de données |
RealmAuthorizationService |
Gestion des realms autorisés |
Interfaces de ressources (JAX-RS)
| Interface | Path |
|---|---|
UserResourceApi |
/api/users |
RoleResourceApi |
/api/roles |
AuditResourceApi |
/api/audit |
SyncResourceApi |
/api/sync |
RealmResourceApi |
/api/realms |
RealmAssignmentResourceApi |
/api/realm-assignments |
Enums
StatutUser— ACTIF, INACTIF, SUSPENDUTypeRole— ADMIN, USER, VIEWERTypeActionAudit— CREATE, UPDATE, DELETE, LOGIN, LOGOUT, SYNC
Validations
ValidationConstants— Constantes partagées (longueurs, patterns regex)
Dépôt Git
https://git.lions.dev/lionsdev/lions-user-manager-server-api
Maven Registry
Le jar est disponible sur le Gitea Package Registry :
groupId : dev.lions.user.manager
artifactId : lions-user-manager-server-api
version : 1.0.0
registry : https://git.lions.dev/api/packages/lionsdev/maven
Consommer ce module (server-impl / client)
<dependency>
<groupId>dev.lions.user.manager</groupId>
<artifactId>lions-user-manager-server-api</artifactId>
<version>1.0.0</version>
</dependency>
<repositories>
<repository>
<id>gitea-lionsdev</id>
<url>https://git.lions.dev/api/packages/lionsdev/maven</url>
</repository>
</repositories>
Publier une nouvelle version
- Incrémenter la version dans
../pom.xml(parent) - Exécuter depuis la racine du monorepo :
# Windows
script\publish-api.bat
# Linux / macOS
./script/publish-api.sh
Build local
mvn clean install -DskipTests
Licence
Propriétaire — Lions Dev © 2025
Description
Languages
Java
99.3%
Shell
0.4%
Batchfile
0.3%