Author: shuber
Date: Thu Sep 27 16:26:47 2007
New Revision: 18697
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18697&repname=
=3Djahia
Log:
- Correct cache usage so that we properly handle the case where an entry ha=
s expired between a call to containsKey() and get()
- Moved singleton creation for ServicesRegistry to static initializer
Modified:
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaAclManager.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaFieldsDataManager.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaGroupManager.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaUserManager.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/registries/Service=
sRegistry.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/applicati=
ons/ApplicationsManagerServletProvider.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/pages/Jah=
iaPageBaseService.java
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/usermanag=
er/JahiaUserManagerLDAPProvider.java
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/ma=
nager/JahiaAclManager.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/hibernate/manager/JahiaAclManager.java&rev=
=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaAclManager.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaAclManager.java Thu Sep 27 16:26:47 2007
@@ -123,7 +123,10 @@
Cache cache =3D checkCache();
if(cache!=3Dnull) {
if(cache.containsKey(groupName)){
- return ((Boolean)cache.get(groupName)).booleanValue();
+ Boolean result =3D (Boolean)cache.get(groupName);
+ if (result !=3D null) {
+ return result.booleanValue();
+ }
}
boolean groupUsedInAclEntries =3D dao.isGroupUsedInAclEntries(=
groupName);
if(groupUsedInAclEntries) cache.put(groupName,Boolean.TRUE);
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/ma=
nager/JahiaFieldsDataManager.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/hibernate/manager/JahiaFieldsDataManager.ja=
va&rev=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaFieldsDataManager.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaFieldsDataManager.java Thu Sep 27 16:26:47 2007
@@ -511,8 +511,12 @@
Set set =3D new HashSet();
set.add(FIELDIDSINCONTAINER_KEY_PREFIX+ctnid);
GroupCacheKey key =3D new GroupCacheKey(FIELDIDSINCONTAINER_KE=
Y_PREFIX+ctnid+loadVersion+withTypes,set);
- if(!compareMode && fieldCache.containsKey(key))
- return (List) fieldCache.get(key);
+ if(!compareMode && fieldCache.containsKey(key)) {
+ List result =3D (List) fieldCache.get(key);
+ if (result !=3D null) {
+ return result;
+ }
+ }
if (loadVersion =3D=3D null) {
retVal =3D dao.findAllFieldsIdInContainer(new Integer(ctni=
d), withTypes);
} else if (loadVersion.isStaging()) {
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/ma=
nager/JahiaGroupManager.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/hibernate/manager/JahiaGroupManager.java&re=
v=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaGroupManager.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaGroupManager.java Thu Sep 27 16:26:47 2007
@@ -286,7 +286,10 @@
}
if (membership !=3D null) {
if (membership.containsKey(name)) {
- return (List) membership.get(name);
+ List result =3D (List) membership.get(name);
+ if (result !=3D null) {
+ return result;
+ }
}
List list =3D accessDAO.getUserMembership(name);
membership.put(name, list);
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/ma=
nager/JahiaUserManager.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/hibernate/manager/JahiaUserManager.java&rev=
=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaUserManager.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/manager/=
JahiaUserManager.java Thu Sep 27 16:26:47 2007
@@ -214,7 +214,9 @@
if (getCache() !=3D null) {
if (cache.containsKey("m"+siteID+"_"+username)) {
user =3D (JahiaUser) cache.get("m"+siteID+"_"+username);
- return user;
+ if (user !=3D null) {
+ return user;
+ }
}
}
String name =3D userDAO.getMemberNameInSite(new Integer(siteID), u=
sername);
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/registries/S=
ervicesRegistry.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/registries/ServicesRegistry.java&rev=3D1869=
7&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/registries/Service=
sRegistry.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/registries/Service=
sRegistry.java Thu Sep 27 16:26:47 2007
@@ -94,7 +94,7 @@
org.apache.log4j.Logger.getLogger(ServicesRegistry.class);
=
/** It's a Singleton **/
- private static ServicesRegistry theObject =3D null;
+ private static ServicesRegistry theObject =3D new ServicesRegistry();
=
=
// Jahia Files Services
@@ -235,11 +235,6 @@
* @return the unique instance of this class
*/
public static ServicesRegistry getInstance () {
- if (theObject =3D=3D null) {
- synchronized (ServicesRegistry.class) {
- theObject =3D new ServicesRegistry();
- }
- }
return theObject;
}
=
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/app=
lications/ApplicationsManagerServletProvider.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/services/applications/ApplicationsManagerSe=
rvletProvider.java&rev=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/applicati=
ons/ApplicationsManagerServletProvider.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/applicati=
ons/ApplicationsManagerServletProvider.java Thu Sep 27 16:26:47 2007
@@ -159,7 +159,9 @@
if (registry.containsKey(new Integer (appID))) {
app =3D (ApplicationBean) registry.get(new
Integer(appID));
- return app;
+ if (app !=3D null) {
+ return app;
+ }
}
// try to load from db
app =3D applicationManager.getApplicationDefinition (appID);
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/pag=
es/JahiaPageBaseService.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/services/pages/JahiaPageBaseService.java&re=
v=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/pages/Jah=
iaPageBaseService.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/pages/Jah=
iaPageBaseService.java Thu Sep 27 16:26:47 2007
@@ -1224,8 +1224,12 @@
GroupCacheKey groupCacheKey =3D new GroupCacheKey("PAGE_ID" + page=
ID
+ "-" + loadRequest + "-" + opMode + "-" + user.getUserKey=
(),
new HashSet());
- if (mContentPagePathCache.containsKey(groupCacheKey))
- return (Vector) mContentPagePathCache.get(groupCacheKey);
+ if (mContentPagePathCache.containsKey(groupCacheKey)) {
+ Vector result =3D (Vector) mContentPagePathCache.get(groupCach=
eKey);
+ if (result !=3D null) {
+ return result;
+ }
+ }
Vector path =3D new Vector();
ContentPage contentPage =3D lookupContentPage(pageID, true);
if (contentPage !=3D null) {
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/use=
rmanager/JahiaUserManagerLDAPProvider.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/services/usermanager/JahiaUserManagerLDAPPr=
ovider.java&rev=3D18697&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/usermanag=
er/JahiaUserManagerLDAPProvider.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/usermanag=
er/JahiaUserManagerLDAPProvider.java Thu Sep 27 16:26:47 2007
@@ -910,7 +910,10 @@
logger.debug ("Lookup user from dn " + dn);
JahiaLDAPUser user =3D null;
if (mUserCache.containsKey("d"+dn)) {
- return (JahiaLDAPUser) mUserCache.get("d"+dn);
+ JahiaLDAPUser result =3D (JahiaLDAPUser) mUserCache.get("d"+dn=
);
+ if (result !=3D null) {
+ return result;
+ }
}
try {
Attributes attributes =3D getUser (getPublicContext(false), dn=
);
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list