You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by re...@apache.org on 2023/01/26 10:58:12 UTC

[uima-uimafit] branch feature/220-Add-getType-signature-accepting-a-type-system created (now 2d06ab3)

This is an automated email from the ASF dual-hosted git repository.

rec pushed a change to branch feature/220-Add-getType-signature-accepting-a-type-system
in repository https://gitbox.apache.org/repos/asf/uima-uimafit.git


      at 2d06ab3  Issue #220: Add getType signature accepting a type system

This branch includes the following new commits:

     new 2d06ab3  Issue #220: Add getType signature accepting a type system

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[uima-uimafit] 01/01: Issue #220: Add getType signature accepting a type system

Posted by re...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rec pushed a commit to branch feature/220-Add-getType-signature-accepting-a-type-system
in repository https://gitbox.apache.org/repos/asf/uima-uimafit.git

commit 2d06ab31aaae4361044188bf50bcc921354d2e74
Author: Richard Eckart de Castilho <re...@apache.org>
AuthorDate: Thu Jan 26 11:58:07 2023 +0100

    Issue #220: Add getType signature accepting a type system
    
    - Added getType signature that accepts a type system
---
 .../java/org/apache/uima/fit/util/CasUtil.java     | 31 ++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/uimafit-core/src/main/java/org/apache/uima/fit/util/CasUtil.java b/uimafit-core/src/main/java/org/apache/uima/fit/util/CasUtil.java
index 696636b..54b21cb 100644
--- a/uimafit-core/src/main/java/org/apache/uima/fit/util/CasUtil.java
+++ b/uimafit-core/src/main/java/org/apache/uima/fit/util/CasUtil.java
@@ -42,6 +42,7 @@ import org.apache.uima.cas.CASRuntimeException;
 import org.apache.uima.cas.FSIterator;
 import org.apache.uima.cas.FeatureStructure;
 import org.apache.uima.cas.Type;
+import org.apache.uima.cas.TypeSystem;
 import org.apache.uima.cas.impl.Subiterator;
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.cas.text.AnnotationIndex;
@@ -111,6 +112,19 @@ public final class CasUtil {
     return getType(cas, type.getName());
   }
 
+  /**
+   * Get the CAS type for the given JCas wrapper class.
+   * 
+   * @param aTypeSystem
+   *          the CAS hosting the type system.
+   * @param type
+   *          the JCas wrapper class.
+   * @return the CAS type.
+   */
+  public static Type getType(TypeSystem aTypeSystem, Class<?> type) {
+    return getType(aTypeSystem, type.getName());
+  }
+
   /**
    * Get the CAS type for the given name.
    * 
@@ -121,6 +135,19 @@ public final class CasUtil {
    * @return the CAS type.
    */
   public static Type getType(CAS aCas, String aTypename) {
+    return getType(aCas.getTypeSystem(), aTypename);
+  }
+
+  /**
+   * Get the CAS type for the given name.
+   * 
+   * @param aTypeSystem
+   *          the type system
+   * @param aTypename
+   *          the fully qualified type name.
+   * @return the CAS type.
+   */
+  public static Type getType(TypeSystem aTypeSystem, String aTypename) {
     String typeName = aTypename;
     if (typeName.startsWith(UIMA_BUILTIN_JCAS_PREFIX)) {
       typeName = "uima." + typeName.substring(UIMA_BUILTIN_JCAS_PREFIX.length());
@@ -129,10 +156,10 @@ public final class CasUtil {
     } else if (AnnotationFS.class.getName().equals(aTypename)) {
       typeName = CAS.TYPE_NAME_ANNOTATION;
     }
-    final Type type = aCas.getTypeSystem().getType(typeName);
+    final Type type = aTypeSystem.getType(typeName);
     if (type == null) {
       StringBuilder sb = new StringBuilder();
-      Iterator<Type> i = aCas.getTypeSystem().getTypeIterator();
+      Iterator<Type> i = aTypeSystem.getTypeIterator();
       while (i.hasNext()) {
         sb.append(i.next().getName()).append('\n');
       }