Class GlobalControllerAdvice
java.lang.Object
com.modulink.Controller.Dashboard.GlobalControllerAdvice
Componente di tipo
ControllerAdvice per la gestione globale degli attributi del Model.
Questa classe agisce come un interceptor per tutti i Controller dell'applicazione. La sua funzione principale è popolare automaticamente il Model con dati comuni necessari in quasi tutte le viste (es. layout base, sidebar), come l'utente loggato e la lista dei moduli a cui ha accesso.
Questo approccio evita la duplicazione di codice nei singoli metodi dei controller (DRY).
- Since:
- 1.0.0
- Version:
- 1.1.5
- Author:
- Modulink Team
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CustomUserDetailsServiceprivate final ModuloService -
Constructor Summary
ConstructorsConstructorDescriptionGlobalControllerAdvice(CustomUserDetailsService customUserDetailsService, ModuloService moduloService) Costruttore per l'iniezione delle dipendenze. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCommonAttributes(Principal principal, org.springframework.ui.Model model) Metodo annotato conModelAttributeeseguito prima di ogni metodo di gestione richiesta (@RequestMapping).
-
Field Details
-
customUserDetailsService
-
moduloService
-
-
Constructor Details
-
GlobalControllerAdvice
public GlobalControllerAdvice(CustomUserDetailsService customUserDetailsService, ModuloService moduloService) Costruttore per l'iniezione delle dipendenze.- Parameters:
customUserDetailsService- Servizio per recuperare i dettagli dell'utente.moduloService- Servizio per recuperare i moduli accessibili.- Since:
- 1.0.0
-
-
Method Details
-
addCommonAttributes
@ModelAttribute public void addCommonAttributes(Principal principal, org.springframework.ui.Model model) Metodo annotato conModelAttributeeseguito prima di ogni metodo di gestione richiesta (@RequestMapping).Se un utente è autenticato (Principal presente), recupera:
- L'oggetto
UtenteEntitycompleto. - La lista di
ModuloEntityabilitati per l'utente (basata su attivazioni azienda e permessi ruolo).
- Parameters:
principal- L'utente autenticato.model- Il modello condiviso della richiesta.- Since:
- 1.0.0
- L'oggetto
-