Interface PerthreadManager

  • All Known Implementing Classes:
    PerthreadManagerImpl

    public interface PerthreadManager
    Manages per-thread data, and provides a way for listeners to know when such data should be cleaned up. Typically, data is cleaned up at the end of the request (in a web application). Tapestry IoC has any number of objects that need to know when this event occurs, so that they can clean up any per-thread/per-request state.
    • Method Detail

      • addThreadCleanupCallback

        void addThreadCleanupCallback​(java.lang.Runnable callback)
        Adds a callback to be invoked when cleanup() is invoked; callbacks are then removed.
        Parameters:
        callback -
        Since:
        5.4
      • cleanup

        void cleanup()
        Immediately performs a cleanup of the thread, invoking all callback, then discarding all per-thread data stored by the manager (including the list of callbacks).
      • run

        void run​(java.lang.Runnable runnable)
        Invokes Runnable.run(), providing a try...finally to cleanup after.
        Since:
        5.2.0
      • invoke

        <T> T invoke​(Invokable<T> invokable)
        Returns the result from the invocation, providing a try...finally to cleanup after.