/** Build the underlying AspectJ pointcut expression. */ private PointcutExpression buildPointcutExpression(ClassLoader classLoader) { PointcutParser parser = initializePointcutParser(classLoader); PointcutParameter[] pointcutParameters = new PointcutParameter[this.pointcutParameterNames.length]; for (int i = 0; i < pointcutParameters.length; i++) { pointcutParameters[i] = parser.createPointcutParameter( this.pointcutParameterNames[i], this.pointcutParameterTypes[i]); } return parser.parsePointcutExpression( replaceBooleanOperators(getExpression()), this.pointcutDeclarationScope, pointcutParameters); }