org.apache.tapestry5.ioc.internal
Class RecursiveServiceCreationCheckWrapper
java.lang.Object
org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper
- All Implemented Interfaces:
- ObjectCreator
public class RecursiveServiceCreationCheckWrapper
- extends 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.
Method Summary |
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 |
RecursiveServiceCreationCheckWrapper
public RecursiveServiceCreationCheckWrapper(ServiceDef serviceDef,
ObjectCreator delegate,
org.slf4j.Logger logger)
createObject
public 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
Copyright © 2003-2012 The Apache Software Foundation.