code: protected int addOriginalDocument(String text, int label)
      {
          if(label >= labelInfo.getNumOfCategories())
              throw new RuntimeException("Invalid label given");
          int index = super.addOriginalDocument(text);
          synchronized(classLabels)
          {
              while(classLabels.size() < index)
                  classLabels.add(-1);
              if(classLabels.size() ==  index)//we are where we expect
                  classLabels.add(label);
              else//another thread beat us to the addition
                  classLabels.set(index, label);
          }
          return index;
      }
docs: To be called by the {@link #initialLoad() } method.
  It will take in the text and add a new document
  vector to the data set. Once all text documents
  have been loaded, this method should never be
  called again. <br>
  This method is thread safe.
  
  @param text the text of the document to add
  @param label the classification label for this document
  @return the index of the created document for the given text. Starts from
  zero and counts up.