[ https://issues.apache.org/jira/browse/COLLECTIONS-786?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marko Pohajač updated COLLECTIONS-786: -------------------------------------- Attachment: fix_doc.diff > PassiveExpiringMap documentation - methods that involve accessing the entire > map > -------------------------------------------------------------------------------- > > Key: COLLECTIONS-786 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-786 > Project: Commons Collections > Issue Type: Improvement > Components: Map > Affects Versions: 4.4 > Reporter: Marko Pohajač > Priority: Minor > Fix For: 4.5 > > Attachments: fix_doc.diff, > show_effect_of_containsKey_containsValue_on_expiration.diff > > > The documentation for PassiveExpiringMap says: > {quote}When invoking methods that involve accessing the entire map contents > (i.e > [{{containsKey(Object)}}|https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/map/PassiveExpiringMap.html#containsKey-java.lang.Object-], > > [{{entrySet()}}|https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/map/PassiveExpiringMap.html#entrySet--], > etc.) this decorator removes all expired entries prior to actually > completing the invocation. > {quote} > > Checked the code for containsKey and it doesn't seem to access the entire > map, only the element of the key. If not sure about this, please check the > attached patch as a proof. > Suggestion is to replace the example with containsValue(Object) or size() or > something that does remove all expired entries prior to actually completing > the invocation: > {quote}When invoking methods that involve accessing the entire map contents > (i.e > [{{containsValue(Object)}}|https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/map/PassiveExpiringMap.html#containsValue-java.lang.Object-], > > [{{entrySet()}}|https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/map/PassiveExpiringMap.html#entrySet--], > etc.) this decorator removes all expired entries prior to actually > completing the invocation. > {quote} -- This message was sent by Atlassian Jira (v8.3.4#803005)