public abstract class ServiceInvoker extends java.lang.Object implements org.aopalliance.intercept.MethodInterceptor, ServiceReferenceProvider, org.springframework.beans.factory.DisposableBean
TargetSource can be used though it doesn't offer localized
exceptions (unless information is passed around). The biggest difference as
opposed to a target source is that mixins call do not require a service
behind.
However, in the future, this interceptor might be replaced with a
TargetSource.| Modifier and Type | Field and Description |
|---|---|
protected org.apache.commons.logging.Log |
log |
| Constructor and Description |
|---|
ServiceInvoker() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
destroy() |
protected java.lang.Object |
doInvoke(java.lang.Object service,
org.aopalliance.intercept.MethodInvocation invocation)
Actual invocation - the class is being executed on a different object
then the one exposed in the invocation object.
|
org.osgi.framework.ServiceReference |
getServiceReference()
Convenience method exposing the target (OSGi service) reference so that
subinterceptors can access it.
|
protected abstract java.lang.Object |
getTarget()
Determine the target object to execute the invocation upon.
|
java.lang.Object |
invoke(org.aopalliance.intercept.MethodInvocation invocation) |
protected java.lang.Object doInvoke(java.lang.Object service,
org.aopalliance.intercept.MethodInvocation invocation)
throws java.lang.Throwable
service - invocation - java.lang.Throwablepublic final java.lang.Object invoke(org.aopalliance.intercept.MethodInvocation invocation)
throws java.lang.Throwable
invoke in interface org.aopalliance.intercept.MethodInterceptorjava.lang.Throwableprotected abstract java.lang.Object getTarget()
java.lang.Throwablepublic org.osgi.framework.ServiceReference getServiceReference()
getServiceReference in interface ServiceReferenceProviderpublic abstract void destroy()
destroy in interface org.springframework.beans.factory.DisposableBean