Class WebClientTableFactory

java.lang.Object
io.deephaven.enterprise.webclientdata2.WebClientTableFactory

public class WebClientTableFactory extends Object
Create, manage lifetimes and cache tables created on behalf of particular users, based on controller subscriptions for that user.
  • Field Details

  • Constructor Details

    • WebClientTableFactory

      public WebClientTableFactory(@NotNull @NotNull Database db, @NotNull @NotNull AuthenticationClient authClient, @NotNull @NotNull io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, @NotNull @NotNull GroupProvider groupProvider)
      Create an instance of this class
      Parameters:
      db - the Database
      authClient - the authentication client
      etcdClient - the etcd client
      groupProvider - the group provider
  • Method Details

    • isObjectsDebugEnabled

      public static boolean isObjectsDebugEnabled()
    • createAndAddToScope

      public static void createAndAddToScope(@NotNull @NotNull Database db, @NotNull @NotNull AuthenticationClient authClient, @NotNull @NotNull io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, @NotNull @NotNull GroupProvider groupProvider, @NotNull @NotNull QueryScope scope)
      Create an instance of this class and add it to the given scope.
      Parameters:
      db - the Database
      authClient - the authentication client
      etcdClient - the etcd client
      groupProvider - the group provider
      scope - the scope
    • getOrCreate

      public Table getOrCreate(String baseTableName, String user)
      Get from cache or create a table based on its name. The caller is assumed to have an active liveness scope.
      Parameters:
      baseTableName - the name of the base table
      user - the name of a user for which to provide a user-specific version of the base table
      Returns:
      a table