Author: tdraier
Date: Fri Sep 14 12:36:12 2007
New Revision: 18448

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18448&repname=
=3Djahia
Log:
use cache when getting all sites, avoid costly requests (port 18158)

Modified:
    trunk/core/src/java/org/jahia/hibernate/manager/JahiaSiteManager.java
    trunk/core/src/webapp/WEB-INF/etc/spring/applicationcontext-manager.xml

Modified: trunk/core/src/java/org/jahia/hibernate/manager/JahiaSiteManager.=
java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/hibernate/manager/JahiaSiteManager.java&rev=3D18448&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
--- trunk/core/src/java/org/jahia/hibernate/manager/JahiaSiteManager.java (=
original)
+++ trunk/core/src/java/org/jahia/hibernate/manager/JahiaSiteManager.java F=
ri Sep 14 12:36:12 2007
@@ -27,6 +27,9 @@
 import org.jahia.hibernate.model.JahiaSiteProp;
 import org.jahia.services.acl.JahiaBaseACL;
 import org.jahia.services.sites.JahiaSite;
+import org.jahia.services.sites.JahiaSitesBaseService;
+import org.jahia.services.cache.CacheService;
+import org.jahia.services.cache.Cache;
 import org.springframework.orm.ObjectRetrievalFailureException;
 =

 import java.util.ArrayList;
@@ -44,11 +47,16 @@
 public class JahiaSiteManager {
     private Log log =3D LogFactory.getLog(JahiaSiteManager.class);
     private JahiaSiteDAO dao =3D null;
+    private CacheService cacheService;
 =

     public void setJahiaSiteDAO(JahiaSiteDAO dao) {
         this.dao =3D dao;
     }
 =

+    public void setCacheService(CacheService cacheService) {
+        this.cacheService =3D cacheService;
+    }
+
     public void saveJahiaSite(JahiaSite site) {
         org.jahia.hibernate.model.JahiaSite jahiaSite =3D convertServiceJa=
hiaSiteToModelJahiaSite(site);
         this.dao.save(jahiaSite);
@@ -106,7 +114,15 @@
         List retList =3D new ArrayList(list.size());
         for (int i =3D 0; i < list.size(); i++) {
             org.jahia.hibernate.model.JahiaSite jahiaSite =3D (org.jahia.h=
ibernate.model.JahiaSite) list.get(i);
-            retList.add(convertModelJahiaSiteToServiceJahiaSite(jahiaSite)=
);
+            JahiaSite convertedSite =3D null;
+            Cache cache =3D cacheService.getCache(JahiaSitesBaseService.SI=
TE_CACHE_BYID);
+            if (cache !=3D null) {
+                convertedSite =3D (JahiaSite) cache.get(jahiaSite.getId());
+            }
+            if (convertedSite =3D=3D null) {
+                convertedSite =3D convertModelJahiaSiteToServiceJahiaSite(=
jahiaSite);
+            }
+            retList.add(convertedSite);
         }
         return retList;
     }

Modified: trunk/core/src/webapp/WEB-INF/etc/spring/applicationcontext-manag=
er.xml
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/webapp=
/WEB-INF/etc/spring/applicationcontext-manager.xml&rev=3D18448&repname=3Dja=
hia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/webapp/WEB-INF/etc/spring/applicationcontext-manager.xml=
 (original)
+++ trunk/core/src/webapp/WEB-INF/etc/spring/applicationcontext-manager.xml=
 Fri Sep 14 12:36:12 2007
@@ -63,6 +63,9 @@
                 <property name=3D"jahiaSiteDAO">
                     <ref bean=3D"jahiaSiteDAO"/>
                 </property>
+                <property name=3D"cacheService">
+                    <ref bean=3D"JahiaCacheService"/>
+                </property>
             </bean>
         </property>
     </bean>

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to