/** * Deletes all privacy lists of a user. This may be necessary when a user is being deleted from * the system. * * @param username the username of the list owner. */ public void deletePrivacyLists(String username) { for (String listName : provider.getPrivacyLists(username).keySet()) { // Remove the list from the cache listsCache.remove(getCacheKey(username, listName)); // Trigger event that a privacy list is being deleted for (PrivacyListEventListener listener : listeners) { listener.privacyListDeleting(listName); } } // Delete user privacy lists from the DB provider.deletePrivacyLists(username); }
/** * Deletes an existing privacy list of a user. If the privacy list being deleted was the default * list then the user will end up with no default list. Therefore, the user will have to set a new * default list. * * @param username the username of the list owner. * @param listName the name of the list being deleted. */ public void deletePrivacyList(String username, String listName) { // Trigger event that a privacy list is being deleted for (PrivacyListEventListener listener : listeners) { listener.privacyListDeleting(listName); } // Remove the list from the cache listsCache.remove(getCacheKey(username, listName)); // Delete the privacy list from the DB provider.deletePrivacyList(username, listName); // Check if deleted list was the default list PrivacyList defaultList = listsCache.get(getDefaultCacheKey(username)); if (defaultList != null && listName.equals(defaultList.getName())) { listsCache.remove(getDefaultCacheKey(username)); } }