presto-jmx/src/main/java/io/prestosql/plugin/jmx/JmxConnectorFactory.java/JmxConnectorFactory/create
class JmxConnectorFactory:    @Override
    public Connector create(String catalogName, Map<String, String> config, ConnectorContext context)
    {
        Bootstrap app = new Bootstrap(
                new MBeanServerModule(),
                binder -> {
                    configBinder(binder).bindConfig(JmxConnectorConfig.class);
                    binder.bind(NodeManager.class).toInstance(context.getNodeManager());
                    binder.bind(JmxConnector.class).in(Scopes.SINGLETON);
                    binder.bind(JmxHistoricalData.class).in(Scopes.SINGLETON);
                    binder.bind(JmxMetadata.class).in(Scopes.SINGLETON);
                    binder.bind(JmxSplitManager.class).in(Scopes.SINGLETON);
                    binder.bind(JmxPeriodicSampler.class).in(Scopes.SINGLETON);
                    binder.bind(JmxRecordSetProvider.class).in(Scopes.SINGLETON);
                });

        Injector injector = app
                .strictConfig()
                .doNotInitializeLogging()
                .setRequiredConfigurationProperties(config)
                .initialize();

        return injector.getInstance(JmxConnector.class);
    }