Enum Class PendingSubscriptionKind

java.lang.Object
java.lang.Enum<PendingSubscriptionKind>
org.exoplatform.caldav.model.PendingSubscriptionKind
All Implemented Interfaces:
Serializable, Comparable<PendingSubscriptionKind>, Constable

public enum PendingSubscriptionKind extends Enum<PendingSubscriptionKind>
What eXo still owes a colleague's BlueMind account about one shared calendar (EXO-90277).

Two instructions, because the second cannot be inferred from the first. A share granted from eXo is followed by a subscription on the colleague's account, which is what makes the calendar appear in their views; a share revoked is followed by the subscription's removal, without which BlueMind leaves the subscription dangling — it auto-unsubscribes on an access removal for mailboxes only (MailboxAutoSubscribeAclHook.java) — and the colleague keeps a dead calendar listed. One row per colleague, server and container, so the latest instruction is the one that stands: a revoke recorded before a pending subscribe was drained turns it into a removal, which is harmless when nothing was ever subscribed.

  • Enum Constant Details

    • SUBSCRIBE

      public static final PendingSubscriptionKind SUBSCRIBE
      The colleague has to be subscribed to the container: the owner shared it from eXo and the subscription did not land at grant time.
    • UNSUBSCRIBE

      public static final PendingSubscriptionKind UNSUBSCRIBE
      The colleague has to be unsubscribed from the container: the owner stopped sharing it from eXo and the removal did not land at revoke time.
  • Method Details

    • values

      public static PendingSubscriptionKind[] 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 PendingSubscriptionKind 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