public static void setFeature()

in uimafit-core/src/main/java/org/apache/uima/fit/util/FSUtil.java [271:320]


  public static void setFeature(FeatureStructure aFS, Feature feat, Collection aValue) {
    if (aValue == null) {
      aFS.setFeatureValue(feat, null);
    } else if (feat.getRange().isArray()) {
      switch (feat.getRange().getName()) {
        case CAS.TYPE_NAME_BOOLEAN_ARRAY:
          aFS.setFeatureValue(feat, createBooleanArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_BYTE_ARRAY:
          aFS.setFeatureValue(feat, createByteArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_DOUBLE_ARRAY:
          aFS.setFeatureValue(feat, createDoubleArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_FLOAT_ARRAY:
          aFS.setFeatureValue(feat, createFloatArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_INTEGER_ARRAY:
          aFS.setFeatureValue(feat, createIntArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_LONG_ARRAY:
          aFS.setFeatureValue(feat, createLongArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_SHORT_ARRAY:
          aFS.setFeatureValue(feat, createShortArrayFS(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_STRING_ARRAY:
          aFS.setFeatureValue(feat, createStringArrayFS(aFS.getCAS(), aValue));
          break;
        default:
          aFS.setFeatureValue(feat, createArrayFS(aFS.getCAS(), aValue));
          break;
      }
    } else {
      switch (feat.getRange().getName()) {
        case CAS.TYPE_NAME_FLOAT_LIST:
          aFS.setFeatureValue(feat, createFloatList(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_INTEGER_LIST:
          aFS.setFeatureValue(feat, createIntegerList(aFS.getCAS(), aValue));
          break;
        case CAS.TYPE_NAME_STRING_LIST:
          aFS.setFeatureValue(feat, createStringList(aFS.getCAS(), aValue));
          break;
        default:
          aFS.setFeatureValue(feat, createFSList(aFS.getCAS(), aValue));
          break;
      }
    }
  }