/** * Added to notify interceptor chain observer of interceptor chain garbage collection. */ protected void finalize() { ClassLoader classLoader = delegate.getAdvisor().getClassLoader(); if (this.interceptorChainObserver == null || !AspectManager.getRegisteredCLs().containsKey(classLoader)) { return; } this.interceptorChainObserver.allInstanceInterceptorsRemoved(this); }
ClassLoader cl = advisor.getClassLoader(); if (cl == null)
if (classLoaderValidator != null) if (classLoaderValidator.isValidClassLoader(advisor.getClassLoader())) unregisterClassLoader(advisor.getClassLoader()); return false; ScopedClassPool pool = (ScopedClassPool) getRegisteredClassPool(advisor.getClassLoader()); if (pool == null) return false; if (pool.isUnloadedClassLoader()) unregisterClassLoader(advisor.getClassLoader()); return false;
try ClassLoader cl = advisor.getClassLoader(); if (cl == null)
ClassLoader cl = advisor.getClassLoader(); ArrayList<InterfaceIntroduction> intros = advisor.getInterfaceIntroductions(); if (intros.size() > 0)
ClassLoader cl = advisor.getClassLoader(); if (cl == null)
public Object visit(ASTCFlow node, Object data) { AspectManager manager = null; if (invocation.getAdvisor() == null) manager = AspectManager.instance(); else manager = invocation.getAdvisor().getManager(); CFlowStack cflow = manager.getCFlowStack(node.getPointcutName()); //Use the current advisor to guess the classloader ClassLoader cl = invocation.getAdvisor().getClassLoader(); if (cl == null) { //Fall back to context classloader if null cl = SecurityActions.getContextClassLoader(); } if (cflow != null) return new Boolean(cflow.matches(getStack(), cl)); DynamicCFlow dcflow = manager.getDynamicCFlow(node.getPointcutName(), cl); return new Boolean(dcflow.shouldExecute(invocation)); } }