Class StandardControllerServiceInvocationHandler
java.lang.Object
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler
- All Implemented Interfaces:
InvocationHandler,ControllerServiceInvocationHandler
public class StandardControllerServiceInvocationHandler
extends Object
implements ControllerServiceInvocationHandler
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ExtensionManagerprivate static final org.slf4j.Loggerprivate final ControllerServiceprivate static final Methodprivate final AtomicReference<ControllerServiceNode> -
Constructor Summary
ConstructorsConstructorDescriptionStandardControllerServiceInvocationHandler(ExtensionManager extensionManager, ControllerService originalService) StandardControllerServiceInvocationHandler(ExtensionManager extensionManager, ControllerService originalService, ControllerServiceNode serviceNode) -
Method Summary
Modifier and TypeMethodDescriptionprivate booleancontainsWrappedProxy(Object[] values) private Objectinvoke(Object bareObject, Method method, Object[] args, ClassLoader bareObjectClassLoader, ClassLoader callerClassLoader) private booleanisInHierarchy(ClassLoader objectClassLoader, ClassLoader classLoaderHierarchy) private booleanisWrappedProxy(Object value) private ObjectvoidsetServiceNode(ControllerServiceNode serviceNode) private Objectunwrap(Object value, ClassLoader expectedClassLoader, Method method) private Object[]unwrapProxies(Object[] values, ClassLoader expectedClassLoader, Method method)
-
Field Details
-
logger
private static final org.slf4j.Logger logger -
PROXY_WRAPPER_GET_WRAPPED_METHOD
-
validDisabledMethods
-
originalService
-
serviceNodeHolder
-
extensionManager
-
-
Constructor Details
-
StandardControllerServiceInvocationHandler
public StandardControllerServiceInvocationHandler(ExtensionManager extensionManager, ControllerService originalService) - Parameters:
originalService- the original service being proxied
-
StandardControllerServiceInvocationHandler
public StandardControllerServiceInvocationHandler(ExtensionManager extensionManager, ControllerService originalService, ControllerServiceNode serviceNode) - Parameters:
originalService- the original service being proxiedserviceNode- the node holding the original service which will be used for checking the state (disabled vs running)
-
-
Method Details
-
setServiceNode
- Specified by:
setServiceNodein interfaceControllerServiceInvocationHandler
-
invoke
- Specified by:
invokein interfaceInvocationHandler- Throws:
Throwable
-
isInHierarchy
-
proxy
-
unwrapProxies
-
unwrap
-
containsWrappedProxy
-
isWrappedProxy
-
invoke
private Object invoke(Object bareObject, Method method, Object[] args, ClassLoader bareObjectClassLoader, ClassLoader callerClassLoader) throws IllegalAccessException, InvocationTargetException
-