Package org.apache.tapestry5.ioc.internal

## Class ReloadableServiceImplementationObjectCreator

- java.lang.Object
- - org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator
  - - org.apache.tapestry5.ioc.internal.ReloadableServiceImplementationObjectCreator

- All Implemented Interfaces:
    `ObjectCreator`, `ClassLoaderDelegate`, `UpdateListener`

      public class ReloadableServiceImplementationObjectCreator
      extends AbstractReloadableObjectCreator

  Returns an `ObjectCreator` for lazily instantiating a given implementation class (with dependencies). Once an instance is instantiated, it is cached ... until any underlying .class file changes, at which point the class (and its class dependencies, such as base classes) are reloaded and a new instance instantiated.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ReloadableServiceImplementationObjectCreator​(PlasticProxyFactory proxyFactory, ServiceBuilderResources resources, java.lang.ClassLoader baseClassLoader, java.lang.String implementationClassName)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected java.lang.Object` | `createInstance​(java.lang.Class clazz)` | Invoked when an instance of the class is needed.

    - ### Methods inherited from class org.apache.tapestry5.ioc.internal.AbstractReloadableObjectCreator

      `checkForUpdates, createObject, doClassLoad, loadAndTransformClass, shouldInterceptClassLoading`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ReloadableServiceImplementationObjectCreator

          public ReloadableServiceImplementationObjectCreator​(PlasticProxyFactory proxyFactory,
                                                              ServiceBuilderResources resources,
                                                              java.lang.ClassLoader baseClassLoader,
                                                              java.lang.String implementationClassName)

  - ### Method Detail

    - #### createInstance

          protected java.lang.Object createInstance​(java.lang.Class clazz)

      Description copied from class: `AbstractReloadableObjectCreator`
      Invoked when an instance of the class is needed. It is the responsibility of this method (as implemented in a subclass) to instantiate the class and inject dependencies into the class.
      Specified by:
        `createInstance` in class `AbstractReloadableObjectCreator`
      See Also:
        `InternalUtils.findAutobuildConstructor(Class)`