[
https://issues.apache.org/jira/browse/SHIRO-455?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thibault Tigeon updated SHIRO-455:
----------------------------------
Attachment: shiro-core.patch
> Allowing to cache WildcarPermission in WildcardPermissionResolver class
> -----------------------------------------------------------------------
>
> Key: SHIRO-455
> URL: https://issues.apache.org/jira/browse/SHIRO-455
> Project: Shiro
> Issue Type: Improvement
> Components: Authorization (access control) , Caching
> Affects Versions: 1.2.1, 1.2.2
> Reporter: Thibault Tigeon
> Labels: features, patch
> Attachments: shiro-core.patch
>
>
> Hello,
> I am benching Shiro, tahnks this method:
> public void bench() {
> final Subject subject = SecurityUtils.getSubject();
> subject.login(new UsernamePasswordToken(LOGIN+i, PWD));
> for (int ind = 0; ind < 100000; ind++) { // a lot of authorizations
> assertTrue(subject.isPermitted("medias:album:read"));
> }
> subject.logout();
> }
> I see that I waste my time in the methode WildCardPermissionResolver which
> create a new instance of permission each time even if it is the same String
> in parameter.
> I added a map which allows to cache WildcardPermission.
> You can find in attachement the patch.
> PS : the cache for authorisation is activated:
> cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
> securityManager.cacheManager = $cacheManager
> Regards,
> Thibault
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira