You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Gabrielle Crawford (JIRA)" <de...@myfaces.apache.org> on 2008/01/29 01:47:35 UTC

[jira] Created: (TRINIDAD-926) add method to get an application scoped concurrentMap to RequestContext

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();  



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (TRINIDAD-926) add method to get an application scoped concurrentMap to RequestContext

Posted by "Gabrielle Crawford (JIRA)" <de...@myfaces.apache.org>.
     [ https://issues.apache.org/jira/browse/TRINIDAD-926?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gabrielle Crawford resolved TRINIDAD-926.
-----------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.2.6-core

added api as described

> 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.0.5-core, 1.2.5-core
>            Reporter: Gabrielle Crawford
>            Assignee: Gabrielle Crawford
>            Priority: Minor
>             Fix For: 1.2.6-core
>
>
> 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();  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.