@Override public LogEntryBuilder event() { copyExistingEventToBuffer(); resetEvent(); return this; }
@Override public LogEntryBuilder keyNull() { return key(LogEntryDescriptor.KEY_NULL_VALUE); }
public LogStreamBatchWriterImpl(final LogStream logStream) { wrap(logStream); }
@Override public long tryWrite() { if (eventCount == 0) { if (valueWriter == null) { return 0; } copyExistingEventToBuffer(); } long result = claimBatchForEvents(); if (result >= 0) { try { // return position of last event result = writeEventsToBuffer(claimedBatch.getBuffer()); claimedBatch.commit(); } catch (final Exception e) { claimedBatch.abort(); LangUtil.rethrowUnchecked(e); } finally { reset(); } } return result; }
public TypedCommandWriterImpl( final LogStream stream, final Map<ValueType, Class<? extends UnpackedObject>> eventRegistry) { this.stream = stream; metadata.protocolVersion(Protocol.PROTOCOL_VERSION); this.batchWriter = new LogStreamBatchWriterImpl(stream); this.typeRegistry = new HashMap<>(); eventRegistry.forEach((e, c) -> typeRegistry.put(c, e)); }
@Override public void reset() { eventBufferOffset = 0; eventLength = 0; eventCount = 0; sourceEventPosition = -1L; producerId = -1; resetEvent(); }
@Override public LogEntryBuilder value( final DirectBuffer value, final int valueOffset, final int valueLength) { return valueWriter(bufferWriterInstance.wrap(value, valueOffset, valueLength)); }
@Override public void wrap(final LogStream logStream) { this.logStream = logStream; this.logWriteBuffer = logStream.getWriteBuffer(); this.logId = logStream.getPartitionId(); reset(); }
@Override public LogEntryBuilder metadata(final DirectBuffer buffer) { return metadata(buffer, 0, buffer.capacity()); }
@Override public LogEntryBuilder value(final DirectBuffer value) { return value(value, 0, value.capacity()); }
@Override public long tryWrite() { if (eventCount == 0) { if (valueWriter == null) { return 0; } copyExistingEventToBuffer(); } long result = claimBatchForEvents(); if (result >= 0) { try { // return position of last event result = writeEventsToBuffer(claimedBatch.getBuffer()); claimedBatch.commit(); } catch (final Exception e) { claimedBatch.abort(); LangUtil.rethrowUnchecked(e); } finally { reset(); } } return result; }
public TypedCommandWriterImpl( final LogStream stream, final Map<ValueType, Class<? extends UnpackedObject>> eventRegistry) { this.stream = stream; metadata.protocolVersion(Protocol.PROTOCOL_VERSION); this.batchWriter = new LogStreamBatchWriterImpl(stream); this.typeRegistry = new HashMap<>(); eventRegistry.forEach((e, c) -> typeRegistry.put(c, e)); }
@Override public void reset() { eventBufferOffset = 0; eventLength = 0; eventCount = 0; sourceEventPosition = -1L; producerId = -1; resetEvent(); }
@Override public LogEntryBuilder value( final DirectBuffer value, final int valueOffset, final int valueLength) { return valueWriter(bufferWriterInstance.wrap(value, valueOffset, valueLength)); }
@Override public void wrap(final LogStream logStream) { this.logStream = logStream; this.logWriteBuffer = logStream.getWriteBuffer(); this.logId = logStream.getPartitionId(); reset(); }
@Override public LogEntryBuilder metadata(final DirectBuffer buffer) { return metadata(buffer, 0, buffer.capacity()); }
@Override public LogEntryBuilder value(final DirectBuffer value) { return value(value, 0, value.capacity()); }
@Override public LogEntryBuilder event() { copyExistingEventToBuffer(); resetEvent(); return this; }
public LogStreamBatchWriterImpl(final LogStream logStream) { wrap(logStream); }
@Override public LogEntryBuilder keyNull() { return key(LogEntryDescriptor.KEY_NULL_VALUE); }