code: public static <T extends Identifier> List<T> parseList(final String ids, final IdentifierFactory factory) {
      final List<T> result = new ArrayList<>();
      for (final String token : ids.split(DELIMITER)) {
        result.add((T) factory.getNewInstance(token.trim()));
      }
      return result;
    }
docs: Parse a string of multiple IDs.
  
  @param ids A string containing multiple IDs
  @param factory An Identifier factory
  @param <T> A type
  @return A list of identifier