static String sanitizeDelegateKey()

in uimafit-core/src/main/java/org/apache/uima/fit/factory/AnalysisEngineFactory.java [1529:1554]


  static String sanitizeDelegateKey(String name) {
    if (name == null) {
      return null;
    }

    String trimmedName = name.trim();
    if (trimmedName.isEmpty()) {
      return null;
    }

    StringBuilder buf = new StringBuilder();
    for (int i = 0; i < trimmedName.length(); i++) {
      char c = trimmedName.charAt(i);
      if (isWhitespace(c) || c == '_') {
        if (buf.length() > 0 && buf.charAt(buf.length() - 1) != '_') {
          buf.append('_');
        }
      } else if (!isJavaIdentifierPart(c)) {
        return null;
      } else {
        buf.append(c);
      }
    }

    return buf.toString();
  }