static void writePayload(final BsonWriter writer, final BsonOutput bsonOutput, final MessageSettings settings, final int messageStartPosition, final SplittablePayload payload) { MessageSettings payloadSettings = getPayloadMessageSettings(payload.getPayloadType(), settings); for (int i = 0; i < payload.getPayload().size(); i++) { if (writeDocument(writer, bsonOutput, payloadSettings, payload.getPayload().get(i), messageStartPosition, i + 1)) { payload.setPosition(i + 1); } else { break; } } if (payload.getPosition() == 0) { throw new BsonMaximumSizeExceededException(format("Payload document size is larger than maximum of %d.", payloadSettings.getMaxDocumentSize())); } }
public BulkWriteBatch getNextBatch() { if (payload.hasAnotherSplit()) { IndexMap nextIndexMap = IndexMap.create(); int newIndex = 0; for (int i = payload.getPosition(); i < payload.getPayload().size(); i++) { nextIndexMap = nextIndexMap.add(newIndex, indexMap.map(i)); newIndex++; } return new BulkWriteBatch(namespace, connectionDescription, ordered, writeConcern, bypassDocumentValidation, retryWrites, bulkWriteBatchCombiner, nextIndexMap, batchType, command, payload.getNextSplit(), unprocessed, sessionContext); } else { return new BulkWriteBatch(namespace, connectionDescription, ordered, writeConcern, bypassDocumentValidation, retryWrites, bulkWriteBatchCombiner, unprocessed, sessionContext); } }
static void writePayload(final BsonWriter writer, final BsonOutput bsonOutput, final MessageSettings settings, final int messageStartPosition, final SplittablePayload payload) { MessageSettings payloadSettings = getPayloadMessageSettings(payload.getPayloadType(), settings); for (int i = 0; i < payload.getPayload().size(); i++) { if (writeDocument(writer, bsonOutput, payloadSettings, payload.getPayload().get(i), messageStartPosition, i + 1)) { payload.setPosition(i + 1); } else { break; } } if (payload.getPosition() == 0) { throw new BsonMaximumSizeExceededException(format("Payload document size is larger than maximum of %d.", payloadSettings.getMaxDocumentSize())); } }
public BulkWriteBatch getNextBatch() { if (payload.hasAnotherSplit()) { IndexMap nextIndexMap = IndexMap.create(); int newIndex = 0; for (int i = payload.getPosition(); i < payload.getPayload().size(); i++) { nextIndexMap = nextIndexMap.add(newIndex, indexMap.map(i)); newIndex++; } return new BulkWriteBatch(namespace, connectionDescription, ordered, writeConcern, bypassDocumentValidation, retryWrites, bulkWriteBatchCombiner, nextIndexMap, batchType, command, payload.getNextSplit(), unprocessed, sessionContext); } else { return new BulkWriteBatch(namespace, connectionDescription, ordered, writeConcern, bypassDocumentValidation, retryWrites, bulkWriteBatchCombiner, unprocessed, sessionContext); } }