Class Principal

All Implemented Interfaces:
Serializable, IBaseEntity, ICoreEntity, IEntity, ISortableEntity
Direct Known Subclasses:
User, UserGroup

@Entity public class Principal extends ComplexEntity
base class for User or UserGroup. Can have one or more assigned territory to signal that the Principal belongs to or is responsible for these territories. Set Principal inactive when not used but should not be deleted. Since Principals are referenced in many other entities (e.g. Permission, State, Version) upon deletion by the frontend their LifeCycleFlag is set to DELETED, but they are not removed from database.
See Also:
  • Constructor Details

    • Principal

      public Principal()
    • Principal

      public Principal(Principal source)
      Copy constructor. Does not copy permissions.
      Parameters:
      source - Template object.
  • Method Details

    • isActive

      public boolean isActive()
    • setActive

      public void setActive(boolean active)
    • isVisible

      public boolean isVisible()
      Overrides:
      isVisible in class ComplexEntity
    • getInternalDescription

      public String getInternalDescription()
      Specified by:
      getInternalDescription in interface IEntity
      Overrides:
      getInternalDescription in class ComplexEntity
      Returns:
      Unique identifier in combination with entity class if internalDescription property is defined as unique. Might be null.
    • getPermissionsForPrincipal

      public List<Permission> getPermissionsForPrincipal()
      get a list of permission objects, this principal is assigned to. normally this method is not used directly, but it gives hibernate a hint to delete permission objects on delete of principal. Important note: do not name method "getPermissions". there is ComplexEntity.getPermissions mapped by field "object". hibernate complains about "shared collection" then.
      Returns:
      List of Permission
    • setPermissionsForPrincipal

      public void setPermissionsForPrincipal(List<Permission> permissions)
    • getTerritory

      public Territory getTerritory()
    • setTerritory

      public void setTerritory(Territory territory)
    • getType

      public ComplexTypeEntity getType()
      Description copied from class: ComplexEntity
      override in derived classes, return null if ComplexEntity-subclass is not type managed.
      Specified by:
      getType in class ComplexEntity