Ejemplo n.º 1
0
  private ValueScanner<T> findStandardScanner(String scannerClassOrKeyword) throws T2DBException {
    StandardValueType type = null;
    ValueScanner<T> scanner = null;
    try {
      type = StandardValueType.valueOf(scannerClassOrKeyword);
    } catch (IllegalArgumentException e) {
    }

    if (type == null) {
      keyword = null;
      try {
        @SuppressWarnings("unchecked")
        Class<ValueScanner<T>> scannerClass =
            (Class<ValueScanner<T>>) Class.forName(scannerClassOrKeyword);
        try {
          Constructor<ValueScanner<T>> constructor = scannerClass.getConstructor(ValueType.class);
          scanner = constructor.newInstance(this);
        } catch (NoSuchMethodException e) {
          scanner = scannerClass.newInstance();
        }
      } catch (Exception e) {
        throw T2DBMsg.exception(e, D.D10110, name, scannerClassOrKeyword);
      }
    } else scanner = findStandardScanner(type);
    return scanner;
  }