Class PartitionedTableFactory

java.lang.Object
io.deephaven.engine.table.PartitionedTableFactory

public class PartitionedTableFactory extends Object
Factory for producing Deephaven engine PartitionedTable instances.
  • Constructor Details

    • PartitionedTableFactory

      public PartitionedTableFactory()
  • Method Details

    • of

      public static PartitionedTable of(@NotNull @NotNull Table table, @NotNull @NotNull Collection<String> keyColumnNames, boolean uniqueKeys, @NotNull @NotNull String constituentColumnName, @NotNull @NotNull TableDefinition constituentDefinition, boolean constituentChangesPermitted)
      Construct a PartitionedTable.
      Parameters:
      table - The "raw" table of tables. Should be refreshing if any constituents are.
      keyColumnNames - The "key" column names from table. Key columns are used in transform to validate the safety and correctness of join operations and in partitionedTransform to correlate tables that should be transformed together. Passing an ordered set is highly recommended.
      uniqueKeys - Whether the keys (key column values for a row considered as a tuple) in table are guaranteed to be unique
      constituentColumnName - The "constituent" column name from table. The constituent column contains the underlying non-null tables that make up the result PartitionedTable.
      constituentDefinition - A TableDefinition expected to be mutually compatible with all values in the "constituent" column of table
      constituentChangesPermitted - Whether table is permitted to report changes that impact the constituent column; ignored (and treated as false) if !table.isRefreshing()
      Returns:
      A new PartitionedTable as described
    • of

      public static PartitionedTable of(@NotNull @NotNull Table table)
      Construct a PartitionedTable as in of(Table, Collection, boolean, String, TableDefinition, boolean), inferring most parameters as follows:
      keyColumnNames
      The names of all columns with a non-Table data type
      uniqueKeys
      false
      constituentColumnName
      The name of the first column with a Table data type
      constituentDefinition
      The TableDefinition of the value at the first cell in the constituent column. Consequently, table must be non-empty.
      constituentChangesPermitted
      The value of !table.isRefreshing()
      Parameters:
      table - The "raw" table of tables
      Returns:
      A new PartitionedTable as described
    • ofTables

      public static PartitionedTable ofTables(@NotNull @NotNull TableDefinition constituentDefinition, @NotNull @NotNull Table... constituents)
      Construct a Table with a single column containing the non-null values in constituents, and then use that to construct a PartitionedTable as in of(Table, Collection, boolean, String, TableDefinition, boolean), inferring most parameters as follows:
      keyColumnNames
      An empty list
      uniqueKeys
      false
      constituentColumnName
      The single column containing non-null values from constituents
      constituentChangesPermitted
      false
      Parameters:
      constituentDefinition - A TableDefinition expected to be mutually compatible with all values in the "constituent" column of table
      constituents - The constituent tables to include. null values will be ignored.
      Returns:
      A new PartitionedTable as described
    • ofTables

      public static PartitionedTable ofTables(@NotNull @NotNull Table... constituents)
      Construct a Table with a single column containing the non-null values in constituents, and then use that to construct a PartitionedTable as in of(Table, Collection, boolean, String, TableDefinition, boolean), inferring most parameters as follows:
      keyColumnNames
      An empty list
      uniqueKeys
      false
      constituentColumnName
      The single column containing non-null values from constituents
      constituentDefinition
      The TableDefinition of the first non-null value in constituents
      constituentChangesPermitted
      false
      Parameters:
      constituents - The constituent tables to include. null values will be ignored. At least one non-null constituent must be supplied.
      Returns:
      A new PartitionedTable as described