Skip to content

Commit 192e170

Browse files
committed
Add forConnectorId method to ConnectorSession
Add a method forConnectorId to ConnectorSession to allow converting ConnectorSession of one connector to a ConnectorSession for another connector.
1 parent b835409 commit 192e170

File tree

5 files changed

+45
-0
lines changed

5 files changed

+45
-0
lines changed

presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClient.java

+6
Original file line numberDiff line numberDiff line change
@@ -1235,6 +1235,12 @@ public RuntimeStats getRuntimeStats()
12351235
{
12361236
return session.getRuntimeStats();
12371237
}
1238+
1239+
@Override
1240+
public ConnectorSession forConnectorId(ConnectorId connectorId)
1241+
{
1242+
return this;
1243+
}
12381244
};
12391245
}
12401246

presto-main/src/main/java/com/facebook/presto/FullConnectorSession.java

+6
Original file line numberDiff line numberDiff line change
@@ -199,4 +199,10 @@ public RuntimeStats getRuntimeStats()
199199
{
200200
return session.getRuntimeStats();
201201
}
202+
203+
@Override
204+
public ConnectorSession forConnectorId(ConnectorId connectorId)
205+
{
206+
return new FullConnectorSession(session, identity);
207+
}
202208
}

presto-main/src/main/java/com/facebook/presto/testing/TestingConnectorSession.java

+21
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import com.facebook.presto.common.function.SqlFunctionProperties;
1818
import com.facebook.presto.common.type.TimeZoneKey;
1919
import com.facebook.presto.execution.QueryIdGenerator;
20+
import com.facebook.presto.spi.ConnectorId;
2021
import com.facebook.presto.spi.ConnectorSession;
2122
import com.facebook.presto.spi.PrestoException;
2223
import com.facebook.presto.spi.WarningCollector;
@@ -224,6 +225,26 @@ public RuntimeStats getRuntimeStats()
224225
return new RuntimeStats();
225226
}
226227

228+
@Override
229+
public ConnectorSession forConnectorId(ConnectorId connectorId)
230+
{
231+
return new TestingConnectorSession(
232+
sqlFunctionProperties.getSessionUser(),
233+
identity,
234+
source,
235+
traceToken,
236+
timeZoneKey,
237+
locale,
238+
startTime,
239+
ImmutableList.copyOf(properties.values()),
240+
propertyValues,
241+
sqlFunctionProperties.isLegacyRowFieldOrdinalAccessEnabled(),
242+
clientInfo,
243+
clientTags,
244+
schema,
245+
sessionFunctions);
246+
}
247+
227248
@Override
228249
public String toString()
229250
{

presto-spi/src/main/java/com/facebook/presto/spi/ConnectorSession.java

+6
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,10 @@ default boolean isReadConstraints()
6666
WarningCollector getWarningCollector();
6767

6868
RuntimeStats getRuntimeStats();
69+
70+
/**
71+
* returns a ConnectorSession for a specific ConnectorId
72+
* @return
73+
*/
74+
ConnectorSession forConnectorId(ConnectorId connectorId);
6975
}

presto-spi/src/test/java/com/facebook/presto/spi/TestingSession.java

+6
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,12 @@ public RuntimeStats getRuntimeStats()
130130
{
131131
return new RuntimeStats();
132132
}
133+
134+
@Override
135+
public ConnectorSession forConnectorId(ConnectorId connectorId)
136+
{
137+
return this;
138+
}
133139
};
134140

135141
private TestingSession() {}

0 commit comments

Comments
 (0)