Interface JSentinelVersionStatus

All Known Implementing Classes:
JSentinelVersionStatus.Current, JSentinelVersionStatus.Drifted

@ExperimentalJSentinelApi public sealed interface JSentinelVersionStatus permits JSentinelVersionStatus.Current, JSentinelVersionStatus.Drifted
Result of a JSentinelVersionCheck.check(JSentinelVersionKey, JSentinelVersion) call against a session snapshot.

Sealed because callers in the Vaadin / REST adapters dispatch on the two outcomes — a session is either current (continue the request) or drifted (refuse the session, force re-login).

Adapter-neutral. The Vaadin adapter maps JSentinelVersionStatus.Drifted to a reroute, the REST adapter maps it to 401 with WWW-Authenticate: SessionStale.

  • Method Details

    • snapshot

      JSentinelVersion snapshot()
      Returns:
      the version snapshot the session was opened with
    • current

      JSentinelVersion current()
      Returns:
      the subject's current security version
    • isCurrent

      default boolean isCurrent()
      Returns:
      true when snapshot() equals current(), i.e. the session is still authoritative
    • isDrifted

      default boolean isDrifted()
      Returns:
      true when snapshot() differs from current(), i.e. the session must be re-validated