getDocumentVersion method

Future<DocumentVersionInfo?> getDocumentVersion({
  1. required PeerId ownerPeerId,
  2. required String path,
  3. required int versionNumber,
  4. PeerId? fromServer,
})

One kept version of a document with its body. Null if it is not kept or the request failed.

Implementation

Future<DocumentVersionInfo?> getDocumentVersion({
  required PeerId ownerPeerId,
  required String path,
  required int versionNumber,
  PeerId? fromServer,
}) async {
  final response = await _documentCall(
    fromServer,
    'HISTORY',
    (stream) => DocumentHandler.getDocumentVersion(stream,
        ownerPeerId: ownerPeerId, path: path, versionNumber: versionNumber),
  );
  if (response == null || response.status != 200) return null;
  final content = response.body ?? Uint8List(0);
  return DocumentVersionInfo(
    versionNumber: response.version ?? versionNumber,
    contentHash: response.etag ?? '',
    contentType: response.contentType ?? '',
    createdAt: (response.headers['Created-At'] as num?)?.toInt() ?? 0,
    size: content.length,
    content: content,
  );
}