Class AssociazioneEntity

java.lang.Object
com.modulink.Model.Relazioni.Associazione.AssociazioneEntity

@Entity public class AssociazioneEntity extends Object
Entità di persistenza Associazione, utilizzata per modellare la relazione molti-a-molti (Many-to-Many) tra Utenti e Ruoli.

Questa classe funge da entità associativa esplicita per gestire chiavi primarie composte in un ambiente multi-tenant. L'utilizzo di un'entità intermedia dedicata permette di superare i limiti delle annotazioni @ManyToMany standard di Hibernate, garantendo il controllo granulare sulla colonna ID_Azienda condivisa tra UtenteEntity e RuoloEntity.

L'entità implementa la strategia di chiave composta tramite la classe AssocazioneID.

Since:
1.0.0
Version:
1.1.2
Author:
Modulink Team
See Also:
  • Field Details

    • id_utente

      private int id_utente
      Identificativo univoco dell'Utente. Parte della chiave primaria composta dell'associazione.
      Since:
      1.0.0
    • id_ruolo

      private int id_ruolo
      Identificativo univoco del Ruolo. Parte della chiave primaria composta dell'associazione.
      Since:
      1.0.0
    • id_azienda

      private int id_azienda
      Identificativo univoco dell'Azienda (Tenant).

      Garantisce l'isolamento dei dati a livello aziendale. Una cancellazione a cascata sull'entità Azienda comporta la rimozione automatica di tutte le associazioni correlate.

      Since:
      1.0.0
    • utente

      private UtenteEntity utente
      Riferimento oggettuale all'entità UtenteEntity.

      Mappatura in sola lettura (insertable=false, updatable=false) per la navigazione del grafo degli oggetti. La persistenza degli ID è gestita tramite i campi primitivi.

      Since:
      1.0.0
    • ruolo

      private RuoloEntity ruolo
      Riferimento oggettuale all'entità RuoloEntity.

      Mappatura in sola lettura per garantire l'integrità del mapping della colonna ID_Azienda riutilizzata in più join.

      Since:
      1.0.0
  • Constructor Details

    • AssociazioneEntity

      public AssociazioneEntity()
      Costruttore predefinito richiesto dalle specifiche JPA.
      Since:
      1.0.0
    • AssociazioneEntity

      public AssociazioneEntity(UtenteEntity utente, RuoloEntity ruolo)
      Costruttore parametrico per l'istanziazione di una nuova relazione Utente-Ruolo.

      Popola automaticamente gli identificativi primitivi estraendoli dalle entità fornite, assicurando la coerenza del modello multi-tenant.

      Parameters:
      utente - Entità utente assegnataria.
      ruolo - Entità ruolo da assegnare.
      Since:
      1.0.0
  • Method Details

    • getUtente

      public UtenteEntity getUtente()
      Recupera l'oggetto UtenteEntity.
      Returns:
      L'utente associato.
      Since:
      1.0.0
    • getRuolo

      public RuoloEntity getRuolo()
      Recupera l'oggetto RuoloEntity.
      Returns:
      Il ruolo associato.
      Since:
      1.0.0
    • getId_utente

      public int getId_utente()
      Recupera l'ID primitivo dell'utente.
      Returns:
      ID utente.
      Since:
      1.1.0
    • getId_ruolo

      public int getId_ruolo()
      Recupera l'ID primitivo del ruolo.
      Returns:
      ID ruolo.
      Since:
      1.1.0
    • getId_azienda

      public int getId_azienda()
      Recupera l'ID primitivo dell'azienda.
      Returns:
      ID azienda.
      Since:
      1.1.0