CloudSyncService class

Service for syncing logs to a cloud backend.

Extends BaseSyncService from voo_core to reuse common batching, retry, and HTTP logic. Adds logging-specific features:

  • Priority queue for error/fatal logs
  • Minimum level filtering
  • Immediate flush for priority items

Constructors

CloudSyncService({required CloudSyncConfig config, Client? client})

Properties

config → BaseSyncConfig
Configuration for the sync service.
finalinherited
consecutiveFailures → int
Number of consecutive sync failures.
no setterinherited
endpoint → String
The endpoint URL for syncing items. Subclasses must implement this to return the appropriate endpoint.
no setter
hashCode → int
The hash code for this object.
no setterinherited
onError ↔ void Function(String error, int retryCount)?
Callback for sync errors.
getter/setter pairinherited
onStatusChanged ↔ void Function(SyncStatus)?
Legacy callback for sync status changes.
getter/setter pair
pendingCount → int
Get the current queue size (includes priority queue).
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
serviceName → String
Name of this service (for debug logging).
finalinherited
status → SyncStatus
Current sync status.
no setterinherited
syncStatus → CloudSyncStatus
Get the current sync status. Returns CloudSyncStatus for backwards compatibility.
no setter

Methods

dispose() → void
Dispose resources.
flush() → Future<bool>
Manually trigger a sync of all pending items.
formatPayload(List<LogEntry> logs) → Map<String, dynamic>
Formats items into a JSON payload for the API. Subclasses must implement this to format their specific item types.
initialize() → void
Initialize the sync service and start the batch timer.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
queueItem(LogEntry item) → void
Queue an item for syncing.
inherited
queueItems(Iterable<LogEntry> items) → void
Queue multiple items at once.
inherited
queueLog(LogEntry log) → void
Queue a log entry for syncing. Maintains backwards compatibility with original API.
shouldFlushImmediately(LogEntry log) → bool
Optional: Check if an item should trigger immediate flush. Return true for high-priority items (e.g., errors).
shouldQueueItem(LogEntry log) → bool
Optional: Filter items before adding to the queue. Return true to include the item, false to skip it.
toString() → String
A string representation of this object.
inherited

Operators

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