public class MetadataLoader extends Object
| Constructor and Description |
|---|
MetadataLoader() |
| Modifier and Type | Method and Description |
|---|---|
protected static void |
buildGroupsHierarchy(List<CommandGroupMetadata> commandGroups,
Map<String,CommandGroupMetadata> subGroups) |
static CommandMetadata |
loadCommand(Class<?> commandType)
Loads command meta-data
|
static CommandMetadata |
loadCommand(Class<?> commandType,
Map<String,HelpSection> baseHelpSections)
Loads command meta-data
|
static CommandGroupMetadata |
loadCommandGroup(String name,
String description,
boolean hidden,
Iterable<CommandGroupMetadata> subGroups,
CommandMetadata defaultCommand,
Iterable<CommandMetadata> commands)
Loads command group meta-data
|
static <T> List<CommandMetadata> |
loadCommands(Iterable<Class<? extends T>> defaultCommands,
Map<String,HelpSection> baseHelpSections)
Loads command meta-data
|
static void |
loadCommandsIntoGroupsByAnnotation(List<CommandMetadata> allCommands,
List<CommandGroupMetadata> commandGroups,
List<CommandMetadata> defaultCommandGroup,
Map<String,HelpSection> baseHelpSections) |
static <C> GlobalMetadata<C> |
loadGlobal(Class<?> cliClass) |
static <C> GlobalMetadata<C> |
loadGlobal(Class<?> cliClass,
ParserMetadata<C> parserConfigOverride)
Loads the metadata for a CLI
|
static <C> GlobalMetadata<C> |
loadGlobal(String name,
String description,
CommandMetadata defaultCommand,
Iterable<CommandMetadata> defaultGroupCommands,
Iterable<CommandGroupMetadata> groups,
Iterable<GlobalRestriction> restrictions,
Iterable<HelpSection> baseHelpSections,
ParserMetadata<C> parserConfig)
Loads global meta-data
|
protected static Map<String,HelpSection> |
loadHelpSections(Class<?> sourceClass,
Map<String,HelpSection> baseHelpSections) |
static com.github.rvesse.airline.model.MetadataLoader.InjectionMetadata |
loadInjectionMetadata(Class<?> type)
Loads injection meta-data
|
static void |
loadInjectionMetadata(Class<?> type,
com.github.rvesse.airline.model.MetadataLoader.InjectionMetadata injectionMetadata,
List<Field> fields)
Loads injection meta-data
|
static <C> ParserMetadata<C> |
loadParser(Class<?> cliClass) |
static SuggesterMetadata |
loadSuggester(Class<? extends Suggester> suggesterClass)
Loads suggester meta-data
|
public static <C> ParserMetadata<C> loadParser(Class<?> cliClass)
public static <C> GlobalMetadata<C> loadGlobal(Class<?> cliClass)
public static <C> GlobalMetadata<C> loadGlobal(Class<?> cliClass, ParserMetadata<C> parserConfigOverride)
cliClass - Class that has the
Cli annotationparserConfigOverride - Optional parser configuration, note that the
Cli.parserConfiguration()
field is normally used to provide a parser configuration via
annotation but in some situations this may not be possible,
e.g. constructing user alias search paths programmatically, in
which case providing a parser configuration here
overrides anything specified directly on the
annotationpublic static <C> GlobalMetadata<C> loadGlobal(String name, String description, CommandMetadata defaultCommand, Iterable<CommandMetadata> defaultGroupCommands, Iterable<CommandGroupMetadata> groups, Iterable<GlobalRestriction> restrictions, Iterable<HelpSection> baseHelpSections, ParserMetadata<C> parserConfig)
name - CLI namedescription - CLI descriptiondefaultCommand - Default CommanddefaultGroupCommands - Default Group Commandsgroups - Command GroupsparserConfig - Parser Configurationrestrictions - RestrictionsbaseHelpSections - Base help sectionspublic static CommandGroupMetadata loadCommandGroup(String name, String description, boolean hidden, Iterable<CommandGroupMetadata> subGroups, CommandMetadata defaultCommand, Iterable<CommandMetadata> commands)
name - Group namedescription - Group descriptionhidden - Whether the group is hiddendefaultCommand - Default command for the groupcommands - Commands for the grouppublic static <T> List<CommandMetadata> loadCommands(Iterable<Class<? extends T>> defaultCommands, Map<String,HelpSection> baseHelpSections)
defaultCommands - Default command classespublic static CommandMetadata loadCommand(Class<?> commandType)
commandType - Command classpublic static CommandMetadata loadCommand(Class<?> commandType, Map<String,HelpSection> baseHelpSections)
commandType - Command TypebaseHelpSections - Base set of help sectionsprotected static Map<String,HelpSection> loadHelpSections(Class<?> sourceClass, Map<String,HelpSection> baseHelpSections)
public static SuggesterMetadata loadSuggester(Class<? extends Suggester> suggesterClass)
suggesterClass - Suggester classpublic static com.github.rvesse.airline.model.MetadataLoader.InjectionMetadata loadInjectionMetadata(Class<?> type)
type - Classpublic static void loadInjectionMetadata(Class<?> type, com.github.rvesse.airline.model.MetadataLoader.InjectionMetadata injectionMetadata, List<Field> fields)
type - ClassinjectionMetadata - Injection meta-datafields - Fieldspublic static void loadCommandsIntoGroupsByAnnotation(List<CommandMetadata> allCommands, List<CommandGroupMetadata> commandGroups, List<CommandMetadata> defaultCommandGroup, Map<String,HelpSection> baseHelpSections)
protected static void buildGroupsHierarchy(List<CommandGroupMetadata> commandGroups, Map<String,CommandGroupMetadata> subGroups)
Copyright © 2012–2022. All rights reserved.