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 ScheduledExecutorService executor, @NotNull org.apache.arrow.memory.BufferAllocator allocator, @NotNull ManagedChannelFactory clientChannelFactory, @NotNull AuthenticationClient authClient, boolean isInternal) Create a newCorePlusClusterSessionFactory -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close any state associated with this factory.forCluster(@NotNull DeephavenClusterConnection clusterConnection, boolean isInternal) Create a newCorePlusClusterSessionFactoryfor connections to the specified cluster.@NotNull PersistentQueryControllerClientGet a subscribedPersistentQueryControllerClientfor this cluster.Create a newBarrageSessionfor susbcriptions using theRemoteTableStateWatcher.StateToken.
-
Constructor Details
-
CorePlusClusterSessionFactory
public CorePlusClusterSessionFactory(@NotNull @NotNull Supplier<PersistentQueryControllerClient> controllerClient, @NotNull @NotNull ScheduledExecutorService executor, @NotNull @NotNull org.apache.arrow.memory.BufferAllocator allocator, @NotNull @NotNull ManagedChannelFactory clientChannelFactory, @NotNull @NotNull AuthenticationClient authClient, boolean isInternal) Create a newCorePlusClusterSessionFactory- Parameters:
controllerClient- the controller clientexecutor- the executor for the sessionsallocator- the allocatorclientChannelFactory- the factory for ManagedChannelsauthClient- the authentication clientisInternal- if this object exists within the cluster being connected to
-
-
Method Details
-
forCluster
public static CorePlusClusterSessionFactory forCluster(@NotNull @NotNull DeephavenClusterConnection clusterConnection, boolean isInternal) Create a newCorePlusClusterSessionFactoryfor connections to the specified cluster.- Parameters:
clusterConnection- the cluster connectionisInternal- if this object exists within the same cluster asclusterConnection- Returns:
- a new
CorePlusClusterSessionFactory
-
newSession
@NotNull public @NotNull CorePlusClusterSessionFactory.SessionAndChannel newSession(@NotNull RemoteTableStateWatcher.StateToken token) Description copied from interface:RemoteTableSessionFactoryCreate a newBarrageSessionfor susbcriptions using theRemoteTableStateWatcher.StateToken.- Specified by:
newSessionin interfaceRemoteTableSessionFactory- Parameters:
token- the state- Returns:
- a new
BarrageSession
-
getControllerClient
Get a subscribedPersistentQueryControllerClientfor this cluster.- Returns:
- a subscribed
PersistentQueryControllerClient
-
close
public void close()Description copied from interface:RemoteTableSessionFactoryClose any state associated with this factory.- Specified by:
closein interfaceRemoteTableSessionFactory
-