DocumentHandler class

Store Document Access (SDA) - Client-side protocol methods

Provides static methods for clients to interact with SDA servers for document GET, PUT, PATCH, HEAD, DELETE, LIST, and DIRECTORY operations.

Constructors

DocumentHandler()

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

browseDirectory(P2PStream stream, {required PeerId ownerPeerId, String? cursor, int limit = 20, String? search}) → Future<DocumentFrameResponse>
Browse server directory (client-side)
deleteDocument(P2PStream stream, {required PeerId ownerPeerId, required String path, String? ifMatch}) → Future<DocumentFrameResponse>
Delete a document (client-side)
getDocument(P2PStream stream, {required PeerId ownerPeerId, required String path, String? ifNoneMatch}) → Future<DocumentFrameResponse>
Get a document (client-side)
getDocumentHistory(P2PStream stream, {required PeerId ownerPeerId, required String path, int? maxVersions}) → Future<DocumentFrameResponse>
List a document's kept versions, newest first, with sizes but not bodies (client-side HISTORY). The body is a JSON array.
getDocumentVersion(P2PStream stream, {required PeerId ownerPeerId, required String path, required int versionNumber}) → Future<DocumentFrameResponse>
Fetch one kept version of a document with its body (client-side HISTORY with a version number).
headDocument(P2PStream stream, {required PeerId ownerPeerId, required String path}) → Future<DocumentFrameResponse>
Head a document (client-side)
joinDirectory(P2PStream stream, {required PeerId ownerPeerId, required String displayName, String? bio, String? avatarHash, Map<String, dynamic>? extras}) → Future<DocumentFrameResponse>
Join server directory (client-side)
leaveDirectory(P2PStream stream, {required PeerId ownerPeerId}) → Future<DocumentFrameResponse>
Leave server directory (client-side)
listDocuments(P2PStream stream, {required PeerId ownerPeerId, String pathPrefix = ''}) → Future<DocumentFrameResponse>
List documents (client-side)
patchDocument(P2PStream stream, {required PeerId ownerPeerId, required String path, required Map<String, dynamic> patch, String? ifMatch}) → Future<DocumentFrameResponse>
Patch a document (client-side) using JSON Merge Patch
putDocument(P2PStream stream, {required PeerId ownerPeerId, required String path, required Uint8List content, String contentType = 'application/json', String? ifMatch, DocumentVisibility? visibility, int? history}) → Future<DocumentFrameResponse>
Put a document (client-side)
restoreDocumentVersion(P2PStream stream, {required PeerId ownerPeerId, required String path, required int versionNumber, String? ifMatch}) → Future<DocumentFrameResponse>
Make a kept version current again, as a new version (client-side RESTORE). Owner only; ifMatch makes it conditional.
setDocumentVisibility(P2PStream stream, {required PeerId ownerPeerId, required String path, required DocumentVisibility visibility}) → Future<DocumentFrameResponse>
Set who may read a document (client-side ACCESS with action "set").

Constants

protocolId → const String