Author: cmailleux
Date: Thu Sep 13 15:43:59 2007
New Revision: 18434

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18434&repname=
=3Djahia
Log:
Better prefetch of fragment

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/container/=
ContainerCacheTag.java
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/esi/JesiFr=
agmentTag.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/cont=
ainer/ContainerCacheTag.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/taglibs/container/ContainerCacheTag.java&re=
v=3D18434&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/taglibs/container/=
ContainerCacheTag.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/container/=
ContainerCacheTag.java Thu Sep 13 15:43:59 2007
@@ -187,7 +187,7 @@
                             parentTemplate.setRequestedFragmentBody(conten=
t);
                         if (requestedFragment !=3D JesiConst.NO_FRAGMENTS =
&& this.prefetchURL !=3D null) {
                             storeFragmentInSession((ParamBean) jData.getPr=
ocessingContext(),
-                                                   containerContent,
+                                                   content,
                                                    "",
                                                    "" + container.getID(),
                                                    "aclGroup:" + this.aclG=
roupFinalKey);

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/esi/=
JesiFragmentTag.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/taglibs/esi/JesiFragmentTag.java&rev=3D1843=
4&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/taglibs/esi/JesiFr=
agmentTag.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/esi/JesiFr=
agmentTag.java Thu Sep 13 15:43:59 2007
@@ -922,36 +922,40 @@
 =

     protected void storeFragmentInSession(ParamBean jParams, String fragme=
ntBodyContent, String updateTime, String ctIDs, String sharingInfo) throws =
JspTagException {
         SessionState sessionState =3D jParams.getSessionState();
-        sessionState.setAttribute( fragmentKey,
-                addFragmentDelimiters(fragmentBodyContent, updateTime, ctI=
Ds) );
-        sessionState.setAttribute( fragmentKey+"_SurrogateControlHeader", =
makeSurrogateControl() );
-        sessionState.setAttribute( fragmentKey+"_ContentType", jParams.get=
ContentType() );
-        if (sharingInfo!=3Dnull)
-            sessionState.setAttribute( fragmentKey+"_SharingInfo", sharing=
Info);
-
-        //optionally add header for alwaysInvalidate
-        if (!JesiConst.UNSET.equals(this.alwaysInvalidate)) {
-            sessionState.setAttribute( fragmentKey+"_AlwaysInvalidate", "y=
es" );
-        }
+        if (fragmentBodyContent !=3D null && !"".equals(fragmentBodyConten=
t.trim())) {
+            sessionState.setAttribute(fragmentKey, addFragmentDelimiters(f=
ragmentBodyContent, updateTime, ctIDs));
+            sessionState.setAttribute(fragmentKey + "_SurrogateControlHead=
er", makeSurrogateControl());
+            sessionState.setAttribute(fragmentKey + "_ContentType", jParam=
s.getContentType());
+            if (sharingInfo !=3D null) sessionState.setAttribute(fragmentK=
ey + "_SharingInfo", sharingInfo);
+
+            //optionally add header for alwaysInvalidate
+            if (!JesiConst.UNSET.equals(this.alwaysInvalidate)) {
+                sessionState.setAttribute(fragmentKey + "_AlwaysInvalidate=
", "yes");
+            }
 =

-        //optionally add header specific to absolute fragment:
-        if (!JesiConst.UNSET.equals(absolute)) {
-            sessionState.setAttribute( fragmentKey+"_AbsoluteHeader",
-                            "_user-"+user
-                            +"_group-"+group
-                            +"_aclGroup-"+this.aclGroupFinalKey);
-        }
+            //optionally add header specific to absolute fragment:
+            if (!JesiConst.UNSET.equals(absolute)) {
+                sessionState.setAttribute(fragmentKey + "_AbsoluteHeader",
+                                          "_user-" + user + "_group-" + gr=
oup + "_aclGroup-" + this.aclGroupFinalKey);
+            }
 =

-        updateFragmentHashMap(sessionState);
+            updateFragmentHashMap(sessionState);
 =

-        if (logger.isDebugEnabled())
-              logger.debug("[esi]:  Prefetch Fragment was stored in Sessio=
n at key: "+ fragmentKey);
+            if (logger.isDebugEnabled()) logger.debug("[esi]:  Prefetch Fr=
agment was stored in Session at key: " +
+                                                      fragmentKey +
+                                                      (fragmentBodyContent=
 =3D=3D null ||
+                                                       "".equals(fragmentB=
odyContent.trim()) ?
+                                                                          =
                   " content =3D " +
+                                                                          =
                   fragmentBodyContent :
+                                                                          =
                                       ""));
+        }
     }
 =

     private void updateFragmentHashMap(SessionState sessionState) {
         //store this prefetched fragment in the Set of all stored frags
         ConcurrentHashMap storedEsiFrags  =3D (ConcurrentHashMap) sessionS=
tate.getAttribute(JesiConst.ESI_SESSION_STORED_FRAGS);
         if (storedEsiFrags=3D=3Dnull) {
+            logger.debug("[esi]:  No Hashmap for storing fragment in sessi=
on, so create a new one");
             storedEsiFrags =3D new ConcurrentHashMap();
             sessionState.setAttribute(JesiConst.ESI_SESSION_STORED_FRAGS,s=
toredEsiFrags);
         }

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

Reply via email to