Something I forgot to mention are other easier alternatives to
associating user data with a particular searcher.

For example, MyData (in your case Map<FieldName,Terms>) could simply
be the single item in a solr user cache.  Another option is like how
Lucene caches FilteredQuery (basically a
WeakHashMap<SolrIndexSearcher,MyStuff>)

In either case, no regenerators or custom listeners are needed... just
configure a request to be sent to your plugin on both firstSearcher
and newSearcher events, and program your plugin to regenerate MyStuff
if it's not in the cache.

-Yonik

Reply via email to