com.sampullara.cli.Args.propertyUsage()方法的使用及代码示例

x33g5p2x  于2022-01-17 转载在 其他  
字(6.7k)|赞(0)|评价(0)|浏览(147)

本文整理了Java中com.sampullara.cli.Args.propertyUsage()方法的一些代码示例,展示了Args.propertyUsage()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Args.propertyUsage()方法的具体详情如下:
包路径:com.sampullara.cli.Args
类名称:Args
方法名:propertyUsage

Args.propertyUsage介绍

暂无

代码示例

代码示例来源:origin: com.google.code.cli-parser/cli

/**
 * Generate usage information based on the target annotations.
 *
 * @param target An instance or class.
 */
public static void usage(Object target) {
  Class clazz;
  if (target instanceof Class) {
    clazz = (Class) target;
  } else {
    clazz = target.getClass();
  }
  System.err.println("Usage: " + clazz.getName());
  for (Field field : clazz.getDeclaredFields()) {
    fieldUsage(target, field);
  }
  try {
    BeanInfo info = Introspector.getBeanInfo(clazz);
    for (PropertyDescriptor pd : info.getPropertyDescriptors()) {
      propertyUsage(target, pd);
    }
  } catch (IntrospectionException e) {
    // If its not a JavaBean we ignore it
  }
}

代码示例来源:origin: com.github.spullara.cli-parser/cli-parser

BeanInfo info = Introspector.getBeanInfo(clazz);
for (PropertyDescriptor pd : info.getPropertyDescriptors()) {
  propertyUsage(errStream, target, pd);

代码示例来源:origin: spullara/cli-parser

BeanInfo info = Introspector.getBeanInfo(clazz);
for (PropertyDescriptor pd : info.getPropertyDescriptors()) {
  propertyUsage(errStream, target, pd);

代码示例来源:origin: com.google.code.cli-parser/cli

private static void propertyUsage(Object target, PropertyDescriptor field) {
  Method writeMethod = field.getWriteMethod();
  if (writeMethod != null) {
    Argument argument = writeMethod.getAnnotation(Argument.class);
    if (argument != null) {
      String name = getName(argument, field);
      String alias = getAlias(argument);
      String prefix = argument.prefix();
      String delimiter = argument.delimiter();
      String description = argument.description();
      try {
        Method readMethod = field.getReadMethod();
        Object defaultValue;
        if (readMethod == null) {
          defaultValue = null;
        } else {
          defaultValue = readMethod.invoke(target, (Object[]) null);
        }
        Class type = field.getPropertyType();
        propertyUsage(prefix, name, alias, type, delimiter, description, defaultValue);
      } catch (IllegalAccessException e) {
        throw new IllegalArgumentException("Could not use thie field " + field + " as an argument field", e);
      } catch (InvocationTargetException e) {
        throw new IllegalArgumentException("Could not get default value for " + field, e);
      }
    }
  }
}

代码示例来源:origin: com.google.code.cli-parser/cli

private static void fieldUsage(Object target, Field field) {
  Argument argument = field.getAnnotation(Argument.class);
  if (argument != null) {
    String name = getName(argument, field);
    String alias = getAlias(argument);
    String prefix = argument.prefix();
    String delimiter = argument.delimiter();
    String description = argument.description();
    makeAccessible(field);
    try {
      Object defaultValue = field.get(target);
      Class type = field.getType();
      propertyUsage(prefix, name, alias, type, delimiter, description, defaultValue);
    } catch (IllegalAccessException e) {
      throw new IllegalArgumentException("Could not use thie field " + field + " as an argument field", e);
    }
  }
}

代码示例来源:origin: com.github.spullara.cli-parser/cli-parser

private static void propertyUsage(PrintStream errStream, Object target, PropertyDescriptor field) {
  Method writeMethod = field.getWriteMethod();
  if (writeMethod != null) {
    Argument argument = writeMethod.getAnnotation(Argument.class);
    if (argument != null) {
      String name = getName(argument, field);
      String alias = getAlias(argument);
      String prefix = argument.prefix();
      String delimiter = argument.delimiter();
      String description = argument.description();
      Class<? extends Callable<List<String>>> valuesProvider = argument.valuesProvider();
      try {
        Method readMethod = field.getReadMethod();
        Object defaultValue;
        if (readMethod == null) {
          defaultValue = null;
        } else {
          defaultValue = readMethod.invoke(target, (Object[]) null);
        }
        Class<?> type = field.getPropertyType();
        propertyUsage(errStream, prefix, name, alias, type, delimiter, description, defaultValue, getPossibleValues(type, valuesProvider));
      } catch (IllegalAccessException e) {
        throw new IllegalArgumentException("Could not use this field " + field + " as an argument field", e);
      } catch (InvocationTargetException e) {
        throw new IllegalArgumentException("Could not get default value for " + field, e);
      }
    }
  }
}

代码示例来源:origin: spullara/cli-parser

private static void propertyUsage(PrintStream errStream, Object target, PropertyDescriptor field) {
  Method writeMethod = field.getWriteMethod();
  if (writeMethod != null) {
    Argument argument = writeMethod.getAnnotation(Argument.class);
    if (argument != null) {
      String name = getName(argument, field);
      String alias = getAlias(argument);
      String prefix = argument.prefix();
      String delimiter = argument.delimiter();
      String description = argument.description();
      Class<? extends Callable<List<String>>> valuesProvider = argument.valuesProvider();
      try {
        Method readMethod = field.getReadMethod();
        Object defaultValue;
        if (readMethod == null) {
          defaultValue = null;
        } else {
          defaultValue = readMethod.invoke(target, (Object[]) null);
        }
        Class<?> type = field.getPropertyType();
        propertyUsage(errStream, prefix, name, alias, type, delimiter, description, defaultValue, getPossibleValues(type, valuesProvider));
      } catch (IllegalAccessException e) {
        throw new IllegalArgumentException("Could not use this field " + field + " as an argument field", e);
      } catch (InvocationTargetException e) {
        throw new IllegalArgumentException("Could not get default value for " + field, e);
      }
    }
  }
}

代码示例来源:origin: spullara/cli-parser

private static void fieldUsage(PrintStream errStream, Object target, Field field) {
  Argument argument = field.getAnnotation(Argument.class);
  if (argument != null) {
    String name = getName(argument, field);
    String alias = getAlias(argument);
    String prefix = argument.prefix();
    String delimiter = argument.delimiter();
    String description = argument.description();
    Class<? extends Callable<List<String>>> valuesProvider = argument.valuesProvider();
    makeAccessible(field);
    try {
      Object defaultValue = field.get(target);
      Class<?> type = field.getType();
      propertyUsage(errStream, prefix, name, alias, type, delimiter, description, defaultValue, getPossibleValues(type, valuesProvider));
    } catch (IllegalAccessException e) {
      throw new IllegalArgumentException("Could not use this field " + field + " as an argument field", e);
    }
  }
}

代码示例来源:origin: com.github.spullara.cli-parser/cli-parser

private static void fieldUsage(PrintStream errStream, Object target, Field field) {
  Argument argument = field.getAnnotation(Argument.class);
  if (argument != null) {
    String name = getName(argument, field);
    String alias = getAlias(argument);
    String prefix = argument.prefix();
    String delimiter = argument.delimiter();
    String description = argument.description();
    Class<? extends Callable<List<String>>> valuesProvider = argument.valuesProvider();
    makeAccessible(field);
    try {
      Object defaultValue = field.get(target);
      Class<?> type = field.getType();
      propertyUsage(errStream, prefix, name, alias, type, delimiter, description, defaultValue, getPossibleValues(type, valuesProvider));
    } catch (IllegalAccessException e) {
      throw new IllegalArgumentException("Could not use this field " + field + " as an argument field", e);
    }
  }
}

相关文章