aboutsummaryrefslogtreecommitdiffstats
path: root/weaver5/java5-src/org/aspectj/weaver/reflect/DeferredResolvedPointcutDefinition.java
blob: b0af93f16966876d1d458cb36a5e15ede48665e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/* *******************************************************************
 * Copyright (c) 2006 Contributors.
 * All rights reserved. 
 * This program and the accompanying materials are made available 
 * under the terms of the Eclipse Public License v1.0 
 * which accompanies this distribution and is available at 
 * http://eclipse.org/legal/epl-v10.html 
 *  
 * Contributors: 
 *   Adrian Colyer          Initial implementation
 * ******************************************************************/

package org.aspectj.weaver.reflect;

import org.aspectj.weaver.ResolvedPointcutDefinition;
import org.aspectj.weaver.UnresolvedType;

/**
 * When a Java15ReflectionBasedDelegate gets the pointcuts for a given class it tries to resolve them before returning. This can
 * cause problems if the resolution of one pointcut in the type depends on another pointcut in the same type. Therefore the
 * algorithm proceeds in two phases, first we create and store instances of this class in the pointcuts array, and once that is
 * done, we come back round and resolve the actual pointcut expression. This means that if we recurse doing resolution, we will find
 * the named pointcut we are looking for!
 * 
 * @author adrian colyer
 * 
 */
public class DeferredResolvedPointcutDefinition extends ResolvedPointcutDefinition {

	public DeferredResolvedPointcutDefinition(UnresolvedType declaringType, int modifiers, String name,
			UnresolvedType[] parameterTypes) {
		super(declaringType, modifiers, name, parameterTypes, UnresolvedType.VOID, null);
	}

}