[
https://issues.apache.org/jira/browse/SLING-5741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ankit Agarwal updated SLING-5741:
---------------------------------
Affects Version/s: i18n 2.4.6
> discarding complete ResourceBundleCache in case of JSON dictionary
> ------------------------------------------------------------------
>
> Key: SLING-5741
> URL: https://issues.apache.org/jira/browse/SLING-5741
> Project: Sling
> Issue Type: Bug
> Components: Extensions
> Affects Versions: i18n 2.4.6
> Reporter: Ankit Agarwal
>
> In case user is using JSON dictionary then condition mentioned here
> https://github.com/apache/sling/blob/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java#L198
> will becomes true for any change in languagerootpaths which are cached. And
> this will discard complete resource bundle cache. which is different if user
> is using sling:Message dictionary.
> for example user has json dictionary at path
> "/libs/test/i18n/de.json"
> and also resource bundle for language "de" is cached so ,
> "libs/test/i18n/de.json" will be in languageRootPaths.
> So any change at "/libs/test/i18n/de.json" will discard complete
> resourcebundleCache.
> Where as in case of sling:dictionary
> languageRootPath will be like "/libs/test/i18n/de"
> and any change in this dictionary will have path like this
> "/libs/test/i18n/de/testMessage" so condition becomes false and complete
> resourcebundleCache. will not be discarded.
> Can we improve this, like if condition becomes true, than check among the
> cached resourceBundle to which resourceBundle this path belongs to and than
> discarding that resourceBundle. and if this resourceBundle is parent of any
> ResourceBundle then discard that too.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)