Class LocalAppendableTableFactory

java.lang.Object
com.illumon.iris.db.tables.appendable.local.LocalAppendableTableFactory

public class LocalAppendableTableFactory extends Object
Simple constructors for stand-alone use cases.
  • Constructor Details

    • LocalAppendableTableFactory

      public LocalAppendableTableFactory()
  • Method Details

    • makeTableLocation

      public static WritableLocalTableLocation makeTableLocation(@NotNull File destination)
      Make a simple standalone writable table location.
      Parameters:
      destination - The destination directory
      Returns:
      The location
    • makeColumnLocation

      public static LocalColumnLocation makeColumnLocation(@NotNull WritableLocalTableLocation tableLocation, @NotNull String name)
      Make a simple standalone writable column location.
      Parameters:
      tableLocation - The table location
      name - The column name
      Returns:
      The location
    • makeColumnLocation

      public static LocalColumnLocation makeColumnLocation(@NotNull File destination, @NotNull String name)
      Make a simple standalone writable column location.
      Parameters:
      destination - The destination directory
      name - The column name
      Returns:
      The location
    • makeColumn

      public static LocalAppendableColumn makeColumn(@NotNull com.illumon.dataobjects.ColumnDefinition definition, @NotNull File destination, boolean initialize)

      Make a standalone appendable column using the StringCacheProvider obtained via StringCacheProviders.getAlwaysCreateStringInstance(boolean) with unbounded = true. Delegates to makeColumn(ColumnDefinition, File, boolean, StringCacheProvider).

      Note that this method should be used very sparingly. Appendable columns should usually be created as part of an appendable table. Administrative methods for adding new columns to existing data are the only obvious exception.

      Parameters:
      definition - The column definition
      destination - The destination directory
      initialize - Whether this column should initialize the location, or truncate
      Returns:
      A standalone appendable column
    • makeColumn

      public static LocalAppendableColumn makeColumn(@NotNull com.illumon.dataobjects.ColumnDefinition definition, @NotNull File destination, boolean initialize, @NotNull StringCacheProvider stringCacheProvider)

      Make a standalone appendable column.

      Note that this method should be used very sparingly. Appendable columns should usually be created as part of an appendable table. Administrative methods for adding new columns to existing data are the only obvious exception.

      Parameters:
      definition - The column definition
      destination - The destination directory
      initialize - Whether this column should initialize the location, or truncate
      stringCacheProvider - The StringCacheProvider to use for this table
      Returns:
      A standalone appendable column
      See Also:
    • make

      public static LocalAppendableTable make(@NotNull TableDefinition definition, @NotNull File destination, boolean append)
      Make a simple stand-alone table using the StringCacheProvider obtained via StringCacheProviders.getAlwaysCreateStringInstance(boolean) with unbounded = true. Delegates to make(TableDefinition, File, boolean, StringCacheProvider).
      Parameters:
      definition - The table definition
      destination - The destination directory
      append - Whether this table should append to existing data, or truncate
      Returns:
      A standalone LocalAppendableTable
    • make

      public static LocalAppendableTable make(@NotNull TableDefinition definition, @NotNull File destination, boolean append, @NotNull StringCacheProvider stringCacheProvider)
      Make a simple stand-alone table.
      Parameters:
      definition - The table definition
      destination - The destination directory
      append - Whether this table should append to existing data, or truncate
      stringCacheProvider - The StringCacheProvider to use for this table
      Returns:
      A standalone LocalAppendableTable