DurableFileStorageBackend class final
Read/write access to an EXISTING, durably provisioned regular file.
Caller must attest directory-entry durability, exclude other processes and renames/removals, and keep database/journal as distinct files. This adapter never creates/replaces/deletes files and cannot provision their directory entries. FileMode.append permits random positioning without initial truncate.
- Implemented types
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
-
close(
) → Future< void> -
override
-
flushSync(
) → void -
override
-
length(
) → Future< int> -
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
read(
int offset, Uint8List buffer) → Future< int> -
override
-
sync(
) → Future< void> -
override
-
toString(
) → String -
A string representation of this object.
inherited
-
truncate(
int size) → Future< void> -
override
-
truncateAtSync(
int size) → void -
override
-
write(
int offset, Uint8List bytes) → Future< void> -
override
-
writeAtSync(
int offset, Uint8List bytes) → void -
Same-isolate commit path. The pager calls these in one straight-line
sequence so a file statement does not pay an event-loop turn per syscall.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
openExclusive(
String path, {required bool directoryEntryIsDurable}) → Future< DurableFileStorageBackend> - Exclusive SQLite lock-byte-range lease for a single owning Dart isolate. On POSIX, ANY other descriptor close can drop process locks, and other isolates can obtain overlapping locks. All handles in a process must be coordinated by one owner; this is not a general cross-isolate lock manager.
-
openExisting(
String path, {required bool directoryEntryIsDurable}) → Future< DurableFileStorageBackend>