## Uses of Interface
org.apache.tapestry5.ioc.Invokable

- Packages that use Invokable
  Package | Description
  --- | ---
  org.apache.tapestry5.internal.jpa | [INTERNAL USE ONLY] support classes for the JPA module; API subject to change
  org.apache.tapestry5.internal.structure | [INTERNAL USE ONLY] page structure implementation details; API subject to change.
  org.apache.tapestry5.internal.util | [INTERNAL USE ONLY] various utility classes; API subject to change.
  org.apache.tapestry5.ioc | A code-centric, high-performance, simple Inversion of Control container
  org.apache.tapestry5.ioc.internal | [INTERNAL USE ONLY] Tapestry IOC implementation details; API subject to change.
  org.apache.tapestry5.ioc.internal.services | [INTERNAL USE ONLY] Tapestry IOC service implementation classes; API subject to change.
  org.apache.tapestry5.ioc.internal.util | [INTERNAL USE ONLY] utility classes for Tapestry IOC services; API subject to change
  org.apache.tapestry5.ioc.services | Tapestry IOC service interfaces
  org.apache.tapestry5.jpa | Provides support for simple CRUD applications built on top of Tapestry and JPA

- - ### Uses of Invokable in org.apache.tapestry5.internal.jpa

    Methods in org.apache.tapestry5.internal.jpa with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | PersistenceContextSpecificEntityTransactionManager.`addAfterCommitInvokable​(Invokable<java.lang.Boolean> invokable)` |
    `void` | PersistenceContextSpecificEntityTransactionManager.`addBeforeCommitInvokable​(Invokable<java.lang.Boolean> invokable)` |
    `void` | EntityTransactionManagerImpl.`invokeAfterCommit​(java.lang.String unitName, Invokable<java.lang.Boolean> invokable)` |
    `void` | EntityTransactionManagerImpl.`invokeBeforeCommit​(java.lang.String unitName, Invokable<java.lang.Boolean> invokable)` |
    `<T> T` | EntityTransactionManagerImpl.`invokeInTransaction​(java.lang.String unitName, Invokable<T> invokable)` |
    `<T> T` | PersistenceContextSpecificEntityTransactionManager.`invokeInTransaction​(Invokable<T> invokable)` |

  - ### Uses of Invokable in org.apache.tapestry5.internal.structure

    Methods in org.apache.tapestry5.internal.structure with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | ComponentPageElementResourcesImpl.`invoke​(java.lang.String description, Invokable<T> operation)` |

  - ### Uses of Invokable in org.apache.tapestry5.internal.util

    Methods in org.apache.tapestry5.internal.util that return Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> Invokable<T>` | RecomputableSupport.`create​(Invokable<T> invokable)` | Wraps a computation with caching logic; once computed, the Invokable will return the same value, until `RecomputableSupport.invalidate()` is invoked.

    Methods in org.apache.tapestry5.internal.util with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> Invokable<T>` | RecomputableSupport.`create​(Invokable<T> invokable)` | Wraps a computation with caching logic; once computed, the Invokable will return the same value, until `RecomputableSupport.invalidate()` is invoked.

  - ### Uses of Invokable in org.apache.tapestry5.ioc

    Methods in org.apache.tapestry5.ioc with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | OperationTracker.`invoke​(java.lang.String description, Invokable<T> operation)` | As with `OperationTracker.run(String, Runnable)`, but the operation may return a value.

  - ### Uses of Invokable in org.apache.tapestry5.ioc.internal

    Methods in org.apache.tapestry5.ioc.internal with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | OperationTrackerImpl.`invoke​(java.lang.String description, Invokable<T> operation)` |
    `<T> T` | PerThreadOperationTracker.`invoke​(java.lang.String description, Invokable<T> operation)` |
    `<T> T` | QuietOperationTracker.`invoke​(java.lang.String description, Invokable<T> operation)` |
    `<T> T` | RegistryImpl.`invoke​(java.lang.String description, Invokable<T> operation)` |

  - ### Uses of Invokable in org.apache.tapestry5.ioc.internal.services

    Methods in org.apache.tapestry5.ioc.internal.services with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | NonParallelExecutor.`invoke​(java.lang.Class<T> proxyType, Invokable<T> invocable)` |
    `<T> java.util.concurrent.Future<T>` | NonParallelExecutor.`invoke​(Invokable<T> invocable)` |
    `<T> T` | ParallelExecutorImpl.`invoke​(java.lang.Class<T> proxyType, Invokable<T> invocable)` |
    `<T> java.util.concurrent.Future<T>` | ParallelExecutorImpl.`invoke​(Invokable<T> invocable)` |
    `<T> T` | PerthreadManagerImpl.`invoke​(Invokable<T> invokable)` |

  - ### Uses of Invokable in org.apache.tapestry5.ioc.internal.util

    Classes in org.apache.tapestry5.ioc.internal.util that implement Invokable
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ConstructorInvoker<T>` | Wraps the invocation of a constructor (with exception reporting) as an `Invokable`.
    `class` | `LoggingInvokableWrapper<T>` |
    `class` | `MethodInvoker<T>` |

    Methods in org.apache.tapestry5.ioc.internal.util with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | ConcurrentBarrier.`withRead​(Invokable<T> invokable)` | Invokes the object after acquiring the read lock (if necessary).
    `<T> T` | ConcurrentBarrier.`withWrite​(Invokable<T> invokable)` | Acquires the exclusive write lock before invoking the Invokable.

    Constructors in org.apache.tapestry5.ioc.internal.util with parameters of type Invokable
    Constructor | Description
    --- | ---
    `ConstructionPlan​(OperationTracker tracker, java.lang.String description, Invokable<T> instanceConstructor)` |
    `LoggingInvokableWrapper​(org.slf4j.Logger logger, java.lang.String message, Invokable<T> delegate)` |

  - ### Uses of Invokable in org.apache.tapestry5.ioc.services

    Methods in org.apache.tapestry5.ioc.services with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | ParallelExecutor.`invoke​(java.lang.Class<T> proxyType, Invokable<T> invocable)` | As with `ParallelExecutor.invoke(org.apache.tapestry5.ioc.Invokable)`, but the result is wrapped inside a thunk.
    `<T> java.util.concurrent.Future<T>` | ParallelExecutor.`invoke​(Invokable<T> invocable)` | Submits the invocable object to be executed in a pooled thread.
    `<T> T` | PerthreadManager.`invoke​(Invokable<T> invokable)` | Returns the result from the invocation, providing a try...finally to cleanup after.

  - ### Uses of Invokable in org.apache.tapestry5.jpa

    Classes in org.apache.tapestry5.jpa that implement Invokable
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `EntityTransactionManager.VoidInvokable` |

    Methods in org.apache.tapestry5.jpa with parameters of type Invokable
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | EntityTransactionManager.`invokeAfterCommit​(java.lang.String unitName, Invokable<java.lang.Boolean> invokable)` |
    `void` | EntityTransactionManager.`invokeBeforeCommit​(java.lang.String unitName, Invokable<java.lang.Boolean> invokable)` |
    `<T> T` | EntityTransactionManager.`invokeInTransaction​(java.lang.String unitName, Invokable<T> invokable)` |