Author: schor
Date: Thu Jun 16 15:02:33 2016
New Revision: 1748740

URL: http://svn.apache.org/viewvc?rev=1748740&view=rev
Log:
[UIMA-4980] improve lists with additional constructors, and getEmptyList()

Modified:
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/CommonList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFSList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFloatList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyIntegerList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyStringList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFSList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFloatList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyIntegerList.java
    
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyStringList.java

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/CommonList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/CommonList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/CommonList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/CommonList.java
 Thu Jun 16 15:02:33 2016
@@ -112,6 +112,8 @@ public interface CommonList extends Feat
        
        CommonList createNonEmptyNode();
        
+       CommonList getEmptyList();
+       
        /**
    * overridden in nonempty nodes
         * Return the head value of a list as a string suitable for 
serialization.
@@ -256,10 +258,5 @@ public interface CommonList extends Feat
   default int id() {
     return ((FeatureStructureImplC)this).id();
   }
-  
-  default CommonList getEmptyList() {
-    TOP node = (TOP) this;
-    return (CommonList) node._getView().getEmptyList(node._getTypeCode());
-  }
 
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFSList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFSList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFSList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFSList.java
 Thu Jun 16 15:02:33 2016
@@ -59,4 +59,8 @@ public class EmptyFSList extends FSList
     super(t, c);
   }
 
+  @Override
+  public EmptyFSList getEmptyList() {
+    return this;
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFloatList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFloatList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFloatList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyFloatList.java
 Thu Jun 16 15:02:33 2016
@@ -57,5 +57,9 @@ public class EmptyFloatList extends Floa
   public EmptyFloatList(TypeImpl t, CASImpl c) {
     super(t, c);
   }  
-  
+    
+  @Override
+  public EmptyFloatList getEmptyList() {
+    return this;
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyIntegerList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyIntegerList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyIntegerList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyIntegerList.java
 Thu Jun 16 15:02:33 2016
@@ -58,4 +58,8 @@ public class EmptyIntegerList extends In
     super(t, c);
   }
   
+  @Override
+  public EmptyIntegerList getEmptyList() {
+    return this;
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyStringList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyStringList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyStringList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/EmptyStringList.java
 Thu Jun 16 15:02:33 2016
@@ -58,4 +58,8 @@ public class EmptyStringList extends Str
     super(t, c);
   }
   
+  @Override
+  public CommonList getEmptyList() {
+    return this;
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFSList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFSList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFSList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFSList.java
 Thu Jun 16 15:02:33 2016
@@ -21,7 +21,6 @@ package org.apache.uima.jcas.cas;
 
 import org.apache.uima.cas.CASRuntimeException;
 import org.apache.uima.cas.impl.CASImpl;
-import org.apache.uima.cas.impl.FeatureImpl;
 import org.apache.uima.cas.impl.TypeImpl;
 import org.apache.uima.cas.impl.TypeSystemImpl;
 import org.apache.uima.jcas.JCas;
@@ -62,7 +61,28 @@ public class NonEmptyFSList extends FSLi
   public NonEmptyFSList(TypeImpl t, CASImpl c) {
     super(t, c);
   }
+  
+  /**
+   * Generate a NonEmpty node with the specified head and tail
+   * @param jcas -
+   * @param head -
+   * @param tail -
+   */
+  public NonEmptyFSList(JCas jcas, TOP head, CommonList tail) {
+    this(jcas);
+    setHead(head);
+    setTail(tail);
+  }
 
+  /**
+   * Generate a NonEmpty node with the specified head with the empty node as 
the tail
+   * @param jcas -
+   * @param head -
+   */
+  public NonEmptyFSList(JCas jcas, TOP head) {
+    this(jcas, head, jcas.getCasImpl().getEmptyFSList());
+  }
+  
   // *------------------*
   // * Feature: head
   /* getter for head * */
@@ -100,4 +120,8 @@ public class NonEmptyFSList extends FSLi
     return ((NonEmptyFSList)getNonEmptyNthNode(i)).getHead();
   }
   
+  @Override
+  public EmptyFSList getEmptyList() {
+    return this._casView.getEmptyFSList();
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFloatList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFloatList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFloatList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyFloatList.java
 Thu Jun 16 15:02:33 2016
@@ -62,6 +62,27 @@ public class NonEmptyFloatList extends F
     super(t, c);
   }
 
+  /**
+   * Generate a NonEmpty node with the specified head and tail
+   * @param jcas -
+   * @param head -
+   * @param tail -
+   */
+  public NonEmptyFloatList(JCas jcas, float v, CommonList tail) {
+    this(jcas);
+    setHead(v);
+    setTail(tail);
+  }
+  
+  /**
+   * Generate a NonEmpty node with the specified head with the empty node as 
the tail
+   * @param jcas -
+   * @param head -
+   */
+  public NonEmptyFloatList(JCas jcas, float v) {
+    this(jcas, v, jcas.getCasImpl().getEmptyFloatList());
+  }
+  
   // *------------------*
   // * Feature: head
   /* getter for head * */
@@ -105,5 +126,9 @@ public class NonEmptyFloatList extends F
   public void set_headFromString(String v) {
     setHead(Float.parseFloat(v));
   }
-    
+   
+  @Override
+  public EmptyFloatList getEmptyList() {
+    return this._casView.getEmptyFloatList();
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyIntegerList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyIntegerList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyIntegerList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyIntegerList.java
 Thu Jun 16 15:02:33 2016
@@ -64,7 +64,27 @@ public class NonEmptyIntegerList extends
     super(t, c);
   }
 
-
+  /**
+   * Generate a NonEmpty node with the specified head and tail
+   * @param jcas -
+   * @param head -
+   * @param tail -
+   */
+  public NonEmptyIntegerList(JCas jcas, int v, CommonList tail) {
+    this(jcas);
+    setHead(v);
+    setTail(tail);
+  }
+  
+  /**
+   * Generate a NonEmpty node with the specified head with the empty node as 
the tail
+   * @param jcas -
+   * @param head -
+   */
+  public NonEmptyIntegerList(JCas jcas, int v) {
+    this(jcas, v, jcas.getCasImpl().getEmptyIntegerList());
+  }
+  
   // *------------------*
   // * Feature: head
   /* getter for head * */
@@ -114,5 +134,8 @@ public class NonEmptyIntegerList extends
     setHead(Integer.parseInt(v));
   }  
 
-  
+  @Override
+  public EmptyIntegerList getEmptyList() {
+    return this._casView.getEmptyIntegerList();
+  }
 }

Modified: 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyStringList.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyStringList.java?rev=1748740&r1=1748739&r2=1748740&view=diff
==============================================================================
--- 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyStringList.java
 (original)
+++ 
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/jcas/cas/NonEmptyStringList.java
 Thu Jun 16 15:02:33 2016
@@ -62,6 +62,27 @@ public class NonEmptyStringList extends
     super(t, c);
   }
   
+  /**
+   * Generate a NonEmpty node with the specified head and tail
+   * @param jcas -
+   * @param head -
+   * @param tail -
+   */
+  public NonEmptyStringList(JCas jcas, String v, CommonList tail) {
+    this(jcas);
+    setHead(v);
+    setTail(tail);
+  }
+  
+  /**
+   * Generate a NonEmpty node with the specified head with the empty node as 
the tail
+   * @param jcas -
+   * @param head -
+   */
+  public NonEmptyStringList(JCas jcas, String v) {
+    this(jcas, v, jcas.getCasImpl().getEmptyStringList());
+  }
+  
 // *------------------*
   // * Feature: head
   /* getter for head * */
@@ -111,4 +132,8 @@ public class NonEmptyStringList extends
     setHead(v);
   }
   
+  @Override
+  public EmptyStringList getEmptyList() {
+    return this._casView.getEmptyStringList();
+  }
 }


Reply via email to