aboutsummaryrefslogtreecommitdiffstats
path: root/aspectj5rt/java5-src/org/aspectj/lang/reflect
diff options
context:
space:
mode:
Diffstat (limited to 'aspectj5rt/java5-src/org/aspectj/lang/reflect')
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/Advice.java59
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/AdviceKind.java23
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/AjType.java380
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java55
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareAnnotation.java56
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareErrorOrWarning.java40
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareParents.java47
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclarePrecedence.java32
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareSoft.java34
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeConstructorDeclaration.java36
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeDeclaration.java33
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeFieldDeclaration.java36
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeMethodDeclaration.java57
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchAdviceException.java34
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchPointcutException.java34
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClause.java23
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClauseKind.java25
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/Pointcut.java52
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutBasedPerClause.java25
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutExpression.java24
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/SignaturePattern.java23
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePattern.java22
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePatternBasedPerClause.java26
23 files changed, 0 insertions, 1176 deletions
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/Advice.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/Advice.java
deleted file mode 100644
index 03be6c7f1..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/Advice.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.reflect.Type;
-
-/**
- * Runtime representation of an advice declaration inside an aspect
- */
-public interface Advice {
-
- /**
- * The declaring aspect
- */
- AjType getDeclaringType();
-
- /**
- * The kind of advice (before, after-returning, after-throwing, etc.)
- */
- AdviceKind getKind();
-
- /**
- * Returns the advice name, or the empty string if the advice is anonymous.
- * If using the @AspectJ annotations, the advice name is the name of the
- * annotated advice method. If using the code style, the advice is
- * anonymous, unless the advice is annotated with the @AdviceName annotation,
- * in which case the name given in the annotation is returned.
- */
- String getName();
-
- /**
- * The advice parameters
- */
- AjType<?>[] getParameterTypes();
-
- /**
- * The generic parameter types, @see java.lang.reflect.Method.getGenericParameterTypes
- */
- Type[] getGenericParameterTypes();
-
- /**
- * The declared thrown exceptions by the advice
- */
- AjType<?>[] getExceptionTypes();
-
- /**
- * The pointcut expression associated with the advice declaration.
- */
- PointcutExpression getPointcutExpression();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AdviceKind.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/AdviceKind.java
deleted file mode 100644
index 82351db88..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AdviceKind.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * The different kinds of advice in AspectJ
- */
-public enum AdviceKind {
- BEFORE,
- AFTER,
- AFTER_RETURNING,
- AFTER_THROWING,
- AROUND;
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjType.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjType.java
deleted file mode 100644
index 5e26a7d27..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjType.java
+++ /dev/null
@@ -1,380 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.reflect.AnnotatedElement;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.lang.reflect.Type;
-import java.lang.reflect.TypeVariable;
-
-/**
- * The runtime representation of a type (Aspect, Class, Interface, Annotation, Enum, or Array) in an AspectJ
- * program.
- */
-public interface AjType<T> extends Type, AnnotatedElement {
-
- /**
- * The name of this type, in the same format as returned by Class.getName()
- */
- public String getName();
-
- /**
- * The package in which this type is declared
- */
- public Package getPackage();
-
- /**
- * The interfaces implemented by this type
- */
- public AjType<?>[] getInterfaces();
-
- /**
- * The modifiers declared for this type. The return value can be interpreted
- * using java.lang.reflect.Modifier
- */
- public int getModifiers();
-
- /**
- * The java.lang.Class that corresponds to this AjType
- */
- public Class<T> getJavaClass();
-
- // scope
-
- /**
- * The supertype of this type. If this type represents Object or a primitive type
- * then null is returned.
- */
- public AjType<?> getSupertype();
-
- /**
- * The generic supertype of this type, as defined by Class.getGenericSupertype
- */
- public Type getGenericSupertype();
-
- /**
- * If this type represents a local or anonymous type declared within a method, return
- * then enclosing Method object.
- */
- public Method getEnclosingMethod();
-
- /**
- * If this type represents a local or anonymous type declared within a constructor, return
- * then enclosing Method object.
- */
- public Constructor getEnclosingConstructor();
-
- /**
- * Returns the immediately enclosing type of this type.
- */
- public AjType<?> getEnclosingType();
-
- /**
- * If this type is a member of another type, return the AjType representing the type
- * in which it was declared.
- */
- public AjType<?> getDeclaringType();
-
- /**
- * If this type represents an aspect, returns the associated per-clause.
- * Returns null for non-aspect types.
- */
- public PerClause getPerClause();
-
- // inner types
- /**
- * Returns an array containing all the public types that are members of this type
- */
- public AjType<?>[] getAjTypes();
-
- /**
- * Returns an array containing all the types declared by this type
- */
- public AjType<?>[] getDeclaredAjTypes();
-
- // constructors
-
- /**
- * Returns the constructor object for the specified public constructor of this type
- */
- public Constructor getConstructor(AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Returns all of the public constructors of this type
- */
- public Constructor[] getConstructors();
-
- /**
- * Returns the constructor object for the specified constructor of this type
- */
- public Constructor getDeclaredConstructor(AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Returns all the constructors declared in this type
- */
- public Constructor[] getDeclaredConstructors();
-
- // fields
-
- /**
- * Return the field declared in this type with the given name
- */
- public Field getDeclaredField(String name) throws NoSuchFieldException;
-
- /**
- * Returns all the fields declared in this type
- */
- public Field[] getDeclaredFields();
-
- /**
- * Return the public field with the given name
- */
- public Field getField(String name) throws NoSuchFieldException;
-
- /**
- * Return the public fields declared by this type
- */
- public Field[] getFields();
-
- // methods
-
- /**
- * Return the method object for the specified method declared in this type
- */
- public Method getDeclaredMethod(String name, AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Return the method object for the specified public method declared in this type
- */
- public Method getMethod(String name, AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Return all the methods declared by this type
- */
- public Method[] getDeclaredMethods();
-
- /**
- * Returns all the public methods of this type
- */
- public Method[] getMethods();
-
- // pointcuts
-
- /**
- * Return the pointcut object representing the specified pointcut declared by this type
- */
- public Pointcut getDeclaredPointcut(String name) throws NoSuchPointcutException;
-
- /**
- * Return the pointcut object representing the specified public pointcut
- */
- public Pointcut getPointcut(String name) throws NoSuchPointcutException;
-
- /**
- * Returns all of the pointcuts declared by this type
- */
- public Pointcut[] getDeclaredPointcuts();
-
- /**
- * Returns all of the public pointcuts of this type
- */
- public Pointcut[] getPointcuts();
-
- // advice
-
- /**
- * Returns all of the advice declared by this type, of an advice kind contained in the
- * parameter list.
- */
- public Advice[] getDeclaredAdvice(AdviceKind... ofTypes);
-
- /**
- * Returns all of the advice for this type, of an advice kind contained in the parameter
- * list.
- */
- public Advice[] getAdvice(AdviceKind... ofTypes);
-
- /**
- * Returns the advice with the given name. For an @AspectJ declared advice member,
- * this is the name of the annotated method. For a code-style advice declaration, this
- * is the name given in the @AdviceName annotation if present.
- */
- public Advice getAdvice(String name) throws NoSuchAdviceException;
-
- /**
- * Returns the advice declared in this type with the given name. For an @AspectJ declared advice member,
- * this is the name of the annotated method. For a code-style advice declaration, this
- * is the name given in the @AdviceName annotation if present.
- */
- public Advice getDeclaredAdvice(String name) throws NoSuchAdviceException;
-
- // inter-type declarations
-
- /**
- * Return the inter-type method declared by this type matching the given specification
- */
- public InterTypeMethodDeclaration getDeclaredITDMethod(String name, AjType<?> target, AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Return all of the inter-type methods declared by this type
- */
- public InterTypeMethodDeclaration[] getDeclaredITDMethods();
-
- /**
- * Return the public inter-type method of this type matching the given specification
- */
- public InterTypeMethodDeclaration getITDMethod(String name, AjType<?> target, AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Return all of the public inter-type declared methods of this type
- */
- public InterTypeMethodDeclaration[] getITDMethods();
-
- /**
- * Return the inter-type constructor declared by this type matching the given specification
- */
- public InterTypeConstructorDeclaration getDeclaredITDConstructor(AjType<?> target, AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Returns all of the inter-type constructors declared by this type
- */
- public InterTypeConstructorDeclaration[] getDeclaredITDConstructors();
-
- /**
- * Return the public inter-type constructor matching the given specification
- */
- public InterTypeConstructorDeclaration getITDConstructor(AjType<?> target, AjType<?>... parameterTypes) throws NoSuchMethodException;
-
- /**
- * Return all of the public inter-type constructors of this type
- */
- public InterTypeConstructorDeclaration[] getITDConstructors();
-
- /**
- * Return the inter-type field declared in this type with the given specification
- */
- public InterTypeFieldDeclaration getDeclaredITDField(String name, AjType<?> target) throws NoSuchFieldException;
-
- /**
- * Return all of the inter-type fields declared in this type
- */
- public InterTypeFieldDeclaration[] getDeclaredITDFields();
-
- /**
- * Return the public inter-type field matching the given specification
- */
- public InterTypeFieldDeclaration getITDField(String name, AjType<?> target) throws NoSuchFieldException;
-
- /**
- * Return all of the public inter-type fields for this type
- */
- public InterTypeFieldDeclaration[] getITDFields();
-
- // declare statements
- /**
- * Returns all of the declare error and declare warning members of this type,
- * including declare error/warning members inherited from super-types
- */
- public DeclareErrorOrWarning[] getDeclareErrorOrWarnings();
-
- /**
- * Returns all of the declare parents members of this type, including
- * declare parent members inherited from super-types
- */
- public DeclareParents[] getDeclareParents();
-
- /**
- * Return all of the declare soft members of this type, including declare
- * soft members inherited from super-types
- */
- public DeclareSoft[] getDeclareSofts();
-
- /**
- * Return all of the declare annotation members of this type, including declare
- * annotation members inherited from super-types
- */
- public DeclareAnnotation[] getDeclareAnnotations();
-
- /**
- * Return all of the declare precedence members of this type, including declare
- * precedence members inherited from super-types
- */
- public DeclarePrecedence[] getDeclarePrecedence();
-
- // misc
-
- /**
- * Returns the elements of this enum class, or null if this type does not represent
- * an enum type.
- */
- public T[] getEnumConstants();
-
- /**
- * Returns an array of TypeVariable objects that represent the type variables declared by
- * this type (if any)
- */
- public TypeVariable<Class<T>>[] getTypeParameters();
-
- /**
- * True if this is an enum type
- */
- public boolean isEnum();
-
- /**
- * True if the given object is assignment-compatible with an object of the type represented
- * by this AjType
- */
- public boolean isInstance(Object o);
-
- /**
- * True if this is an interface type
- */
- public boolean isInterface();
-
- /**
- * Returns true if and only if the underlying type is a local class
- */
- public boolean isLocalClass();
-
- /**
- * Returns true if and only if the underlying type is a member class
- */
- public boolean isMemberClass();
-
- /**
- * Return true if this is an array type
- */
- public boolean isArray();
-
- /**
- * Return true if this object represents a primitive type
- */
- public boolean isPrimitive();
-
- /**
- * Return true if this is an aspect type
- */
- public boolean isAspect();
-
- /**
- * Returns true if and only if the underlying type is a member aspect
- */
- public boolean isMemberAspect();
-
- /**
- * Returns true if and only if the underlying type is a privileged aspect
- */
- public boolean isPrivileged();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java
deleted file mode 100644
index 6999dac19..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.ref.WeakReference;
-import java.util.Collections;
-import java.util.Map;
-import java.util.WeakHashMap;
-
-import org.aspectj.internal.lang.reflect.AjTypeImpl;
-
-/**
- * This is the anchor for the AspectJ runtime type system.
- * Typical usage to get the AjType representation of a given type
- * at runtime is to call <code>AjType<Foo> fooType = AjTypeSystem.getAjType(Foo.class);</code>
- */
-public class AjTypeSystem {
-
- private static Map<Class, WeakReference<AjType>> ajTypes =
- Collections.synchronizedMap(new WeakHashMap<Class,WeakReference<AjType>>());
-
- /**
- * Return the AspectJ runtime type representation of the given Java type.
- * Unlike java.lang.Class, AjType understands pointcuts, advice, declare statements,
- * and other AspectJ type members. AjType is the recommended reflection API for
- * AspectJ programs as it offers everything that java.lang.reflect does, with
- * AspectJ-awareness on top.
- */
- public static <T> AjType<T> getAjType(Class<T> fromClass) {
- WeakReference<AjType> weakRefToAjType = ajTypes.get(fromClass);
- if (weakRefToAjType!=null) {
- AjType<T> theAjType = weakRefToAjType.get();
- if (theAjType != null) {
- return theAjType;
- } else {
- theAjType = new AjTypeImpl<T>(fromClass);
- ajTypes.put(fromClass, new WeakReference<AjType>(theAjType));
- return theAjType;
- }
- }
- // neither key nor value was found
- AjType<T> theAjType = new AjTypeImpl<T>(fromClass);
- ajTypes.put(fromClass, new WeakReference<AjType>(theAjType));
- return theAjType;
- }
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareAnnotation.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareAnnotation.java
deleted file mode 100644
index faee5d495..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareAnnotation.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.annotation.Annotation;
-
-/**
- * The AspectJ runtime representation of a declare annotation member in an aspect.
- *
- */
-public interface DeclareAnnotation {
-
- public enum Kind { Field, Method, Constructor, Type };
-
- /**
- * The aspect that declared this member.
- */
- AjType<?> getDeclaringType();
-
- /**
- * The target element kind
- */
- Kind getKind();
-
- /**
- * The target signature pattern. Returns null if getKind() == Type
- */
- SignaturePattern getSignaturePattern();
-
- /**
- * The target type pattern. Returns null if getKind() != Type
- */
- TypePattern getTypePattern();
-
- /**
- * The declared annotation. If the declared annotation does not have runtime retention,
- * this method returns null.
- */
- Annotation getAnnotation();
-
- /**
- * Returns the text of the annotation as declared in this member. Available for
- * both runtime and class-file retention annotations
- */
- String getAnnotationAsText();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareErrorOrWarning.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareErrorOrWarning.java
deleted file mode 100644
index a6a5abc53..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareErrorOrWarning.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/* *******************************************************************
- * 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 declare error or declare warning member
- * in an aspect.
- */
-public interface DeclareErrorOrWarning {
-
- /**
- * The type that declared this declare warning or declare error member.
- */
- AjType getDeclaringType();
-
- /**
- * The pointcut expression associated with the warning or error
- */
- PointcutExpression getPointcutExpression();
-
- /**
- * The message associated with the declare warning / declare error
- */
- String getMessage();
-
- /**
- * True if this is a declare error member, false if it is declare warning
- */
- boolean isError();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareParents.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareParents.java
deleted file mode 100644
index 8d3c98b78..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareParents.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.reflect.Type;
-
-/**
- * A declare parents member defined inside an aspect
- */
-public interface DeclareParents {
-
- /**
- * The declaring aspect
- */
- AjType getDeclaringType();
-
- /**
- * The target type pattern
- */
- TypePattern getTargetTypesPattern();
-
- /**
- * True if this is a declare parents...extends member declaration
- */
- boolean isExtends();
-
- /**
- * True if this is a declare parents...implements member declaration
- */
- boolean isImplements();
-
- /**
- * The set of types that the types matching getTargetTypesPattern are
- * declared to implement or extend
- */
- Type[] getParentTypes() throws ClassNotFoundException;
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclarePrecedence.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclarePrecedence.java
deleted file mode 100644
index 894580b70..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclarePrecedence.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/* *******************************************************************
- * 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 declare precedence statement as
- * declared in an aspect.
- */
-public interface DeclarePrecedence {
-
- /**
- * The declaring aspect
- */
- AjType getDeclaringType();
-
- /**
- * Returns an ordered set of type patterns. An aspect matching
- * a type pattern at a lower index in the array takes precedence
- * over an aspect that only matches a type pattern at a higher
- * index in the array.
- */
- TypePattern[] getPrecedenceOrder();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareSoft.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareSoft.java
deleted file mode 100644
index cc607d680..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/DeclareSoft.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/* *******************************************************************
- * 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 declare soft member within an aspect.
- */
-public interface DeclareSoft {
-
- /**
- * The aspect that declared this member
- */
- AjType getDeclaringType();
-
- /**
- * The softened exception type
- */
- AjType getSoftenedExceptionType() throws ClassNotFoundException;
-
- /**
- * The pointcut determining the join points at which the exception is to be softened.
- */
- PointcutExpression getPointcutExpression();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeConstructorDeclaration.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeConstructorDeclaration.java
deleted file mode 100644
index 8db4505e3..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeConstructorDeclaration.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.reflect.Type;
-
-/**
- * Runtime representation of an inter-type constructor member declared within an
- * aspect.
- */
-public interface InterTypeConstructorDeclaration extends InterTypeDeclaration {
-
- /**
- * The constructor parameters
- */
- AjType<?>[] getParameterTypes();
-
- /**
- * The generic constructor parameters
- */
- Type[] getGenericParameterTypes();
-
- /**
- * The declared exceptions thrown by this constructor
- */
- AjType<?>[] getExceptionTypes();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeDeclaration.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeDeclaration.java
deleted file mode 100644
index c00461011..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeDeclaration.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * Represents an inter-type method, field, or constructor declared in an aspect.
- */
-public interface InterTypeDeclaration {
-
- /**
- * The declaring aspect
- */
- AjType<?> getDeclaringType();
-
- /**
- * The target type of this ITD
- */
- AjType<?> getTargetType() throws ClassNotFoundException;
-
- /**
- * Member modifiers, can be interpreted using java.lang.reflect.Modifier
- */
- int getModifiers();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeFieldDeclaration.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeFieldDeclaration.java
deleted file mode 100644
index 5a8acd76c..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeFieldDeclaration.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.reflect.Type;
-
-/**
- * Represents an inter-type field declaration declared in an aspect.
- */
-public interface InterTypeFieldDeclaration extends InterTypeDeclaration {
-
- /**
- * The field name
- */
- String getName();
-
- /**
- * The field type
- */
- AjType<?> getType();
-
- /**
- * The generic field type
- */
- Type getGenericType();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeMethodDeclaration.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeMethodDeclaration.java
deleted file mode 100644
index e570d8d2d..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/InterTypeMethodDeclaration.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/* *******************************************************************
- * 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;
-
-import java.lang.reflect.Method;
-import java.lang.reflect.Type;
-import java.lang.reflect.TypeVariable;
-
-/**
- * Represents an inter-type method declaration member within an aspect.
- */
-public interface InterTypeMethodDeclaration extends InterTypeDeclaration {
-
- /**
- * The name of this method
- */
- String getName();
-
- /**
- * The method return type
- */
- AjType<?> getReturnType();
-
- /**
- * The generic return type
- */
- Type getGenericReturnType();
-
- /**
- * The method parameters
- */
- AjType<?>[] getParameterTypes();
-
- /**
- * The generic method parameters
- */
- Type[] getGenericParameterTypes();
-
- /**
- * The type variables declared by this method
- */
- TypeVariable<Method>[] getTypeParameters();
-
- /**
- * The declared exceptions thrown by this method
- */
- AjType<?>[] getExceptionTypes();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchAdviceException.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchAdviceException.java
deleted file mode 100644
index 6b1ca8fa0..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchAdviceException.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * Thrown when AjType.getDeclaredAdvice is called with an advice name and no matching
- * advice declaration can be found.
- */
-public class NoSuchAdviceException extends Exception {
-
- private static final long serialVersionUID = 3256444698657634352L;
- private String name;
-
- public NoSuchAdviceException(String name) {
- this.name = name;
- }
-
- /**
- * The advice name that could not be found.
- */
- public String getName() {
- return name;
- }
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchPointcutException.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchPointcutException.java
deleted file mode 100644
index 0274b74b4..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/NoSuchPointcutException.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * Thrown when AjType.getDeclaredPointcut is called with a pointcut name, and no
- * matching pointcut declaration can be found.
- */
-public class NoSuchPointcutException extends Exception {
-
- private static final long serialVersionUID = 3256444698657634352L;
- private String name;
-
- public NoSuchPointcutException(String name) {
- this.name = name;
- }
-
- /**
- * The name of the pointcut that could not be found.
- */
- public String getName() {
- return name;
- }
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClause.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClause.java
deleted file mode 100644
index c16feda33..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClause.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/* *******************************************************************
- * 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 the per-clause associated with an aspect.
- */
-public interface PerClause {
- /**
- * The kind of per-clause (singleton, perthis, pertarget,...)
- */
- PerClauseKind getKind();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClauseKind.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClauseKind.java
deleted file mode 100644
index 1e2d42ecd..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PerClauseKind.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * The different per-clauses (aspect instantiation models)
- * supported by AspectJ
- */
-public enum PerClauseKind {
- SINGLETON,
- PERTHIS,
- PERTARGET,
- PERCFLOW,
- PERCFLOWBELOW,
- PERTYPEWITHIN;
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/Pointcut.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/Pointcut.java
deleted file mode 100644
index dfec7ccbd..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/Pointcut.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/* *******************************************************************
- * 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.
- */
-public interface Pointcut {
-
- /**
- * The declared name of the pointcut.
- */
- String getName();
-
- /**
- * The modifiers associated with the pointcut declaration.
- * Use java.lang.reflect.Modifier to interpret the return value
- */
- int getModifiers();
-
- /**
- * The pointcut parameter types.
- */
- AjType<?>[] getParameterTypes();
-
- /**
- * The pointcut parameter names. Returns an array of empty strings
- * of length getParameterTypes().length if parameter names are not
- * available at runtime.
- */
- String[] getParameterNames();
-
- /**
- * The type that declared this pointcut
- */
- AjType getDeclaringType();
-
- /**
- * The pointcut expression associated with this pointcut.
- */
- PointcutExpression getPointcutExpression();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutBasedPerClause.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutBasedPerClause.java
deleted file mode 100644
index db040ea62..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutBasedPerClause.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * Representation of a pointcut based per-clause associated with an aspect
- * (perthis/target/cflow/cflowbelow)
- *
- */
-public interface PointcutBasedPerClause extends PerClause {
-
- /**
- * Get the associated pointcut expression
- */
- PointcutExpression getPointcutExpression();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutExpression.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutExpression.java
deleted file mode 100644
index e229ba1f0..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/PointcutExpression.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/* *******************************************************************
- * 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;
-
-/**
- * Represents an anonymous pointcut expression as used in pointcuts, advice declarations,
- * declares, and per-clauses
- */
-public interface PointcutExpression {
-
- /**
- * Returns a String representation of the pointcut expression
- */
- String asString();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/SignaturePattern.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/SignaturePattern.java
deleted file mode 100644
index 99ba44dda..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/SignaturePattern.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/* *******************************************************************
- * 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 signature pattern as used in various
- * aspect members (for example, declare @method, declare @field).
- */
-public interface SignaturePattern {
-
- /** return a String representation of this pattern */
- String asString();
-
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePattern.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePattern.java
deleted file mode 100644
index f3b69b421..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePattern.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/* *******************************************************************
- * 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 type pattern as used in member declarations
- * such as declare parents.
- */
-public interface TypePattern {
-
- /** a string representation of the pattern */
- String asString();
-}
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePatternBasedPerClause.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePatternBasedPerClause.java
deleted file mode 100644
index 402b883b9..000000000
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/TypePatternBasedPerClause.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/* *******************************************************************
- * 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 type pattern based per-clause associated
- * with an aspect (pertypewithin).
- *
- */
-public interface TypePatternBasedPerClause {
-
- /**
- * Get the associated type pattern
- */
- TypePattern getTypePattern();
-
-}