I'm, of course, in favor.
-- Blake Sullivan
Gabrielle Crawford wrote:
Hi,
In case anyone filtered away the [jira] message.....
I'd like to add the method described below to the requestContext.
Comments? Objections?
Thanks,
Gab
-------- Original Message --------
add method to get an application scoped concurrentMap to RequestContext
-----------------------------------------------------------------------
Key: TRINIDAD-926
URL: https://issues.apache.org/jira/browse/TRINIDAD-926
Project: MyFaces Trinidad
Issue Type: Improvement
Affects Versions: 1.2.5-core, 1.0.5-core
Reporter: Gabrielle Crawford
Assignee: Gabrielle Crawford
Priority: Minor
This started with Trin Issue 891
https://issues.apache.org/jira/browse/TRINIDAD-891
To avoid the locking in the class loader we'd like to store a map of
name->class per app. However the external context app map calls
through to the ServletContext. The Servlet specification doesn't
specify whether the ServletContext performs any locking on the
ServletContext attributes and the ServletContext doesn't expose the
necessary methods for efficient concurrent access (essentially the
operations exposed on ConcurrentMap) necessary to work efficiently in
many cases even if the ServletContext didn't need to perform locking
on reads. The result is that the ExternalContext's ApplicationMap
can't implement ConcurrentMap.
We'd like to add a method to the RequestContext to get an application
scoped concurrent map. This would not call through to the servlet
context. The api proposed is this:
/**
* Gets a per application concurrent map. There is no synchronization
* with ServletContext attributes.
*/
public abstract ConcurrentMap<String, Object>
getApplicationScopedConcurrentMap();