Class EdgeAclImpl

java.lang.Object
io.deephaven.enterprise.acl.impl.EdgeAclImpl
All Implemented Interfaces:
EdgeAclProvider

public class EdgeAclImpl extends Object implements EdgeAclProvider
A implementation of EdgeAclProvider that stores immutable maps of group to ACL definition.
  • Method Details

    • getRowFilters

      @Nullable public @Nullable Collection<WhereFilter>[] getRowFilters(@NotNull @NotNull AclSupport support, @NotNull @NotNull io.deephaven.enterprise.auth.UserContext userContext, boolean isRefreshing)
      Description copied from interface: EdgeAclProvider
      Get the set of WhereFilters that should be disjunctively applied to requested tables.
      Specified by:
      getRowFilters in interface EdgeAclProvider
      Parameters:
      support - the support object
      userContext - the user to generate the ACL for
      isRefreshing - if the table is refreshing
      Returns:
      the collection of row ACLs to be disjunctively applied to the table.
    • getColumnFilters

      @Nullable public @Nullable ColumnAcl getColumnFilters(@NotNull @NotNull AclSupport support, @NotNull @NotNull io.deephaven.enterprise.auth.UserContext userContext, @NotNull @NotNull String[] columnNames, boolean isRefreshing)
      Description copied from interface: EdgeAclProvider
      Get the column ACLs to apply to requested tables.
      Specified by:
      getColumnFilters in interface EdgeAclProvider
      Parameters:
      support - the support object
      userContext - the user to generate the ACL for
      columnNames - the columns to fetch ACLs for
      isRefreshing - if the table is refreshing
      Returns:
      the column ACLs
    • getGroups

      @NotNull public @NotNull Set<String> getGroups()
      Description copied from interface: EdgeAclProvider
      Get the set of groups that may access the table this ACL guards.
      Specified by:
      getGroups in interface EdgeAclProvider
      Returns:
      the set of groups that may access the table
    • builder

      public static io.deephaven.enterprise.acl.impl.EdgeAclImpl.Builder builder()
      Get a builder for constructing an EdgeAclImpl
      Returns:
      a new builder