You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by jo...@apache.org on 2014/02/04 13:50:50 UTC

svn commit: r1564276 - /opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/namefind/TokenNameFinderModel.java

Author: joern
Date: Tue Feb  4 12:50:50 2014
New Revision: 1564276

URL: http://svn.apache.org/r1564276
Log:
OPENNLP-641 Fixed updating of a feature generator

Modified:
    opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/namefind/TokenNameFinderModel.java

Modified: opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/namefind/TokenNameFinderModel.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/namefind/TokenNameFinderModel.java?rev=1564276&r1=1564275&r2=1564276&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/namefind/TokenNameFinderModel.java (original)
+++ opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/namefind/TokenNameFinderModel.java Tue Feb  4 12:50:50 2014
@@ -77,9 +77,10 @@ public class TokenNameFinderModel extend
       byte[] generatorDescriptor, Map<String, Object> resources, Map<String, String> manifestInfoEntries) {
     super(COMPONENT_NAME, languageCode, manifestInfoEntries);
     
+    // TODO: Add validation for sequence models!
     // if (!isModelValid(nameFinderModel)) {
     //  throw new IllegalArgumentException("Model not compatible with name finder!");
-    //}
+    // }
     
     init(nameFinderModel, generatorDescriptor, resources, manifestInfoEntries);
   }
@@ -134,6 +135,7 @@ public class TokenNameFinderModel extend
     }
     checkArtifactMap();
   }
+  
   /**
    * Retrieves the {@link TokenNameFinder} model.
    *
@@ -208,8 +210,16 @@ public class TokenNameFinderModel extend
   
   public TokenNameFinderModel updateFeatureGenerator(byte descriptor[]) {
         
-    TokenNameFinderModel model = new TokenNameFinderModel(getLanguage(), getNameFinderModel(),
-        descriptor, Collections.<String, Object>emptyMap(), Collections.<String, String>emptyMap());
+    TokenNameFinderModel model;
+        
+        if (getNameFinderModel() != null) {
+          model = new TokenNameFinderModel(getLanguage(), getNameFinderModel(),
+              descriptor, Collections.<String, Object>emptyMap(), Collections.<String, String>emptyMap());
+        }
+        else {
+          model = new TokenNameFinderModel(getLanguage(), getNameFinderSequenceModel(),
+              descriptor, Collections.<String, Object>emptyMap(), Collections.<String, String>emptyMap());
+        }
     
     // TODO: Not so nice!
     model.artifactMap.clear();