You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2015/11/02 17:41:42 UTC
svn commit: r1712075 -
/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/tcas/Annotation.java
Author: schor
Date: Mon Nov 2 16:41:42 2015
New Revision: 1712075
URL: http://svn.apache.org/viewvc?rev=1712075&view=rev
Log:
[UIMA-4663] update built-in Annotation for v3
Modified:
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/tcas/Annotation.java
Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/tcas/Annotation.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/tcas/Annotation.java?rev=1712075&r1=1712074&r2=1712075&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/tcas/Annotation.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/tcas/Annotation.java Mon Nov 2 16:41:42 2015
@@ -20,11 +20,13 @@
package org.apache.uima.jcas.tcas;
import org.apache.uima.cas.CAS;
+import org.apache.uima.cas.impl.CASImpl;
+import org.apache.uima.cas.impl.TypeImpl;
+import org.apache.uima.cas.impl.TypeSystemImpl;
import org.apache.uima.cas.text.AnnotationFS;
import org.apache.uima.jcas.JCas;
import org.apache.uima.jcas.JCasRegistry;
import org.apache.uima.jcas.cas.AnnotationBase;
-import org.apache.uima.jcas.cas.TOP_Type;
/**
* the JCas class model for the CAS type uima.cas.Annotation. It defines two integer valued features
@@ -40,19 +42,41 @@ public class Annotation extends Annotati
public int getTypeIndexID() {
return typeIndexID;
}
+
+ // static values OK for built-ins
+ private final static int begin_featCode;
+ private final static int end_featCode;
+
+ static {
+ TypeSystemImpl tsi = TypeSystemImpl.staticTsi;
+ TypeImpl annotType = tsi.annotType;
+ begin_featCode = annotType.getFeatureByBaseName(CAS.FEATURE_BASE_NAME_BEGIN).getCode();
+ end_featCode = annotType.getFeatureByBaseName(CAS.FEATURE_BASE_NAME_END ).getCode();
+ }
+
+ /* local data */
+ private int _F_begin;
+ private int _F_end;
// Never called. Disable default constructor
protected Annotation() {
}
- /* Internal - Constructor used by generator */
- public Annotation(int addr, TOP_Type type) {
- super(addr, type);
- }
-
public Annotation(JCas jcas) {
super(jcas);
}
+
+ /**
+ * used by generator
+ * Make a new AnnotationBase
+ * @param c -
+ * @param t -
+ */
+
+ public Annotation(TypeImpl t, CASImpl c) {
+ super(t, c);
+ }
+
// *------------------*
// * Feature: begin
@@ -60,22 +84,13 @@ public class Annotation extends Annotati
/*
* getter for begin - gets beginning of span of annotation
*/
- public int getBegin() {
- // not needed - is built in
-// if (Annotation_Type.featOkTst && ((Annotation_Type) jcasType).casFeat_begin == null)
-// this.jcasType.jcas.throwFeatMissing("begin", "uima.tcas.Annotation");
- return ((Annotation_Type)jcasType).getBegin(addr);
-// return jcasType.ll_cas.ll_getIntValue(addr, ((Annotation_Type) jcasType).casFeatCode_begin);
- }
+ public int getBegin() { return _F_begin; }
/*
* setter for begin - sets beginning of span of annotation
*/
- public void setBegin(int v) {
- // not needed - is built in
-// if (Annotation_Type.featOkTst && ((Annotation_Type) jcasType).casFeat_begin == null)
-// this.jcasType.jcas.throwFeatMissing("begin", "uima.tcas.Annotation");
- jcasType.ll_cas.ll_setIntValue(addr, ((Annotation_Type) jcasType).casFeatCode_begin, v);
+ public void setBegin(int v) {
+ _casView.setWithCheckAndJournal(this, begin_featCode, () -> _F_begin = v);
}
// *------------------*
@@ -85,22 +100,13 @@ public class Annotation extends Annotati
/*
* getter for end - gets ending of span of annotation
*/
- public int getEnd() {
- // not needed - is built in
-// if (Annotation_Type.featOkTst && ((Annotation_Type) jcasType).casFeat_end == null)
-// this.jcasType.jcas.throwFeatMissing("end", "uima.tcas.Annotation");
- return ((Annotation_Type)jcasType).getEnd(addr);
-// return jcasType.ll_cas.ll_getIntValue(addr, ((Annotation_Type) jcasType).casFeatCode_end);
- }
+ public int getEnd() { return _F_end; }
/*
* setter for end - sets ending of span of annotation
*/
public void setEnd(int v) {
- // not needed - is built in
-// if (Annotation_Type.featOkTst && ((Annotation_Type) jcasType).casFeat_end == null)
-// this.jcasType.jcas.throwFeatMissing("end", "uima.tcas.Annotation");
- jcasType.ll_cas.ll_setIntValue(addr, ((Annotation_Type) jcasType).casFeatCode_end, v);
+ _casView.setWithCheckAndJournal(this, end_featCode, () -> _F_end = v);
}
/**
@@ -120,8 +126,7 @@ public class Annotation extends Annotati
*/
public String getCoveredText() {
- final CAS casView = this.getView();
- final String text = casView.getDocumentText();
+ final String text = _casView.getDocumentText();
if (text == null) {
return null;
}
@@ -137,5 +142,5 @@ public class Annotation extends Annotati
public int getStart() {
return getBegin();
}
-
+
}