Skip to content
Snippets Groups Projects
Commit d7b8dad6 authored by Josh Brooks's avatar Josh Brooks
Browse files

Use groupChat tracker better

parent 9fa3de6a
Branches
Tags
2 merge requests!510Release,!315Hotfix/bindings updates
...@@ -98,15 +98,18 @@ type GroupRequest interface { ...@@ -98,15 +98,18 @@ type GroupRequest interface {
Callback(payload []byte) Callback(payload []byte)
} }
// NewManager creates a bindings-layer group chat manager. // LoadOrNewManager creates a bindings-layer group chat manager.
// //
// Parameters: // Parameters:
// - e2eID - e2e object ID in the tracker. // - e2eID - e2e object ID in the tracker.
// - groupID - GroupChat object ID in the tracker, given from previous call to LoadOrNewManager.
// - requestFunc - a callback to handle group chat requests. // - requestFunc - a callback to handle group chat requests.
// - processor - the group chat message processor. // - processor - the group chat message processor.
func NewManager(e2eID int, requestFunc GroupRequest, func LoadOrNewManager(e2eID, groupID int, requestFunc GroupRequest,
processor GroupChatProcessor) (*GroupChat, error) { processor GroupChatProcessor) (*GroupChat, error) {
// Retrieve from singleton
groupChat, err := groupChatTrackerSingleton.get(groupID)
if err != nil { // If not present, create/load group chat manager
// Get user from singleton // Get user from singleton
user, err := e2eTrackerSingleton.get(e2eID) user, err := e2eTrackerSingleton.get(e2eID)
if err != nil { if err != nil {
...@@ -130,6 +133,9 @@ func NewManager(e2eID int, requestFunc GroupRequest, ...@@ -130,6 +133,9 @@ func NewManager(e2eID int, requestFunc GroupRequest,
// Construct wrapper // Construct wrapper
return groupChatTrackerSingleton.make(gcInt), nil return groupChatTrackerSingleton.make(gcInt), nil
}
return groupChat, nil
} }
// GetID returns the groupChatTracker ID for the GroupChat object. // GetID returns the groupChatTracker ID for the GroupChat object.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment