Package io.deephaven.enterprise.remote
Class CorePlusClusterSessionFactory
java.lang.Object
io.deephaven.enterprise.remote.CorePlusClusterSessionFactory
- All Implemented Interfaces:
RemoteTableSessionFactory
public final class CorePlusClusterSessionFactory
extends Object
implements RemoteTableSessionFactory
A session factory that knows how to associate a barrage session and its managed channel; the session is created
authenticated to a DHE authentication service client.
It also allows obtaining a controller client.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
-
Constructor Summary
ConstructorsConstructorDescriptionCorePlusClusterSessionFactory
(@NotNull Supplier<PersistentQueryControllerClient> controllerClient, @NotNull Supplier<BarrageSessionFactoryBuilder> builderSupplier, @NotNull ScheduledExecutorService executor, @NotNull org.apache.arrow.memory.BufferAllocator allocator, @NotNull ManagedChannelFactory clientChannelFactory, @NotNull io.deephaven.enterprise.auth.AuthenticationClient authClient) Create a newCorePlusClusterSessionFactory
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Close any state associated with this factory.forCluster
(@NotNull DeephavenClusterConnection clusterConnection) Create a newCorePlusClusterSessionFactory
for connections to the specified cluster.@NotNull PersistentQueryControllerClient
Get a subscribedPersistentQueryControllerClient
for this cluster.Create a newBarrageSession
for susbcriptions using theRemoteTableStateWatcher.StateToken
.
-
Constructor Details
-
CorePlusClusterSessionFactory
public CorePlusClusterSessionFactory(@NotNull @NotNull Supplier<PersistentQueryControllerClient> controllerClient, @NotNull @NotNull Supplier<BarrageSessionFactoryBuilder> builderSupplier, @NotNull @NotNull ScheduledExecutorService executor, @NotNull @NotNull org.apache.arrow.memory.BufferAllocator allocator, @NotNull @NotNull ManagedChannelFactory clientChannelFactory, @NotNull @NotNull io.deephaven.enterprise.auth.AuthenticationClient authClient) Create a newCorePlusClusterSessionFactory
- Parameters:
controllerClient
- the controller clientbuilderSupplier
- A supplier of session buildersexecutor
- the executor for the sessionsallocator
- the allocatorclientChannelFactory
- the factory for ManagedChannelsauthClient
- the authentication client
-
-
Method Details
-
forCluster
public static CorePlusClusterSessionFactory forCluster(@NotNull @NotNull DeephavenClusterConnection clusterConnection) Create a newCorePlusClusterSessionFactory
for connections to the specified cluster.- Parameters:
clusterConnection
- the cluster connection- Returns:
- a new
CorePlusClusterSessionFactory
-
newSession
@NotNull public @NotNull CorePlusClusterSessionFactory.SessionAndChannel newSession(@NotNull RemoteTableStateWatcher.StateToken token) Description copied from interface:RemoteTableSessionFactory
Create a newBarrageSession
for susbcriptions using theRemoteTableStateWatcher.StateToken
.- Specified by:
newSession
in interfaceRemoteTableSessionFactory
- Parameters:
token
- the state- Returns:
- a new
BarrageSession
-
getControllerClient
Get a subscribedPersistentQueryControllerClient
for this cluster.- Returns:
- a subscribed
PersistentQueryControllerClient
-
close
public void close()Description copied from interface:RemoteTableSessionFactory
Close any state associated with this factory.- Specified by:
close
in interfaceRemoteTableSessionFactory
-