LocalitySocialCloudInterface class

A unified facade class acting as the primary, centralized entry point for accessing all Locality Social Cloud services, including secure chat/messaging, cloud calendar management, and friend list operations.

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

getMediaPubSub(String fileTopic) → MediaPubSub
Used to track metadata of file upload, like file upload progress.
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

getArtistCalendarOf(String artistId, {ChaCha20Key? chaChaKey, String? shardKey}) → Future<CloudCalendar>
Opens and supervises a public calendar channel hosted by a specific artist, broadcasting tours, performances, and public schedules.
getCommonTopicForUsers(PublicUser userA, PublicUser userB) → String
Computes a deterministic, sorted common topic string for direct messages between two users to ensure both participants connect to the exact same channel.
getFriendListOfUser(PublicUser receivingUser) → Future<FriendList>
Retrieves the friend list instance for a specific user, ensuring that multiple redundant FriendList instances are not instantiated for the same topic channel.
getGroupChat(GroupChatInvitation groupChatInvite, ChatMessageFactory chatMessageFactory) → Future<MessagingTopic>
Initializes and supervises a group chat messaging topic using the provided group chat invitation details and decryption key.
getKeyExchangeLobby(String topic) → Future<KeyExchangeLobby>
Opens and supervises a key exchange lobby topic to facilitate secure initial key establishment between peers.
getPrivateCalendarOf(AuthenticatedSessionUser authenticatedSessionUser, {ChaCha20Key? chaChaKey, String? shardKey}) → Future<CloudCalendar>
Opens and supervises the private calendar channel for an authenticated session user, intended for personal appointments and sensitive schedules.
getPublicCalendarOf(AuthenticatedSessionUser authenticatedSessionUser, {ChaCha20Key? chaChaKey, String? shardKey}) → Future<CloudCalendar>
Opens and supervises the public calendar channel for an authenticated session user, supporting optional sharding and end-to-end encryption.
getSubscribedTopic(TopicSubscription subscription, ChatMessageFactory chatMessageFactory) → Future<MessagingTopic>
Retrieves or creates a supervised messaging topic based on a given topic subscription and applies the corresponding decryption key.
getTopicOfFriendListOfUser(String userId) → String
Computes a hashed, unique topic string for a user's friend list channel using the user identifier and internal security salt.
getUserChat(AuthenticatedSessionUser loggedInUser, PublicUser publicUser, ChatMessageFactory chatMessageFactory) → Future<MessagingTopic>
Retrieves or establishes a direct peer-to-peer user chat channel, handling cached encryption key lookups or computing new shared keys via isolate when necessary.
getUserMessageTopicSubscriptions({required AuthenticatedSessionUser user, String? subTopic, ChaCha20Key? chaChaKey}) → Future<MessagingSubscriptions>
Automatically initializes and supervises the user's personal messaging topic subscriptions channel through the Locality Social Cloud framework.
getVenueCalendarOf(String venueId, {ChaCha20Key? chaChaKey, String? shardKey}) → Future<CloudCalendar>
Opens and supervises a public calendar channel hosted by a specific event venue, broadcasting venue events and schedules.
sendFriendRequest(PublicUser fromUser, PublicUser toUser) → Future<void>
Sends a friend request from a source user to a target user by interacting with both participants' supervised friend list channels.
setKeyCache(File cache) → void
Sets the secure local key-value storage file used for caching encryption keys for messaging and reads existing cached data from the source file.