Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.tapestry5.ioc.internal
Class RecursiveServiceCreationCheckWrapper

    java.lang.Object
      org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper

All Implemented Interfaces:
  ObjectCreator

    public class RecursiveServiceCreationCheckWrapper

extends java.lang.Object
implements ObjectCreator

Decorator for `ObjectCreator` that ensures the service is only created once. This detects a situation where the service builder for a service directly or indirectly invokes methods on the service itself. This would show up as a second call up the ServiceCreator stack injected into the proxy, potentially leading to endless recursion. We try to identify that recursion and produce a useable exception report.

Constructor Summary
`RecursiveServiceCreationCheckWrapper(ServiceDef serviceDef, ObjectCreator delegate, org.slf4j.Logger logger)`

Method Summary
`java.lang.Object` | `createObject()` We could make this method synchronized, but in the context of creating a service for a proxy, it will already be synchronized (inside the proxy).

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### RecursiveServiceCreationCheckWrapper

    public RecursiveServiceCreationCheckWrapper(ServiceDef serviceDef,
                                                ObjectCreator delegate,
                                                org.slf4j.Logger logger)

Method Detail

### createObject

    public java.lang.Object createObject()

  We could make this method synchronized, but in the context of creating a service for a proxy, it will already be synchronized (inside the proxy).

  Specified by:
    `createObject` in interface `ObjectCreator`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003-2012 The Apache Software Foundation.