@Override public String toString() { Alias alias = getClass().getAnnotation(Alias.class); return null != alias ? alias.value() : getClass().getName(); }
public ClassAliasResolver(Class<T> subTypeOf) { Map<String, Class<? extends T>> cache = Maps.newHashMap(); this.aliasObjects = Lists.newArrayList(); for (Class<? extends T> clazz : REFLECTIONS.getSubTypesOf(subTypeOf)) { if (clazz.isAnnotationPresent(Alias.class)) { Alias aliasObject = clazz.getAnnotation(Alias.class); String alias = aliasObject.value().toUpperCase(); if (cache.containsKey(alias)) { log.warn(String.format("Alias %s already mapped to class %s. Mapping for %s will be ignored", alias, cache.get(alias).getCanonicalName(), clazz.getCanonicalName())); } else { aliasObjects.add(aliasObject); cache.put(clazz.getAnnotation(Alias.class).value().toUpperCase(), clazz); } } } this.subtypeOf = subTypeOf; this.aliasToClassCache = ImmutableMap.copyOf(cache); }
private void listQuickApps() { List<Alias> aliases = getAllAliases(); System.out.println("Usage: gobblin run <quick-app-name> [OPTIONS]"); System.out.println("Available quick apps:"); for (Alias thisAlias : aliases) { System.out.println(String.format("\t%s\t-\t%s", thisAlias.value(), thisAlias.description())); } }
private static void printUsage(ClassAliasResolver<CliApplication> resolver) { System.out.println("Usage: gobblin <command>"); System.out.println("Available commands:"); for (Alias alias : resolver.getAliasObjects()) { System.out.println("\t" + alias.value() + "\t" + alias.description()); } }
@Override public String toString() { Alias alias = getClass().getAnnotation(Alias.class); return null != alias ? alias.value() : getClass().getName(); }
public ClassAliasResolver(Class<T> subTypeOf) { Map<String, Class<? extends T>> cache = Maps.newHashMap(); this.aliasObjects = Lists.newArrayList(); for (Class<? extends T> clazz : REFLECTIONS.getSubTypesOf(subTypeOf)) { if (clazz.isAnnotationPresent(Alias.class)) { Alias aliasObject = clazz.getAnnotation(Alias.class); String alias = aliasObject.value().toUpperCase(); if (cache.containsKey(alias)) { log.warn(String.format("Alias %s already mapped to class %s. Mapping for %s will be ignored", alias, cache.get(alias).getCanonicalName(), clazz.getCanonicalName())); } else { aliasObjects.add(aliasObject); cache.put(clazz.getAnnotation(Alias.class).value().toUpperCase(), clazz); } } } this.subtypeOf = subTypeOf; this.aliasToClassCache = ImmutableMap.copyOf(cache); }
private void listQuickApps() { List<Alias> aliases = getAllAliases(); System.out.println("Usage: gobblin run <quick-app-name> [OPTIONS]"); System.out.println("Available quick apps:"); for (Alias thisAlias : aliases) { System.out.println(String.format("\t%s\t-\t%s", thisAlias.value(), thisAlias.description())); } }
private static void printUsage(ClassAliasResolver<CliApplication> resolver) { System.out.println("Usage: gobblin <command>"); System.out.println("Available commands:"); for (Alias alias : resolver.getAliasObjects()) { System.out.println("\t" + alias.value() + "\t" + alias.description()); } }