public static ValueCreator<?> forType(String type) {
        ValueCreator<?> result = STRING_VC;
        if ("Version".equals(type)) {
            result = VERSION_VC;
        } else if ("Long".equals(type)) {
            result = LONG_VC;
        } else if ("Double".equals(type)) {
            result = DOUBLE_VC;
        } else if ("List<Version>".equals(type)) {
            result = VERSION_LIST_VC;
        } else if ("List<Long>".equals(type)) {
            result = LONG_LIST_VC;
        } else if ("List<Double>".equals(type)) {
            result = DOUBLE_LIST_VC;
        } else if ("List<String>".equals(type)) {
            result = STRING_LIST_VC;
        }
        return result;
    }