Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core/src/org/eclipse/jpt/jaxb/eclipselink/core/internal/resource/java/source/SourceXmlPathAnnotation.java')
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core/src/org/eclipse/jpt/jaxb/eclipselink/core/internal/resource/java/source/SourceXmlPathAnnotation.java18
1 files changed, 12 insertions, 6 deletions
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core/src/org/eclipse/jpt/jaxb/eclipselink/core/internal/resource/java/source/SourceXmlPathAnnotation.java b/jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core/src/org/eclipse/jpt/jaxb/eclipselink/core/internal/resource/java/source/SourceXmlPathAnnotation.java
index b2cc14676e..173473e6b5 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core/src/org/eclipse/jpt/jaxb/eclipselink/core/internal/resource/java/source/SourceXmlPathAnnotation.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core/src/org/eclipse/jpt/jaxb/eclipselink/core/internal/resource/java/source/SourceXmlPathAnnotation.java
@@ -10,7 +10,6 @@
package org.eclipse.jpt.jaxb.eclipselink.core.internal.resource.java.source;
import org.eclipse.jdt.core.dom.Annotation;
-import org.eclipse.jdt.core.dom.CompilationUnit;
import org.eclipse.jpt.common.core.internal.resource.java.source.SourceAnnotation;
import org.eclipse.jpt.common.core.internal.utility.jdt.AnnotatedElementAnnotationElementAdapter;
import org.eclipse.jpt.common.core.internal.utility.jdt.CombinationIndexedDeclarationAnnotationAdapter;
@@ -43,6 +42,7 @@ public class SourceXmlPathAnnotation
private final DeclarationAnnotationElementAdapter<String> valueDeclarationAdapter;
private final AnnotationElementAdapter<String> valueAdapter;
private String value;
+ private TextRange valueTextRange;
public static SourceXmlPathAnnotation buildSourceXmlPathAnnotation(
@@ -90,12 +90,14 @@ public class SourceXmlPathAnnotation
public void initialize(Annotation astAnnotation) {
super.initialize(astAnnotation);
this.value = buildValue(astAnnotation);
+ this.valueTextRange = this.buildValueTextRange(astAnnotation);
}
@Override
public void synchronizeWith(Annotation astAnnotation) {
super.synchronizeWith(astAnnotation);
syncValue(buildValue(astAnnotation));
+ this.valueTextRange = this.buildValueTextRange(astAnnotation);
}
@Override
@@ -126,13 +128,17 @@ public class SourceXmlPathAnnotation
private String buildValue(Annotation astAnnotation) {
return this.valueAdapter.getValue(astAnnotation);
}
-
- public TextRange getValueTextRange(CompilationUnit astRoot) {
- return this.getElementTextRange(this.valueDeclarationAdapter, astRoot);
+
+ public TextRange getValueTextRange() {
+ return this.valueTextRange;
+ }
+
+ private TextRange buildValueTextRange(Annotation astAnnotation) {
+ return this.getElementTextRange(this.valueDeclarationAdapter, astAnnotation);
}
- public boolean valueTouches(int pos, CompilationUnit astRoot) {
- return elementTouches(this.valueDeclarationAdapter, pos, astRoot);
+ public boolean valueTouches(int pos) {
+ return this.textRangeTouches(this.valueTextRange, pos);
}

Back to the top