interfaces library
Moved to package:peer_coordinator/interfaces.dart.
Re-exported so existing imports keep working; prefer importing from
package:peer_coordinator directly in new code.
Classes
- IConfig
- Interface for configuration classes.
-
IConfigFactory<
T extends IConfig> - Factory interface for creating configurations.
-
IConfigurable<
T extends IConfig> - Interface for classes that can be configured with an IConfig implementation.
- IHasMetadata
- IIdentity
- Basic identity interface
- IInitializable
- Interface for classes that can be initialized.
- IJoinable
- Interface for classes that can join and leave.
- ILifecycle
- Interface for managing the lifecycle of an object.
-
IMessage<
T extends IMessageType> - Interface representing a message with a specific type and associated data.
-
IMessageType<
T> - Interface representing a message type with specific data characteristics.
- IPausable
- Interface for classes that can be paused and resumed.
- IResource
- IResourceManager
- ISerializable
- ITimestamped
- Interface for classes that have a timestamp.
- IUniqueIdentity
- Interface for classes that have a globally unique identity.
- ManagedResource
- A resource with a create/dispose lifecycle and single-owner semantics.
- Uuid
- uuid for Dart Author: Yulian Kuncheff Released under MIT License.
- UuidValue
Enums
- Namespace
- RFC4122 & RFC9562 provided namespaces for v3, v5, and v8 namespace based UUIDs
- ValidationMode
- The options for UUID Validation strictness
Mixins
- InstanceUID
- Mixin for per-instance unique IDs
- RuntimeTypeUID
- Mixin that provides automatic unique ID generation based on the runtime type.
Functions
-
generateUid(
) → String - The default function to generate a unique ID. Uses the Uuid package to generate a version 4 UUID. This is a convenience function and Uuid is re-exported for direct use if needed.
-
resolveManagerUpdate(
{required IResourceManager? current, required IResourceManager? next, required bool disposed}) → IResourceManager? - Applies the single-owner rule for IResource.updateManager and returns the manager the resource should now hold.