Class WorkspaceDataLogger
java.lang.Object
io.deephaven.enterprise.binlog.buffered.impl.MultiPartitionLoggerThreadSafeBase
io.deephaven.enterprise.binlog.internal.gen.WorkspaceDataLogger
- All Implemented Interfaces:
io.deephaven.enterprise.binlog.buffered.Logger,Closeable,Flushable,AutoCloseable
public final class WorkspaceDataLogger
extends io.deephaven.enterprise.binlog.buffered.impl.MultiPartitionLoggerThreadSafeBase
Automatically generated Deephaven binary logger for DbInternal.WorkspaceData format 2. For configuration details, see `io.deephaven.enterprise.schema.internal.LogFormat`
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classThe header encoder.static final classThe row encoder. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final byteFlag indicating that this row is the end of a transaction.static final byteFlag indicating that this row is neither the beginning nor end of a transaction.static final byteFlag indicating that this row is the beginning and end of a transaction.static final byteFlag indicating that this row is the beginning of a transaction.static final booleanIf this is a System namespacestatic final intThe log format versionstatic final intstatic final StringThe Namespacestatic final StringThe TableName -
Method Summary
Modifier and TypeMethodDescriptionprotected final voidprotected final voidprotected final voidcommitBuffers(int arg0) static ByteBufferheader()voidlog(byte flags, String Owner, String Name, String Id, int Version, String DataType, String Data, String Status, String[] AdminGroups, String[] ViewerGroups, String LastModifiedByAuthenticated, String LastModifiedByEffective, long LastModifiedTime) Encodes the data into this logger's buffer.static io.deephaven.enterprise.binlog.support.LoggerInfo<WorkspaceDataLogger>The basic logger information.static WorkspaceDataLoggerof(boolean flushOnLog, io.deephaven.enterprise.binlog.writer.MultiPartitionWriter writer, DateTimeFormatter partitionFormatter) Initialize a logger for the DbInternal.WorkspaceData table, with log format 2.protected final voidprotected final ByteBuffertoString()Methods inherited from class io.deephaven.enterprise.binlog.buffered.impl.MultiPartitionLoggerThreadSafeBase
close, flush
-
Field Details
-
FLAG_NONE
public static final byte FLAG_NONEFlag indicating that this row is neither the beginning nor end of a transaction.- See Also:
-
FLAG_START
public static final byte FLAG_STARTFlag indicating that this row is the beginning of a transaction.- See Also:
-
FLAG_END
public static final byte FLAG_ENDFlag indicating that this row is the end of a transaction.- See Also:
-
FLAG_SINGLE_ROW
public static final byte FLAG_SINGLE_ROWFlag indicating that this row is the beginning and end of a transaction.- See Also:
-
IS_SYSTEM_NAMESPACE
public static final boolean IS_SYSTEM_NAMESPACEIf this is a System namespace- See Also:
-
NAMESPACE
The Namespace- See Also:
-
TABLE_NAME
The TableName- See Also:
-
LOG_FORMAT
public static final int LOG_FORMATThe log format version- See Also:
-
MAX_ENTRY_SIZE
public static final int MAX_ENTRY_SIZE- See Also:
-
BUFFER_SIZE
public static final int BUFFER_SIZE- See Also:
-
-
Method Details
-
header
-
of
public static WorkspaceDataLogger of(boolean flushOnLog, io.deephaven.enterprise.binlog.writer.MultiPartitionWriter writer, DateTimeFormatter partitionFormatter) Initialize a logger for the DbInternal.WorkspaceData table, with log format 2. The returned logger will own a byte array buffer of size 2 MiB (`bufferSize`) whenflushOnLog == false, otherwise 1 MiB (`maxEntrySize`).- Parameters:
flushOnLog- if the returned logger should be flushed on every log callwriter- the writer for this loggerpartitionFormatter- A datetime formatter for time based partition using the LastModifiedTime column.- Returns:
- the logger
-
log
public void log(byte flags, String Owner, String Name, String Id, int Version, String DataType, String Data, String Status, String[] AdminGroups, String[] ViewerGroups, String LastModifiedByAuthenticated, String LastModifiedByEffective, long LastModifiedTime) throws IOException Encodes the data into this logger's buffer. If the remaining size of the buffer after logging is less than 1 MiB (`maxEntrySize`), this logger will be internallyflushed.- Parameters:
flags- the flags for this row, which start and end transactionsOwner- the Owner valueName- the Name valueId- the Id valueVersion- the Version valueDataType- the DataType valueData- the Data valueStatus- the Status valueAdminGroups- the AdminGroups valueViewerGroups- the ViewerGroups valueLastModifiedByAuthenticated- the LastModifiedByAuthenticated valueLastModifiedByEffective- the LastModifiedByEffective valueLastModifiedTime- the LastModifiedTime value, in millis from the epoch- Throws:
IOException
-
loggerInfo
The basic logger information.- Returns:
- the basic logger information
-
toString
-
partition
- Throws:
IOException
-
takeBuffer
- Throws:
IOException
-
abortBuffer
protected final void abortBuffer() -
commitBuffer
- Throws:
IOException
-
commitBuffers
- Throws:
IOException
-