Person Migration Module
Handles the migration of persons between groups and management of group membership trees.
This module manages the complex relationships between persons and groups, including:
- Adding persons to group hierarchies
- Migrating persons between groups
- Managing guest memberships
- Publishing migration events
- Handling temporal data with timestamps
- Source:
Members
(static, constant) addGuest
Adds a guest to group hierarchy
Similar to addToTree but specifically for guest members. Guests belong to a person
(UIDBelongsTo) and need to be added to all groups that person belongs to.
- Source:
(static, constant) addToTree
Adds a person to a group hierarchy tree
When a person is added to a group, they automatically become members of all parent
groups in the hierarchy. This function handles that propagation.
- Source:
(static, constant) migratePerson
Migrates a person from one group to another, managing all membership links
Handles the complete migration process including:
- Removing old group memberships
- Adding new group memberships
- Publishing migration events (exit/add)
- Updating WebSocket clients
The event messaging will be done in the trriggerQueue function after the migration is processed.
- Source:
(static, constant) removeFromTree
Removes a person from a group hierarchy tree
Removes all membership links for a person from groups.
- Source:
(static, constant) timestampCheck
Checks and adjusts timestamp to ensure it's not before the last change
- Source: