Enum Class EventAccess

java.lang.Object
java.lang.Enum<EventAccess>
org.exoplatform.agenda.constant.EventAccess
All Implemented Interfaces:
Serializable, Comparable<EventAccess>, Constable

public enum EventAccess extends Enum<EventAccess>
How a user may read one event (EXO-90357): computed once per read, so that every path rendering an event — REST, search, ICS, MCP — masks a private event the same way for the same reader.
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    The user reads the event as before this feature: they own or may see its calendar (a personal calendar of their own, a space they belong to), or they are invited to it.
    The user may not read the event at all.
    The user reads the event only because its calendar was shared with them (a CalendarShare record) for viewing.
    The user reads the event only because its calendar was shared with them (EXO-90378) for editing.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the enum constant of this class with the specified name.
    static EventAccess[]
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • NONE

      public static final EventAccess NONE
      The user may not read the event at all.
    • FULL

      public static final EventAccess FULL
      The user reads the event as before this feature: they own or may see its calendar (a personal calendar of their own, a space they belong to), or they are invited to it. Nothing is masked.
    • SHARED

      public static final EventAccess SHARED
      The user reads the event only because its calendar was shared with them (a CalendarShare record) for viewing. A EventVisibility.PRIVATE event is then rendered as busy time: its content is masked.
    • SHARED_EDIT

      public static final EventAccess SHARED_EDIT
      The user reads the event only because its calendar was shared with them (EXO-90378) for editing. Nothing is masked: an editor acts in the owner's calendar as the owner would, so they see a EventVisibility.PRIVATE event in full — a delegate who cannot read the private meeting they are asked to move is not a delegate. They may set their own reminders on it, which a SHARED reader may not.

      This is a reading access, and it grants no write on its own: what an editor may write is decided by AgendaEventService.canUpdateEvent and canCreateEvent, which read the share level themselves.

  • Method Details

    • values

      public static EventAccess[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static EventAccess valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null