Skip to content

Commit b6d1361

Browse files
committed
Absorb CatalogNameModule into CatalogContextModule
There are some places where this binding is used in a different context than as a way to pass the catalog name to the connector plugin; in those places the module is inlined, so that we can remove it entirely.
1 parent 77ebc1c commit b6d1361

File tree

29 files changed

+34
-126
lines changed

29 files changed

+34
-126
lines changed

lib/trino-hdfs/src/main/java/io/trino/filesystem/hdfs/HdfsFileSystemManager.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import io.trino.plugin.base.ConnectorContextModule;
2929
import io.trino.plugin.base.jmx.ConnectorObjectNameGeneratorModule;
3030
import io.trino.plugin.base.jmx.MBeanServerModule;
31-
import io.trino.spi.catalog.CatalogName;
3231
import io.trino.spi.connector.ConnectorContext;
3332
import org.weakref.jmx.guice.MBeanModule;
3433

@@ -62,10 +61,7 @@ public HdfsFileSystemManager(
6261
modules.add(new HdfsModule());
6362
modules.add(new HdfsAuthenticationModule());
6463
modules.add(new HiveCosModule());
65-
modules.add(new ConnectorContextModule(context));
66-
modules.add(binder -> {
67-
binder.bind(CatalogName.class).toInstance(new CatalogName(catalogName));
68-
});
64+
modules.add(new ConnectorContextModule(catalogName, context));
6965

7066
if (azureEnabled) {
7167
modules.add(new HiveAzureModule());

lib/trino-plugin-toolkit/src/main/java/io/trino/plugin/base/CatalogNameModule.java

Lines changed: 0 additions & 37 deletions
This file was deleted.

lib/trino-plugin-toolkit/src/main/java/io/trino/plugin/base/ConnectorContextModule.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import io.trino.spi.PageIndexerFactory;
2424
import io.trino.spi.PageSorter;
2525
import io.trino.spi.VersionEmbedder;
26+
import io.trino.spi.catalog.CatalogName;
2627
import io.trino.spi.connector.ConnectorContext;
2728
import io.trino.spi.connector.MetadataProvider;
2829
import io.trino.spi.type.TypeManager;
@@ -32,16 +33,20 @@
3233
public class ConnectorContextModule
3334
implements Module
3435
{
36+
private final String catalogName;
3537
private final ConnectorContext context;
3638

37-
public ConnectorContextModule(ConnectorContext context)
39+
public ConnectorContextModule(String catalogName, ConnectorContext context)
3840
{
41+
this.catalogName = requireNonNull(catalogName, "catalogName is null");
3942
this.context = requireNonNull(context, "context is null");
4043
}
4144

4245
@Override
4346
public void configure(Binder binder)
4447
{
48+
binder.bind(CatalogName.class).toInstance(new CatalogName(catalogName));
49+
4550
binder.bind(OpenTelemetry.class).toInstance(context.getOpenTelemetry());
4651
binder.bind(Tracer.class).toInstance(context.getTracer());
4752
binder.bind(Node.class).toInstance(context.getCurrentNode());

lib/trino-plugin-toolkit/src/test/java/io/trino/plugin/base/security/BaseFileBasedConnectorAccessControlTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
import com.google.common.collect.ImmutableSet;
1919
import com.google.inject.Injector;
2020
import io.airlift.bootstrap.Bootstrap;
21-
import io.trino.plugin.base.CatalogNameModule;
2221
import io.trino.spi.QueryId;
22+
import io.trino.spi.catalog.CatalogName;
2323
import io.trino.spi.connector.ConnectorAccessControl;
2424
import io.trino.spi.connector.ConnectorSecurityContext;
2525
import io.trino.spi.connector.ConnectorTransactionHandle;
@@ -855,7 +855,7 @@ public void testRefreshing(@TempDir Path tempDir)
855855

856856
protected ConnectorAccessControl createAccessControl(Map<String, String> configProperties)
857857
{
858-
Bootstrap bootstrap = new Bootstrap(new CatalogNameModule("test_catalog"), new FileBasedAccessControlModule());
858+
Bootstrap bootstrap = new Bootstrap(binder -> binder.bind(CatalogName.class).toInstance(new CatalogName("test_catalog")), new FileBasedAccessControlModule());
859859

860860
Injector injector = bootstrap
861861
.doNotInitializeLogging()

plugin/trino-ai-functions/src/main/java/io/trino/plugin/ai/functions/AiConnectorFactory.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import com.google.inject.Injector;
1717
import io.airlift.bootstrap.Bootstrap;
1818
import io.trino.plugin.base.ConnectorContextModule;
19-
import io.trino.spi.catalog.CatalogName;
2019
import io.trino.spi.connector.Connector;
2120
import io.trino.spi.connector.ConnectorContext;
2221
import io.trino.spi.connector.ConnectorFactory;
@@ -42,10 +41,7 @@ public Connector create(String catalogName, Map<String, String> config, Connecto
4241
Bootstrap app = new Bootstrap(
4342
"io.trino.bootstrap.catalog." + catalogName,
4443
new AiModule(),
45-
new ConnectorContextModule(context),
46-
binder -> {
47-
binder.bind(CatalogName.class).toInstance(new CatalogName(catalogName));
48-
});
44+
new ConnectorContextModule(catalogName, context));
4945

5046
Injector injector = app
5147
.doNotInitializeLogging()

plugin/trino-base-jdbc/src/main/java/io/trino/plugin/jdbc/JdbcConnectorFactory.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import com.google.inject.Module;
1818
import io.airlift.bootstrap.Bootstrap;
1919
import io.trino.plugin.base.ConnectorContextModule;
20-
import io.trino.spi.catalog.CatalogName;
2120
import io.trino.spi.connector.Connector;
2221
import io.trino.spi.connector.ConnectorContext;
2322
import io.trino.spi.connector.ConnectorFactory;
@@ -57,8 +56,7 @@ public Connector create(String catalogName, Map<String, String> requiredConfig,
5756

5857
Bootstrap app = new Bootstrap(
5958
"io.trino.bootstrap.catalog." + catalogName,
60-
new ConnectorContextModule(context),
61-
binder -> binder.bind(CatalogName.class).toInstance(new CatalogName(catalogName)),
59+
new ConnectorContextModule(catalogName, context),
6260
new JdbcModule(),
6361
module.get());
6462

plugin/trino-bigquery/src/main/java/io/trino/plugin/bigquery/BigQueryConnectorFactory.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import io.trino.plugin.base.ConnectorContextModule;
2020
import io.trino.plugin.base.jmx.ConnectorObjectNameGeneratorModule;
2121
import io.trino.plugin.base.jmx.MBeanServerModule;
22-
import io.trino.spi.catalog.CatalogName;
2322
import io.trino.spi.connector.Connector;
2423
import io.trino.spi.connector.ConnectorContext;
2524
import io.trino.spi.connector.ConnectorFactory;
@@ -53,10 +52,7 @@ public Connector create(String catalogName, Map<String, String> config, Connecto
5352
new MBeanServerModule(),
5453
new MBeanModule(),
5554
new ConnectorObjectNameGeneratorModule("io.trino.plugin.bigquery", "trino.plugin.bigquery"),
56-
new ConnectorContextModule(context),
57-
binder -> {
58-
binder.bind(CatalogName.class).toInstance(new CatalogName(catalogName));
59-
});
55+
new ConnectorContextModule(catalogName, context));
6056

6157
Injector injector = app
6258
.doNotInitializeLogging()

plugin/trino-cassandra/src/main/java/io/trino/plugin/cassandra/CassandraConnectorFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public Connector create(String catalogName, Map<String, String> config, Connecto
4545

4646
Bootstrap app = new Bootstrap(
4747
"io.trino.bootstrap.catalog." + catalogName,
48-
new ConnectorContextModule(context),
48+
new ConnectorContextModule(catalogName, context),
4949
new MBeanModule(),
5050
new JsonModule(),
5151
new CassandraClientModule(context.getTypeManager()),

plugin/trino-delta-lake/src/main/java/io/trino/plugin/deltalake/DeltaLakeConnectorFactory.java

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import io.airlift.bootstrap.LifeCycleManager;
2222
import io.airlift.json.JsonModule;
2323
import io.trino.filesystem.manager.FileSystemModule;
24-
import io.trino.plugin.base.CatalogNameModule;
2524
import io.trino.plugin.base.ConnectorContextModule;
2625
import io.trino.plugin.base.classloader.ClassLoaderSafeConnectorAccessControl;
2726
import io.trino.plugin.base.classloader.ClassLoaderSafeConnectorPageSinkProvider;
@@ -33,7 +32,6 @@
3332
import io.trino.plugin.base.session.SessionPropertiesProvider;
3433
import io.trino.plugin.deltalake.metastore.DeltaLakeMetastoreModule;
3534
import io.trino.plugin.hive.HiveConfig;
36-
import io.trino.spi.catalog.CatalogName;
3735
import io.trino.spi.classloader.ThreadContextClassLoader;
3836
import io.trino.spi.connector.Connector;
3937
import io.trino.spi.connector.ConnectorAccessControl;
@@ -90,16 +88,12 @@ public static Connector createConnector(
9088
new ConnectorObjectNameGeneratorModule("io.trino.plugin.deltalake", "trino.plugin.deltalake"),
9189
new JsonModule(),
9290
new MBeanServerModule(),
93-
new CatalogNameModule(catalogName),
9491
metastoreModule.orElse(new DeltaLakeMetastoreModule()),
9592
new DeltaLakeModule(),
9693
new DeltaLakeSecurityModule(),
9794
new DeltaLakeSynchronizerModule(),
9895
new FileSystemModule(catalogName, context, false),
99-
new ConnectorContextModule(context),
100-
binder -> {
101-
binder.bind(CatalogName.class).toInstance(new CatalogName(catalogName));
102-
},
96+
new ConnectorContextModule(catalogName, context),
10397
module);
10498

10599
Injector injector = app

plugin/trino-delta-lake/src/test/java/io/trino/plugin/deltalake/TestDeltaLakeMetadata.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
import io.trino.plugin.deltalake.transactionlog.MetadataEntry;
3939
import io.trino.plugin.deltalake.transactionlog.ProtocolEntry;
4040
import io.trino.spi.TrinoException;
41-
import io.trino.spi.catalog.CatalogName;
4241
import io.trino.spi.connector.Assignment;
4342
import io.trino.spi.connector.ColumnHandle;
4443
import io.trino.spi.connector.ColumnMetadata;
@@ -187,10 +186,7 @@ public void setUp()
187186
Bootstrap app = new Bootstrap(
188187
// connector dependencies
189188
new JsonModule(),
190-
new ConnectorContextModule(context),
191-
binder -> {
192-
binder.bind(CatalogName.class).toInstance(new CatalogName("test"));
193-
},
189+
new ConnectorContextModule("test", context),
194190
// connector modules
195191
new DeltaLakeSecurityModule(),
196192
new DeltaLakeMetastoreModule(),

0 commit comments

Comments
 (0)