Class BinaryLoggerFactory

java.lang.Object
io.deephaven.enterprise.binlog.factory.BinaryLoggerFactory

@Immutable public abstract class BinaryLoggerFactory extends Object
The BinaryLoggerFactory generates Version 2 loggers from a table schema.
  • Constructor Details

    • BinaryLoggerFactory

      public BinaryLoggerFactory()
  • Method Details

    • interfaceValidationMode

      @Default public BinaryLoggerFactory.InterfaceValidationMode interfaceValidationMode()
      The interface validation mode. By default, is BinaryLoggerFactory.InterfaceValidationMode.IF_PRESENT.
      Returns:
      the interface validation mode
    • languageLevel

      @Default public int languageLevel()
      The language level for the generated code. By default, is 8.
      Returns:
      the language level
    • generateAllLogFormatLoggersForTable

      public int generateAllLogFormatLoggersForTable(String destinationSourceRoot, String namespace, String tableName)
      Generate all LogFormat loggers for the given table into the specified directory.
      Parameters:
      destinationSourceRoot - the path to generate into, does not include the logger's package. For example, if your source root in your project is "/Users/developer/src/main/java" use that value. The generation, for a logger named "com.example.foo.BarLogger" would be written to "/Users/developer/src/main/java/com/example/foo/BarLogger.java".
      namespace - the namespace of the table
      tableName - the name of the table
      Returns:
      the number of generated loggers
    • generateLoggersForTable

      public int generateLoggersForTable(String destinationSourceRoot, Schema schema, Set<String> classes)
      Generate the LogFormat loggers for the given schema into the specified directory.
      Parameters:
      destinationSourceRoot - the path to generate into, does not include the logger's package. For example, if your source root in your project is "/Users/developer/src/main/java" use that value. The generation, for a logger named "com.example.foo.BarLogger" would be written to "/Users/developer/src/main/java/com/example/foo/BarLogger.java".
      schema - the schema
      classes - the logger classes to generate
      Returns:
      the number of generated loggers