org.apache.tapestry5.services

## Interface ApplicationStatePersistenceStrategy

- All Known Implementing Classes:
    EntityApplicationStatePersistenceStrategy, EntityApplicationStatePersistenceStrategy, SessionApplicationStatePersistenceStrategy

      public interface ApplicationStatePersistenceStrategy

  Used by `ApplicationStateManager` to manage a specific kind of Session State Object (SSO) persistence. The strategy is responsible for managing SSO instances within its domain.

  NOTE: The term "Application" here is a hold-over from Tapestry 5.0, which used the @ApplicationState (deprecated and deleted) annotation, and called them "ASOs" (Application State Objects). This service would be better named "SessionStatePersistenceStrategy" (but renaming it would cause backwards compatibility issues).

  See Also:
    `ApplicationStatePersistenceStrategySource`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `<T> boolean` | `exists(Class<T> ssoClass)` Returns true if the SSO already exists, false if null.
    `<T> T` | `get(Class<T> ssoClass, ApplicationStateCreator<T> creator)` Gets the SSO from the domain.
    `default <T> T` | `getIfExists(Class<T> ssoClass)` Returns the SSO if it exists or null.
    `<T> void` | `set(Class<T> ssoClass, T sso)` Stores a new SSO, possibly replacing the existing one.

- - ### Method Detail

    - #### get

          <T> T get(Class<T> ssoClass,
                    ApplicationStateCreator<T> creator)

      Gets the SSO from the domain. If the SSO does not already exist, it is created and stored, then returned.

    - #### set

          <T> void set(Class<T> ssoClass,
                       T sso)

      Stores a new SSO, possibly replacing the existing one.
      Type Parameters:
        `T` -
      Parameters:
        `ssoClass` -
        `sso` - instance to store, or null to delete existing

    - #### exists

          <T> boolean exists(Class<T> ssoClass)

      Returns true if the SSO already exists, false if null.

    - #### getIfExists

          default <T> T getIfExists(Class<T> ssoClass)

      Returns the SSO if it exists or null.

5.6.0 - Copyright © 2003-2020 The Apache Software Foundation.