/* *******************************************************************
* Copyright (c) 2005 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.lang.reflect;
AspectJ runtime representation of a pointcut member inside a class or aspect.
/**
* AspectJ runtime representation of a pointcut member inside a class or aspect.
*/
public interface Pointcut {
Returns: the declared name of the pointcut.
/**
* @return the declared name of the pointcut.
*/
String getName();
Returns: the modifiers associated with the pointcut declaration.
Use java.lang.reflect.Modifier to interpret the return value
/**
* @return the modifiers associated with the pointcut declaration.
* Use java.lang.reflect.Modifier to interpret the return value
*/
int getModifiers();
Returns: the pointcut parameter types.
/**
* @return the pointcut parameter types.
*/
AjType<?>[] getParameterTypes();
Returns: the pointcut parameter names. Returns an array of empty strings
of length getParameterTypes().length if parameter names are not
available at runtime.
/**
* @return the pointcut parameter names. Returns an array of empty strings
* of length getParameterTypes().length if parameter names are not
* available at runtime.
*/
String[] getParameterNames();
Returns: the type that declared this pointcut
/**
* @return the type that declared this pointcut
*/
AjType getDeclaringType();
Returns: the pointcut expression associated with this pointcut.
/**
* @return the pointcut expression associated with this pointcut.
*/
PointcutExpression getPointcutExpression();
}