recordSetWriter.writeRecord(msgBuf, writeFuture); writeFutures.add(writeFuture);
public synchronized Future<DLSN> write(ByteBuffer buffer) { int logRecordSize = buffer.remaining(); if (logRecordSize > MAX_LOGRECORD_SIZE) { return Future.exception(new LogRecordTooLongException( "Log record of size " + logRecordSize + " written when only " + MAX_LOGRECORD_SIZE + " is allowed")); } // if exceed max number of bytes if ((recordSetWriter.getNumBytes() + logRecordSize) > MAX_LOGRECORDSET_SIZE) { flush(); } Promise<DLSN> writePromise = new Promise<DLSN>(); try { recordSetWriter.writeRecord(buffer, writePromise); } catch (LogRecordTooLongException e) { return Future.exception(e); } catch (WriteException e) { recordSetWriter.abortTransmit(e); recordSetWriter = newRecordSetWriter(); return Future.exception(e); } if (recordSetWriter.getNumBytes() >= bufferSize) { flush(); } return writePromise; }
ByteBuffer record = ByteBuffer.wrap(("record-" + (i + 5)).getBytes(UTF_8)); Promise<DLSN> writePromise = new Promise<DLSN>(); recordSetWriter.writeRecord(record, writePromise); recordSetPromiseList.add(writePromise); assertEquals((i + 1) + " records", (i + 1), recordSetWriter.getNumRecords());
public synchronized Future<DLSN> write(ByteBuffer buffer) { int logRecordSize = buffer.remaining(); if (logRecordSize > MAX_LOGRECORD_SIZE) { return Future.exception(new LogRecordTooLongException( "Log record of size " + logRecordSize + " written when only " + MAX_LOGRECORD_SIZE + " is allowed")); } // if exceed max number of bytes if ((recordSetWriter.getNumBytes() + logRecordSize) > MAX_LOGRECORDSET_SIZE) { flush(); } Promise<DLSN> writePromise = new Promise<DLSN>(); try { recordSetWriter.writeRecord(buffer, writePromise); } catch (LogRecordTooLongException e) { return Future.exception(e); } catch (WriteException e) { recordSetWriter.abortTransmit(e); recordSetWriter = newRecordSetWriter(); return Future.exception(e); } if (recordSetWriter.getNumBytes() >= bufferSize) { flush(); } return writePromise; }
LogRecord record = DLMTestUtil.getLogRecordInstance(6L + i); Promise<DLSN> writePromise = new Promise<DLSN>(); recordSetWriter.writeRecord(ByteBuffer.wrap(record.getPayload()), writePromise); recordSetFutures.add(writePromise);