binder -> { binder.bind(KafkaConnectorId.class).toInstance(new KafkaConnectorId(catalogName)); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager());
binder -> { binder.bind(RedisConnectorId.class).toInstance(new RedisConnectorId(catalogName)); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager());
@Override public Connector create(String catalogName, Map<String, String> config, ConnectorContext context) { requireNonNull(catalogName, "catalogName is null"); requireNonNull(config, "config is null"); try { Bootstrap app = new Bootstrap( new JsonModule(), new ElasticsearchConnectorModule(), binder -> { binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager()); binder.bind(ElasticsearchTableDescriptionProvider.class).in(Scopes.SINGLETON); }); Injector injector = app.strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(ElasticsearchConnector.class); } catch (Exception e) { throw new RuntimeException(e); } } }
@Override public Connector create(String catalogName, Map<String, String> config, ConnectorContext context) { requireNonNull(config, "config is null"); try { Bootstrap app = new Bootstrap( new JsonModule(), new MongoClientModule(), binder -> binder.bind(TypeManager.class).toInstance(context.getTypeManager())); Injector injector = app.strictConfig().doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(MongoConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } } }
@Override public Connector create(String catalogName, Map<String, String> config, ConnectorContext context) { requireNonNull(catalogName, "catalogName is null"); requireNonNull(config, "requiredConfig is null"); requireNonNull(context, "context is null"); try { // A plugin is not required to use Guice; it is just very convenient // Unless you don't really know how to Guice, then it is less convenient Bootstrap app = new Bootstrap(new JsonModule(), new AccumuloModule(catalogName, context.getTypeManager())); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(AccumuloConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } }
binder -> { binder.bind(MBeanServer.class).toInstance(new RebindSafeMBeanServer(getPlatformMBeanServer())); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); }, locationModule,
@Override public Connector create(String catalogName, Map<String, String> requiredConfig, ConnectorContext context) { requireNonNull(requiredConfig, "requiredConfig is null"); try { // A plugin is not required to use Guice; it is just very convenient Bootstrap app = new Bootstrap( new JsonModule(), new ExampleModule(catalogName, context.getTypeManager())); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(requiredConfig) .initialize(); return injector.getInstance(ExampleConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } } }
@Override public Connector create(String catalogName, Map<String, String> config, ConnectorContext context) { requireNonNull(config, "config is null"); try { Bootstrap app = new Bootstrap(new JsonModule(), new KuduModule(catalogName, context.getTypeManager())); Injector injector = app.strictConfig().doNotInitializeLogging().setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(KuduConnector.class); } catch (RuntimeException e) { throw e; } catch (Exception e) { throw new RuntimeException(e); } } }
@Override public Connector create(String catalogName, Map<String, String> requiredConfig, ConnectorContext context) { requireNonNull(requiredConfig, "requiredConfig is null"); try { // A plugin is not required to use Guice; it is just very convenient Bootstrap app = new Bootstrap( new JsonModule(), new MemoryModule(catalogName, context.getTypeManager(), context.getNodeManager())); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(requiredConfig) .initialize(); return injector.getInstance(MemoryConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } } }
binder.bind(NodeVersion.class).toInstance(new NodeVersion(context.getNodeManager().getCurrentNode().getVersion())); binder.bind(NodeManager.class).toInstance(context.getNodeManager()); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(PageIndexerFactory.class).toInstance(context.getPageIndexerFactory()); binder.bind(PageSorter.class).toInstance(context.getPageSorter());
@Override public Connector create(String catalogName, Map<String, String> requiredConfig, ConnectorContext context) { ListeningScheduledExecutorService executorService = listeningDecorator(newSingleThreadScheduledExecutor(daemonThreadsNamed("blackhole"))); return new BlackHoleConnector( new BlackHoleMetadata(), new BlackHoleSplitManager(), new BlackHolePageSourceProvider(executorService), new BlackHolePageSinkProvider(executorService), new BlackHoleNodePartitioningProvider(context.getNodeManager()), context.getTypeManager(), executorService); } }
@Override public Connector create(String catalogName, Map<String, String> config, ConnectorContext context) { requireNonNull(catalogName, "catalogName is null"); requireNonNull(config, "config is null"); try { Bootstrap app = new Bootstrap( new JsonModule(), new ElasticsearchConnectorModule(), binder -> { binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager()); binder.bind(ElasticsearchTableDescriptionProvider.class).toInstance(tableDescriptionSupplier); }); Injector injector = app.strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(ElasticsearchConnector.class); } catch (Exception e) { throw new RuntimeException(e); } } }
new AtopModule( atopFactoryClass, context.getTypeManager(), context.getNodeManager(), context.getNodeManager().getEnvironment(),
@Override public Connector create(String connectorId, Map<String, String> config, ConnectorContext context) { requireNonNull(connectorId, "connectorId is null"); requireNonNull(config, "requiredConfig is null"); requireNonNull(context, "context is null"); try { Bootstrap app = new Bootstrap( new HbaseModule(), binder -> { binder.bind(HbaseConnectorId.class).toInstance(new HbaseConnectorId(connectorId)); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager()); }); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(HbaseConnector.class); } catch (Exception e) { throw Throwables.propagate(e); } } }
@Override public Connector create(String connectorId, Map<String, String> config, ConnectorContext context) { requireNonNull(connectorId, "connectorId is null"); requireNonNull(config, "config is null"); try { Bootstrap app = new Bootstrap( // new JsonModule(), new EthereumConnectorModule(), binder -> { binder.bind(EthereumConnectorId.class).toInstance(new EthereumConnectorId(connectorId)); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager()); } ); Injector injector = app.strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(EthereumConnector.class); } catch (Exception e) { throw Throwables.propagate(e); } } }
@Override public Connector create(String connectorId, Map<String, String> config, ConnectorContext context) { requireNonNull(connectorId, "connectorId is null"); requireNonNull(config, "requiredConfig is null"); requireNonNull(context, "context is null"); try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) { final Bootstrap app = new Bootstrap( new ElasticsearchModule(), module, binder -> { binder.bind(ElasticsearchConnectorId.class).toInstance(new ElasticsearchConnectorId(connectorId)); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); binder.bind(NodeManager.class).toInstance(context.getNodeManager()); }); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(ElasticsearchConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } } }
@Override public Connector create(String connectorId, Map<String, String> config, ConnectorContext context) { requireNonNull(config, "config is null"); try { Bootstrap app = new Bootstrap(new JsonModule(), new KuduModule(connectorId, context.getTypeManager())); Injector injector = app.strictConfig().doNotInitializeLogging().setRequiredConfigurationProperties(config) .initialize(); return injector.getInstance(KuduConnector.class); } catch (Exception e) { throw new RuntimeException(e); } } }
@Override public Connector create(String catalogName, Map<String, String> requiredConfig, ConnectorContext context) { requireNonNull(requiredConfig, "requiredConfig is null"); try { // A plugin is not required to use Guice; it is just very convenient Bootstrap app = new Bootstrap( new JsonModule(), new ExampleModule(catalogName, context.getTypeManager())); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(requiredConfig) .initialize(); return injector.getInstance(ExampleConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } } }
@Override public Connector create(String catalogName, Map<String, String> requiredConfig, ConnectorContext context) { requireNonNull(requiredConfig, "requiredConfig is null"); try { // A plugin is not required to use Guice; it is just very convenient Bootstrap app = new Bootstrap( new JsonModule(), new MemoryModule(catalogName, context.getTypeManager(), context.getNodeManager())); Injector injector = app .strictConfig() .doNotInitializeLogging() .setRequiredConfigurationProperties(requiredConfig) .initialize(); return injector.getInstance(MemoryConnector.class); } catch (Exception e) { throwIfUnchecked(e); throw new RuntimeException(e); } } }
binder.bind(NodeManager.class).toInstance(nodeManager); binder.bind(PageSorter.class).toInstance(context.getPageSorter()); binder.bind(TypeManager.class).toInstance(context.getTypeManager()); }, metadataModule,