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 2015/05/24 02:59:05 UTC
svn commit: r1681410 - in /uima/uimafit/trunk/uimafit-core/src:
main/java/org/apache/uima/fit/factory/JCasFactory.java
test/java/org/apache/uima/fit/factory/JCasFactoryTest.java
Author: rec
Date: Sun May 24 00:59:05 2015
New Revision: 1681410
URL: http://svn.apache.org/r1681410
Log:
[UIMA-3583] More convenient way to create (J)Cas using text and language
Modified:
uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/JCasFactory.java
uima/uimafit/trunk/uimafit-core/src/test/java/org/apache/uima/fit/factory/JCasFactoryTest.java
Modified: uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/JCasFactory.java
URL: http://svn.apache.org/viewvc/uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/JCasFactory.java?rev=1681410&r1=1681409&r2=1681410&view=diff
==============================================================================
--- uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/JCasFactory.java (original)
+++ uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/JCasFactory.java Sun May 24 00:59:05 2015
@@ -39,6 +39,37 @@ public final class JCasFactory {
}
/**
+ * Creates a new JCas with the given text and the automatically derived type system.
+ * See {@link TypeSystemDescriptionFactory#createTypeSystemDescription()}
+ *
+ * @return a new JCas
+ * @throws UIMAException
+ * if the JCas could not be initialized
+ */
+ public static JCas createText(String aText) throws UIMAException {
+ return createText(aText, null);
+ }
+
+ /**
+ * Creates a new JCas with the given text and language and the automatically derived type system.
+ * See {@link TypeSystemDescriptionFactory#createTypeSystemDescription()}
+ *
+ * @return a new JCas
+ * @throws UIMAException
+ * if the JCas could not be initialized
+ */
+ public static JCas createText(String aText, String aLanguage) throws UIMAException {
+ JCas jcas = createJCas();
+ if (aText != null) {
+ jcas.setDocumentText(aText);
+ }
+ if (aLanguage != null) {
+ jcas.setDocumentLanguage(aLanguage);
+ }
+ return jcas;
+ }
+
+ /**
* Creates a new JCas for the automatically derived type system. See
* {@link TypeSystemDescriptionFactory#createTypeSystemDescription()}
*
Modified: uima/uimafit/trunk/uimafit-core/src/test/java/org/apache/uima/fit/factory/JCasFactoryTest.java
URL: http://svn.apache.org/viewvc/uima/uimafit/trunk/uimafit-core/src/test/java/org/apache/uima/fit/factory/JCasFactoryTest.java?rev=1681410&r1=1681409&r2=1681410&view=diff
==============================================================================
--- uima/uimafit/trunk/uimafit-core/src/test/java/org/apache/uima/fit/factory/JCasFactoryTest.java (original)
+++ uima/uimafit/trunk/uimafit-core/src/test/java/org/apache/uima/fit/factory/JCasFactoryTest.java Sun May 24 00:59:05 2015
@@ -68,4 +68,11 @@ public class JCasFactoryTest extends Com
assertEquals("For", JCasUtil.selectByIndex(jCas, Token.class, 0).getCoveredText());
}
+ @Test
+ public void testCreateText() throws UIMAException {
+ jCas = JCasFactory.createText("For great 20 minute talks, check out TED.com.", "en");
+ AnnotationFactory.createAnnotation(jCas, 0, 3, Token.class);
+ assertEquals("For", JCasUtil.selectByIndex(jCas, Token.class, 0).getCoveredText());
+ assertEquals("en", jCas.getDocumentLanguage());
+ }
}