@Alias("noop") public static class Factory implements DatasetStateStore.Factory { @Override public DatasetStateStore<JobState.DatasetState> createStateStore(Config config) { // dummy root dir for noop state store Config config2 = config.withValue(ConfigurationKeys.STATE_STORE_ROOT_DIR_KEY, ConfigValueFactory.fromAnyRef("")); return FsDatasetStateStore.createStateStore(config2, NoopDatasetStateStore.class.getName()); } }
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); }
/** * A factory for the default implementation of the admin web server */ @Alias(value="default") public class DefaultAdminWebServerFactory implements AdminWebServerFactory { /** {@inheritDoc} */ @Override public Service createInstance(Properties config, URI executionInfoServerURI) { return new AdminWebServer(config, executionInfoServerURI); } }
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())); } }
@Override public String toString() { Alias alias = getClass().getAnnotation(Alias.class); return null != alias ? alias.value() : getClass().getName(); }
@Alias(value = "PoolBasedLimiter") public static class Factory implements LimiterFactory { public static final String POOL_SIZE_KEY = "poolSize"; @Override public Limiter buildLimiter(Config config) { if (!config.hasPath(POOL_SIZE_KEY)) { throw new IllegalArgumentException("Missing key " + POOL_SIZE_KEY); } return new PoolBasedLimiter(config.getInt(POOL_SIZE_KEY)); } }
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())); } }
@Alias("RecompactBasedOnDuration") public static class Factory implements RecompactionConditionFactory { @Override public RecompactionCondition createRecompactionCondition (Dataset dataset) { return new RecompactionConditionBasedOnDuration (dataset); } }
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()); } }
@Alias(value = "qps") public static class Factory implements LimiterFactory { public static final String QPS_KEY = "qps"; @Override public Limiter buildLimiter(Config config) { if (!config.hasPath(QPS_KEY)) { throw new RuntimeException("Missing key " + QPS_KEY); } return new RateBasedLimiter(config.getLong(QPS_KEY)); } }
@Alias("fs") public class FsDatasetStateStoreFactory implements DatasetStateStore.Factory { @Override public DatasetStateStore<JobState.DatasetState> createStateStore(Config config) { try { return FsDatasetStateStore.createStateStore(config, FsDatasetStateStore.class.getName()); } catch (Exception e) { throw new RuntimeException("Failed to create FsDatasetStateStore with factory", e); } } }
/** * NoOp dynamic config generator that returns an empty {@link Config} */ @Alias("noop") public class NoopDynamicConfigGenerator implements DynamicConfigGenerator { public NoopDynamicConfigGenerator() { } public Config generateDynamicConfig(Config config) { return ConfigFactory.empty(); } }
@Alias("RecompactBasedOnFileCount") public static class Factory implements RecompactionConditionFactory { @Override public RecompactionCondition createRecompactionCondition (Dataset dataset) { return new RecompactionConditionBasedOnFileCount (dataset); } }
@Alias(FACTORY_ALIAS) public static class Factory implements ThrottlingPolicyFactory.SpecificPolicyFactory { @Override public ThrottlingPolicy createPolicy(SharedLimiterKey key, SharedResourcesBroker<ThrottlingServerScopes> broker, Config config) { Preconditions.checkArgument(config.hasPath(COUNT_KEY), "Missing key " + COUNT_KEY); return new CountBasedPolicy(config.getLong(COUNT_KEY)); } }
@Alias("SimpleCompactorCompletionHook") public static class Factory implements CompactorCompletionListenerFactory { @Override public CompactorCompletionListener createCompactorCompactionListener (State state) { return new SimpleCompactorCompletionListener (state); } } }
@Alias(value = "time") public static class Factory implements LimiterFactory { public static final String MAX_SECONDS_KEY = "maxSeconds"; @Override public Limiter buildLimiter(Config config) { if (!config.hasPath(MAX_SECONDS_KEY)) { throw new RuntimeException("Missing key " + MAX_SECONDS_KEY); } return new TimeBasedLimiter(config.getLong(MAX_SECONDS_KEY)); } }
@Alias(FACTORY_ALIAS) public static class Factory implements ThrottlingPolicyFactory.SpecificPolicyFactory { @Override public ThrottlingPolicy createPolicy(SharedLimiterKey key, SharedResourcesBroker<ThrottlingServerScopes> broker, Config config) { return new NoopPolicy(); } }
@Alias("noop") public class NoopEventMetadataGenerator implements EventMetadataGenerator{ public Map<String, String> getMetadata(JobContext jobContext, EventName eventName) { return ImmutableMap.of(); } }