Interface PermissionStorage
public interface PermissionStorage
Interface defining the contract for permission data persistence.
-
Method Summary
Modifier and TypeMethodDescriptionvoiddeleteGroup(String id) Deletes a group synchronously.voidDeletes a group asynchronously.Gets a map of all known user UUIDs and names.getUuidFromName(String name) Resolves a UUID from a stored username.voidinit()Initializes the storage backend (e.g., database connection).voidLoads all defined groups into memory.Loads a specific user from storage.voidsaveGroup(PermissionGroup group) Saves a group synchronously.voidsaveGroupAsync(PermissionGroup group) Saves a group asynchronously.voidsaveUser(PermissionUser user) Saves a user synchronously.voidsaveUserAsync(PermissionUser user) Saves a user asynchronously.voidshutdown()Closes the storage backend.
-
Method Details
-
init
void init()Initializes the storage backend (e.g., database connection). -
loadGroups
void loadGroups()Loads all defined groups into memory. -
loadUser
Loads a specific user from storage.- Parameters:
uuid- TheUUIDof the user.- Returns:
- The loaded
PermissionUser.
-
getUuidFromName
-
getKnownUsers
-
saveGroup
Saves a group synchronously.- Parameters:
group- The group to save.
-
saveUser
-
saveGroupAsync
Saves a group asynchronously.- Parameters:
group- The group to save.
-
saveUserAsync
Saves a user asynchronously.- Parameters:
user- The user to save.
-
deleteGroup
-
deleteGroupAsync
Deletes a group asynchronously.- Parameters:
id- The ID of the group.
-
shutdown
void shutdown()Closes the storage backend.
-