Author: tdraier
Date: Fri Sep 21 10:36:47 2007
New Revision: 18589
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18589&repname=
=3Djahia
Log:
fixed invalidation with display mode instead of workflow state ( port 18405=
)
Modified:
trunk/core/src/java/org/jahia/services/cache/CacheEventListener.java
trunk/core/src/java/org/jahia/services/cache/ContainerHTMLCache.java
Modified: trunk/core/src/java/org/jahia/services/cache/CacheEventListener.j=
ava
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/cache/CacheEventListener.java&rev=3D18589&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/services/cache/CacheEventListener.java (o=
riginal)
+++ trunk/core/src/java/org/jahia/services/cache/CacheEventListener.java Fr=
i Sep 21 10:36:47 2007
@@ -1,16 +1,17 @@
package org.jahia.services.cache;
=
-import org.jahia.data.events.JahiaEventListener;
+import org.jahia.content.*;
+import org.jahia.content.events.ContentActivationEvent;
+import org.jahia.data.containers.JahiaContainerList;
import org.jahia.data.events.JahiaEvent;
import org.jahia.services.workflow.WorkflowEvent;
+import org.jahia.data.events.JahiaEventListener;
+import org.jahia.exceptions.JahiaException;
+import org.jahia.exceptions.JahiaInitializationException;
+import org.jahia.params.ProcessingContext;
+import org.jahia.registries.ServicesRegistry;
import org.jahia.services.fields.ContentField;
import org.jahia.services.version.EntryLoadRequest;
-import org.jahia.services.containers.ContentContainer;
-import org.jahia.content.*;
-import org.jahia.content.events.ContentActivationEvent;
-import org.jahia.registries.ServicesRegistry;
-import org.jahia.exceptions.JahiaInitializationException;
-import org.jahia.exceptions.JahiaException;
=
import java.util.*;
=
@@ -57,7 +58,9 @@
}
for (Iterator iterator =3D myEvents.iterator(); iterator.hasNext()=
;) {
Object[] objs =3D (Object[]) iterator.next();
- invalidate((ContentObjectKey) objs[0], EntryLoadRequest.STAGIN=
G_WORKFLOW_STATE, (String) objs[1]);
+ invalidate((ContentObjectKey) objs[0], ProcessingContext.EDIT,=
(String) objs[1]);
+ invalidate((ContentObjectKey) objs[0], ProcessingContext.PREVI=
EW, (String) objs[1]);
+ invalidate((ContentObjectKey) objs[0], ProcessingContext.COMPA=
RE, (String) objs[1]);
}
}
=
@@ -74,7 +77,8 @@
}
for (Iterator iterator =3D myEvents.iterator(); iterator.hasNext()=
;) {
Object[] objs =3D (Object[]) iterator.next();
- invalidate((ContentObjectKey) objs[0], EntryLoadRequest.ACTIVE=
_WORKFLOW_STATE, (String) objs[1]);
+ invalidate((ContentObjectKey) objs[0], ProcessingContext.NORMA=
L, (String) objs[1]);
+ invalidate((ContentObjectKey) objs[0], ProcessingContext.COMPA=
RE, (String) objs[1]);
}
}
=
@@ -93,6 +97,18 @@
return chtmlCache;
}
=
+ public void containerListPropertiesSet(JahiaEvent je) {
+ JahiaContainerList containerList =3D (JahiaContainerList) je.getOb=
ject();
+ if (containerList !=3D null) {
+ ContentObjectKey key =3D (ContentObjectKey) containerList.getC=
ontentContainerList().getObjectKey();
+ String locale =3D je.getProcessingContext().getLocale().toStri=
ng();
+ invalidate(key,ProcessingContext.EDIT, locale);
+ invalidate(key,ProcessingContext.NORMAL, locale);
+ invalidate(key,ProcessingContext.PREVIEW, locale);
+ invalidate(key,ProcessingContext.COMPARE, locale);
+ }
+ }
+
private void addObjectKey(ContentObjectKey objectKey, Set languageCode=
s, List myEvents, Set viewed) {
if (ContentPageKey.PAGE_TYPE.equals(objectKey.getType())) {
objectKey =3D objectKey.getParent(EntryLoadRequest.STAGED);
@@ -119,8 +135,8 @@
}
}
=
- private void invalidate(ContentObjectKey object, int entryLoadRequest,=
String locale) {
- getChtmlCache().invalidateContainerEntries(object.toString(), entr=
yLoadRequest, locale);
+ private void invalidate(ContentObjectKey object, String mode, String l=
ocale) {
+ getChtmlCache().invalidateContainerEntries(object.toString(), mode=
, locale);
}
=
}
Modified: trunk/core/src/java/org/jahia/services/cache/ContainerHTMLCache.j=
ava
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/cache/ContainerHTMLCache.java&rev=3D18589&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/services/cache/ContainerHTMLCache.java (o=
riginal)
+++ trunk/core/src/java/org/jahia/services/cache/ContainerHTMLCache.java Fr=
i Sep 21 10:36:47 2007
@@ -47,7 +47,7 @@
* @param group
[EMAIL PROTECTED] user the user name
* @param languageCode the language code
- * @param mode the workflow state
+ * @param mode the mode
* @param scheme the request scheme (http/https)
* @return the generated cache key
*/
@@ -102,23 +102,23 @@
=
/**
* <p>Invalidates all the cache entries related to the specified conta=
iner <code>containerID</code>,
- * and workflow state by removing the cache entries.</p>
+ * and mode by removing the cache entries.</p>
*
* @param containerID the container identification number
- * @param workflowState the workflow state for which to invalidate the=
containers.
+ * @param mode the mode for which to invalidate the containers.
* @param languageCode the language code for which to invalidate the c=
ontainers.
*/
=
- public synchronized void invalidateContainerEntries(String containerID=
, int workflowState, String languageCode) {
+ public synchronized void invalidateContainerEntries(String containerID=
, String mode, String languageCode) {
=
if (containerID =3D=3D null) {
logger.debug ("Cannot remove a null container ID from the cach=
e!");
return;
}
=
- logger.debug ("Removing cache entries for container/containerlist =
["+ containerID + "], workflow ["+workflowState+"], lang ["+languageCode+"]=
");
+ logger.debug ("Removing cache entries for container/containerlist =
["+ containerID + "], mode ["+mode+"], lang ["+languageCode+"]");
=
- String pageKey =3D containerID + WORKFLOWSTATE_PREFIX + workflowSt=
ate + LANGUAGECODE_PREFIX + languageCode;
+ String pageKey =3D containerID + WORKFLOWSTATE_PREFIX + mode + LAN=
GUAGECODE_PREFIX + languageCode;
=
flushGroup(pageKey);
}
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list