public long tryWrite(final Raft raft) { logStreamWriter.wrap(raft.getLogStream()); metadata.reset().valueType(ValueType.NOOP); return logStreamWriter.keyNull().metadataWriter(metadata).value(EMPTY_OBJECT).tryWrite(); } }
public long tryWrite(final Raft raft) { logStreamWriter.wrap(raft.getLogStream()); metadata.reset().valueType(ValueType.NOOP); return logStreamWriter.keyNull().metadataWriter(metadata).value(EMPTY_OBJECT).tryWrite(); } }
private boolean writeCreatingDeployment( final Partition partition, final long key, final UnpackedObject event) { final RecordType recordType = RecordType.COMMAND; final ValueType valueType = ValueType.DEPLOYMENT; final Intent intent = DeploymentIntent.CREATE; logStreamWriter.wrap(partition.getLogStream()); recordMetadata.reset().recordType(recordType).valueType(valueType).intent(intent); final long position = logStreamWriter.key(key).metadataWriter(recordMetadata).valueWriter(event).tryWrite(); return position > 0; } }
@Override public long writeEvent(LogStreamRecordWriter writer) { if (shouldCommitPositions()) { final ExporterRecord record = state.newExporterRecord(); rawMetadata .reset() .recordType(RecordType.EVENT) .valueType(ValueType.EXPORTER) .intent(ExporterIntent.EXPORTED); return writer.positionAsKey().valueWriter(record).metadataWriter(rawMetadata).tryWrite(); } return 0; } }
@Override public long writeEvent(LogStreamRecordWriter writer) { if (shouldCommitPositions()) { final ExporterRecord record = state.newExporterRecord(); rawMetadata .reset() .recordType(RecordType.EVENT) .valueType(ValueType.EXPORTER) .intent(ExporterIntent.EXPORTED); return writer.positionAsKey().valueWriter(record).metadataWriter(rawMetadata).tryWrite(); } return 0; } }
private boolean writeCreatingDeployment( final Partition partition, final long key, final UnpackedObject event) { final RecordType recordType = RecordType.COMMAND; final ValueType valueType = ValueType.DEPLOYMENT; final Intent intent = DeploymentIntent.CREATE; logStreamWriter.wrap(partition.getLogStream()); recordMetadata.reset().recordType(recordType).valueType(valueType).intent(intent); final long position = logStreamWriter.key(key).metadataWriter(recordMetadata).valueWriter(event).tryWrite(); return position > 0; } }
private boolean writeCommand( int partitionId, ValueType valueType, Intent intent, UnpackedObject command) { final Partition partition = leaderPartitions.get(partitionId); if (partition == null) { // ignore message if you are not the leader of the partition return true; } logStreamWriter.wrap(partition.getLogStream()); recordMetadata.reset().recordType(RecordType.COMMAND).valueType(valueType).intent(intent); final long position = logStreamWriter .positionAsKey() .metadataWriter(recordMetadata) .valueWriter(command) .tryWrite(); return position > 0; } }
private boolean writeCommand( int partitionId, ValueType valueType, Intent intent, UnpackedObject command) { final Partition partition = leaderPartitions.get(partitionId); if (partition == null) { // ignore message if you are not the leader of the partition return true; } logStreamWriter.wrap(partition.getLogStream()); recordMetadata.reset().recordType(RecordType.COMMAND).valueType(valueType).intent(intent); final long position = logStreamWriter .positionAsKey() .metadataWriter(recordMetadata) .valueWriter(command) .tryWrite(); return position > 0; } }
public long write() { final LogStreamRecordWriter writer = new LogStreamWriterImpl(logStream); if (key >= 0) { writer.key(key); } else { writer.positionAsKey(); } writer.metadataWriter(metadata); writer.valueWriter(value); return doRepeatedly(() -> writer.tryWrite()).until(p -> p >= 0); } }
public long write() { final LogStreamRecordWriter writer = new LogStreamWriterImpl(logStream); if (key >= 0) { writer.key(key); } else { writer.positionAsKey(); } writer.metadataWriter(metadata); writer.valueWriter(value); return doRepeatedly(() -> writer.tryWrite()).until(p -> p >= 0); } }
public long tryWrite(final Raft raft) { logStreamWriter.wrap(raft.getLogStream()); metadata.reset().valueType(ValueType.RAFT).recordType(RecordType.EVENT).intent(intent); configuration.reset(); final ValueArray<RaftConfigurationEventMember> configurationMembers = configuration.members(); // add self also to configuration configurationMembers.add().setNodeId(raft.getNodeId()); final List<RaftMember> memberList = raft.getRaftMembers().getMemberList(); for (final RaftMember member : memberList) { configurationMembers.add().setNodeId(member.getNodeId()); } return logStreamWriter .positionAsKey() .metadataWriter(metadata) .valueWriter(configuration) .tryWrite(); } }
public long tryWrite(final Raft raft) { logStreamWriter.wrap(raft.getLogStream()); metadata.reset().valueType(ValueType.RAFT).recordType(RecordType.EVENT).intent(intent); configuration.reset(); final ValueArray<RaftConfigurationEventMember> configurationMembers = configuration.members(); // add self also to configuration configurationMembers.add().setNodeId(raft.getNodeId()); final List<RaftMember> memberList = raft.getRaftMembers().getMemberList(); for (final RaftMember member : memberList) { configurationMembers.add().setNodeId(member.getNodeId()); } return logStreamWriter .positionAsKey() .metadataWriter(metadata) .valueWriter(configuration) .tryWrite(); } }
.valueWriter(deploymentRecord) .metadataWriter(recordMetadata) .tryWrite(); if (position < 0) { actor.yield();
.valueWriter(deploymentRecord) .metadataWriter(recordMetadata) .tryWrite(); if (position < 0) { actor.yield();
.metadataWriter(eventMetadata) .value(buffer, eventOffset, eventLength) .tryWrite();
.metadataWriter(eventMetadata) .value(buffer, eventOffset, eventLength) .tryWrite();