aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraclement <aclement>2005-03-10 17:44:58 +0000
committeraclement <aclement>2005-03-10 17:44:58 +0000
commit1c7ba5bdaa38cc7f1a84b9696deb6e303af995ea (patch)
tree31dbb7105966a244f1f1142835fe0974d7a089a6
parentb75f15d4839cf1bce952df3d2c9361315b04032d (diff)
downloadaspectj-1c7ba5bdaa38cc7f1a84b9696deb6e303af995ea.tar.gz
aspectj-1c7ba5bdaa38cc7f1a84b9696deb6e303af995ea.zip
Declare annotation: added getAnnotation/addAnnotation to the RTX hierarchy
-rw-r--r--weaver/src/org/aspectj/weaver/ResolvedTypeX.java27
1 files changed, 26 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/ResolvedTypeX.java b/weaver/src/org/aspectj/weaver/ResolvedTypeX.java
index 1214df7d0..865ceb81b 100644
--- a/weaver/src/org/aspectj/weaver/ResolvedTypeX.java
+++ b/weaver/src/org/aspectj/weaver/ResolvedTypeX.java
@@ -530,6 +530,21 @@ public abstract class ResolvedTypeX extends TypeX implements AnnotatedElement {
}
/**
+ * Note: Only overridden by Name subtype
+ */
+ public void addAnnotation(AnnotationX annotationX) {
+ throw new RuntimeException("ResolvedTypeX.addAnnotation() should never be called");
+ }
+
+ /**
+ * Note: Only overridden by Name subtype
+ */
+ public AnnotationX[] getAnnotations() {
+ throw new RuntimeException("ResolvedTypeX.getAnnotations() should never be called");
+ }
+
+
+ /**
* Note: Only overridden by Name subtype.
*/
public boolean isAnnotationWithRuntimeRetention() {
@@ -626,6 +641,13 @@ public abstract class ResolvedTypeX extends TypeX implements AnnotatedElement {
return delegate.isClass();
}
+ public AnnotationX[] getAnnotations() {
+ return delegate.getAnnotations();
+ }
+
+ public void addAnnotation(AnnotationX annotationX) {
+ delegate.addAnnotation(annotationX);
+ }
public boolean hasAnnotation(TypeX ofType) {
return delegate.hasAnnotation(ofType);
}
@@ -789,7 +811,8 @@ public abstract class ResolvedTypeX extends TypeX implements AnnotatedElement {
this.exposedToWeaver = exposedToWeaver;
}
- public final boolean isClass() {
+
+ public final boolean isClass() {
return !isAspect() && !isInterface();
}
@@ -799,6 +822,8 @@ public abstract class ResolvedTypeX extends TypeX implements AnnotatedElement {
public abstract boolean isAnnotation();
public abstract boolean isAnnotationWithRuntimeRetention();
+ public abstract AnnotationX[] getAnnotations();
+ public abstract void addAnnotation(AnnotationX annotationX);
public abstract boolean hasAnnotation(TypeX ofType);
public abstract ResolvedTypeX[] getAnnotationTypes();