Remove some synchronization on CachingNamespaceResolver
-------------------------------------------------------

                 Key: JCR-685
                 URL: http://issues.apache.org/jira/browse/JCR-685
             Project: Jackrabbit
          Issue Type: Improvement
    Affects Versions: 1.1.1, 1.1
            Reporter: Marcel Reutegger
            Priority: Minor
             Fix For: 1.2


The methods getQName() and getJCRName() are unnecessarily synchronized and 
cause monitor contention with concurrent calls to the methods of the NameCache 
interface (those are also synchronized).

I propose the following change:

Index: CachingNamespaceResolver.java
===================================================================
--- CachingNamespaceResolver.java       (revision 488245)
+++ CachingNamespaceResolver.java       (working copy)
@@ -84,7 +84,7 @@
     /**
      * @deprecated use [EMAIL PROTECTED] NameFormat#parse(String, 
NamespaceResolver)}
      */
-    public synchronized QName getQName(String name)
+    public QName getQName(String name)
             throws IllegalNameException, UnknownPrefixException {
         return NameFormat.parse(name, this);
     }
@@ -92,7 +92,7 @@
     /**
      * @deprecated use [EMAIL PROTECTED] NameFormat#format(QName, 
NamespaceResolver)}
      */
-    public synchronized String getJCRName(QName name)
+    public String getJCRName(QName name)
             throws NoPrefixDeclaredException {
         return NameFormat.format(name, this);
     }


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to