[ https://issues.apache.org/jira/browse/GROOVY-8410?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Sun updated GROOVY-8410: ------------------------------- Description: There are many cache implementation in Groovy, many of them are duplicated(e.g. cache algorithm, the code of implementation...). That is to say, Groovy is lack of a common cache. The common cache should: 1) be thread safe 2) achieve basic cache function(manage keys and values, LRU, etc.) 3) can specify the map that the cache is based on(Maybe we need WeakHashMap or other Map instance sometimes) Here is the implementation of the common cache: https://github.com/apache/groovy/blob/master/src/main/org/codehaus/groovy/runtime/memoize/CommonCache.java was: There are many cache implementation in Groovy, many of them are duplicated(e.g. cache algorithm, the code of implementation...). That is to say, Groovy is lack of a common cache. The common cache should: 1) be thread safe 2) achieve basic cache function(manage keys and values, LRU, etc.) 3) can specify the map that the cache is based on(Maybe we need WeakHashMap sometimes) Here is the implementation of the common cache: https://github.com/apache/groovy/blob/master/src/main/org/codehaus/groovy/runtime/memoize/CommonCache.java > Provide a common cache > ---------------------- > > Key: GROOVY-8410 > URL: https://issues.apache.org/jira/browse/GROOVY-8410 > Project: Groovy > Issue Type: Improvement > Affects Versions: 3.0.0-alpha-1, 2.5.0-beta-2, 2.4.13, 2.6.0-alpha-2 > Reporter: Daniel Sun > Assignee: Daniel Sun > Fix For: 2.5.0-beta-3, 2.6.0-alpha-3, 3.0.0-alpha-2 > > > There are many cache implementation in Groovy, many of them are > duplicated(e.g. cache algorithm, the code of implementation...). That is to > say, Groovy is lack of a common cache. > The common cache should: > 1) be thread safe > 2) achieve basic cache function(manage keys and values, LRU, etc.) > 3) can specify the map that the cache is based on(Maybe we need WeakHashMap > or other Map instance sometimes) > Here is the implementation of the common cache: > https://github.com/apache/groovy/blob/master/src/main/org/codehaus/groovy/runtime/memoize/CommonCache.java -- This message was sent by Atlassian JIRA (v6.4.14#64029)