Author: mcardle
Date: Wed Aug 2 07:19:13 2006
New Revision: 14822
URL: https://svndev.jahia.net/websvn/listing.php?sc=1&rev=14822&repname=jahia
Log:
* prevents import/exports from triggering constant invalidations
Modified:
trunk/core/src/java/org/jahia/operations/valves/EsiInvalidateValve.java
trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java
Modified:
trunk/core/src/java/org/jahia/operations/valves/EsiInvalidateValve.java
URL:
https://svndev.jahia.net/websvn/diff.php?path=/trunk/core/src/java/org/jahia/operations/valves/EsiInvalidateValve.java&rev=14822&repname=jahia
==============================================================================
--- trunk/core/src/java/org/jahia/operations/valves/EsiInvalidateValve.java
(original)
+++ trunk/core/src/java/org/jahia/operations/valves/EsiInvalidateValve.java Wed
Aug 2 07:19:13 2006
@@ -115,6 +115,17 @@
}
else if (esiService.checkForAnyContentToInvalidate()) {
+ ParamBean paramBean = null;
+ if (pc instanceof ParamBean) {
+ paramBean = (ParamBean)pc;
+ if (
paramBean.getRealRequest().getHeader(JesiConst.ESI_IMPORT_HEADER) !=null ) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("Ignoring any incurred invalidations from
Import request : " +paramBean.getRealRequest().getRequestURL() );
+ return;
+ }
+ }
+ }
+
//Get ESI invalidation message for all objects to invalidate
String invMessage =
ServicesRegistry.getInstance().getEsiInvalidationWriterService().getPendingObjectsToInvalidate(pc);
@@ -124,8 +135,7 @@
boolean invDone = false;
if (!forceSOAPInvalidation &&
pc.settings().getEsiUsePiggyBackInvalidation()) {
- if (pc instanceof ParamBean) {
- ParamBean paramBean = (ParamBean)pc;
+ if (paramBean!=null) {
//only return piggyback invalidations when the request
comes from an ESI server
if (org.jahia.taglibs.esi.JesiTag.requestFromESI_10(
paramBean.getRealRequest() )
//the latter header is sent even for POST
request (unlike the one above)
Modified:
trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java
URL:
https://svndev.jahia.net/websvn/diff.php?path=/trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java&rev=14822&repname=jahia
==============================================================================
---
trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java
(original)
+++
trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java
Wed Aug 2 07:19:13 2006
@@ -69,6 +69,7 @@
import org.jahia.services.version.VersioningDifferenceStatus;
import org.jahia.services.webdav.DAVFileAccess;
import org.jahia.services.webdav.JahiaWebdavBaseService;
+import org.jahia.taglibs.esi.JesiConst;
import org.quartz.CronTrigger;
import org.quartz.JobDataMap;
import org.quartz.JobDetail;
@@ -1573,6 +1574,10 @@
} else {
method.addRequestHeader(TokenAuthValveImpl.addToken(user));
}
+ //notify EsiInvalidateValve that these requests are due to imports
(so as not to invalidate content)
+ if (Jahia.getSettings().isEsiCacheActivated()) {
+ method.addRequestHeader(JesiConst.ESI_IMPORT_HEADER, "yes" );
+ }
// Execute the method.
int result = client.executeMethod(method);
logger.debug("Response status code for ["+url +"] is : " + result);