EN · DE · RU · FR · ES

#286: TodoPluginUserRightId.kt

plugins/org.projectforge.plugins.todo/src/main/kotlin/org/projectforge/plugins/todo/TodoPluginUserRightId.kt Enum — ID de droit utilisateur, plugins/org.projectforge.plugins.todo/src/main/kotlin/org/projectforge/plugins/todo/TodoPluginUserRightId.kt 57 lignes · 24 code · 27 commentaires · 6 vides
Enum Kotlin définissant le droit utilisateur PLUGIN_TODO pour le plugin To-Do. Implémente IUserRightId et s'intègre avec Hibernate Search pour l'indexation plein texte des droits d'accès.

Architecture

Cette énumération implémente l'interface IUserRightId, qui est le mécanisme standard pour déclarer les identifiants de droits d'accès dans ProjectForge. Chaque constante d'énumération possède :

La classe interne ProviderService étend RightRightIdProviderService, qui est elle-même une classe enregistrée via ServiceLoader (voir META-INF/services/) que le framework parcourt pour découvrir toutes les définitions de droits utilisateur. L'annotation @TypeBinding avec HibernateSearchUserRightIdTypeBinder garantit que les droits utilisateur attribués via cette énumération sont indexés dans l'index plein texte Hibernate Search, permettant un filtrage de recherche tenant compte des permissions.

Héritage & Intégration

La hiérarchie de classes est : TodoPluginUserRightId → implémente IUserRightId (étend Comparable). Le framework collecte toutes les implémentations de IUserRightId dans tous les plugins et modules principaux, puis les enregistre dans les pages de configuration des droits utilisateur de l'administration. Le plugin To-Do contribue exactement un droit : PLUGIN_TODO, qui accorde l'accès aux fonctionnalités de la liste de tâches.

Historique Git

868d6abb7 2025 -> 2026\n63081666f En-têtes des fichiers source : 2024 -> 2025.\n067a4cbb1 Migration en cours...\nb1560ca43 Migration en cours...\ne33c8b9c2 Migration en cours...