[ 
https://issues.apache.org/jira/browse/OPENNLP-789?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17907087#comment-17907087
 ] 

ASF GitHub Bot commented on OPENNLP-789:
----------------------------------------

rzo1 commented on code in PR #200:
URL: https://github.com/apache/opennlp-sandbox/pull/200#discussion_r1892559517


##########
opennlp-wsd/src/main/java/opennlp/tools/disambiguator/FeaturesExtractor.java:
##########
@@ -155,31 +158,43 @@ public List<String> 
extractTrainingSurroundingWords(List<WTDIMS> trainingData) {
   }
 
   /**
-   * This method generates the different set of features related to the IMS
-   * approach and store them in the corresponding attributes of the {@link 
WTDIMS}.
+   * Generates the different set of features related to the IMS
+   * approach and puts them in the corresponding attributes of
+   * the {@link WTDIMS word to disambiguate} object.
    * 
    * @param wtd The {@link WTDIMS word to disambiguate}.
    * @param windowSize The parameter required to generate the features 
qualified of
    *                   "PoS of Surrounding Words".
    * @param ngram The parameter required to generate the features qualified of
    *              "Local Collocations".
+   *
+   * @throws IllegalArgumentException Thrown if parameters were invalid.
    */
   public void extractIMSFeatures(WTDIMS wtd, int windowSize, int ngram) {
+    if (wtd == null) {
+      throw new IllegalArgumentException("WTD must not be null");
+    }
     wtd.setPosOfSurroundingWords(extractPosOfSurroundingWords(wtd, 
windowSize));
     wtd.setSurroundingWords(extractSurroundingWords(wtd));
     wtd.setLocalCollocations(extractLocalCollocations(wtd, ngram));
   }
 
   /**
-   * This generates the context of IMS. It supposes that the features have
-   * already been extracted and stored in the {@link WTDIMS} object, therefore 
it
-   * doesn't require any parameters.
+   * Generates the context for the {@link WTDIMS word to disambiguate}.
+   *
+   * @implNote It is assumed that the features have already been extracted and
+   * wrapped in the {@link WTDIMS word to disambiguate}.
+   * Therefore, it doesn't require any parameters.
    *
-   * @param wtd The {@link WTDIMS wtd to disambiguate}.
+   * @param wtd The {@link WTDIMS word to disambiguate}.
    * @param listSurrWords The full list of surrounding words of the training 
data.
+   *
+   * @throws IllegalArgumentException Thrown if parameters were invalid.
    */
   public void serializeIMSFeatures(WTDIMS wtd, List<String> listSurrWords) {
-
+    if (wtd == null) {

Review Comment:
   Shouldn'T we check for listSurrWords == null too? Otherwise there is a NPE 
in 218 ?





> Extend JavaDoc for WSD component
> --------------------------------
>
>                 Key: OPENNLP-789
>                 URL: https://issues.apache.org/jira/browse/OPENNLP-789
>             Project: OpenNLP
>          Issue Type: Improvement
>          Components: wsd
>            Reporter: Jörn Kottmann
>            Assignee: Martin Wiesner
>            Priority: Major
>              Labels: wsd
>             Fix For: 2.5.2
>
>
> The WSDisambiguator is the main interface for the wsd component. It should 
> have much more javadocs explaining what it does and what wsd is.
> Additionally add at least short javadocs to each class and method in the 
> disambiguator package. One sentence is the minimum here.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to