toMultipartFileChunked method

MultipartFile toMultipartFileChunked(
  1. int start,
  2. int end
)

Convert to multipart with chunked upload

Implementation

MultipartFile toMultipartFileChunked(
  int start,
  int end,
) {
  assert(
    !fromExternalUrl,
    'toMultipartFileChunked() not available when uploading from external urls',
  );
  Stream<List<int>> chunkStream;

  if (byteData != null) {
    chunkStream = Stream.fromIterable(
      [byteData!.buffer.asUint8List(start, end - start)],
    );
  } else if (bytesData != null) {
    chunkStream = Stream.fromIterable(
      [bytesData!.sublist(start, end)],
    );
  } else {
    chunkStream = File(filePath!).openRead(start, end);
  }

  return MultipartFile.fromStream(
    () => chunkStream,
    end - start,
    filename: identifier,
  );
}