This repository has been archived by the owner on Jan 21, 2024. It is now read-only.
Bugfix so that you can clear a single Cache entry in userBean / peopleBean #78
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Due to incorrect logic it was impossible to clear the cache / refresh for a single entry in the cache.
For example when using the userBean / peopleBean, if you tried to use peopleBean.clearCache(@UserName) it had no effect.
e.g. this was annoying if you added some accessRoles to user and just wanted to refresh that user's peopleBean entry.
As specified in this StackOverflow question
This is because of 3 bugs in the clearCache method
Note: the clearCache() method to clear the entire cache was working correctly, however I think this must have been copy/pasted to the clearCache(String) method and not correctly tidied up
Note I changed the synchronized statement to synchronize on the systemcache instead of the scope map. I assume this is correct but I am no expert on concurrency!