public abstract class ServiceInvoker extends 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 Object |
doInvoke(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 Object |
getTarget()
Determine the target object to execute the invocation upon.
|
Object |
invoke(org.aopalliance.intercept.MethodInvocation invocation) |
protected Object doInvoke(Object service, org.aopalliance.intercept.MethodInvocation invocation) throws Throwable
service
- invocation
- Throwable
public final Object invoke(org.aopalliance.intercept.MethodInvocation invocation) throws Throwable
invoke
in interface org.aopalliance.intercept.MethodInterceptor
Throwable
protected abstract Object getTarget()
Throwable
public org.osgi.framework.ServiceReference getServiceReference()
getServiceReference
in interface ServiceReferenceProvider
public abstract void destroy()
destroy
in interface org.springframework.beans.factory.DisposableBean
Copyright © 2006–2015. All rights reserved.