From 69623f99783378a5c4cd3d6a6c72d435603f57b8 Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Thu, 24 Nov 2011 12:51:57 +0000 Subject: [PATCH] FeedGenerator doesn't run when system is in read-only mode git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32274 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../default/activities-feed-context.xml | 1 + .../feed/AbstractFeedGenerator.java | 19 +++++++++++++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml b/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml index 2b0b6e4c32..ea0f9298dc 100644 --- a/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml +++ b/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml @@ -64,6 +64,7 @@ + diff --git a/source/java/org/alfresco/repo/activities/feed/AbstractFeedGenerator.java b/source/java/org/alfresco/repo/activities/feed/AbstractFeedGenerator.java index 98321fa01c..dbe2a82323 100644 --- a/source/java/org/alfresco/repo/activities/feed/AbstractFeedGenerator.java +++ b/source/java/org/alfresco/repo/activities/feed/AbstractFeedGenerator.java @@ -26,6 +26,7 @@ import org.alfresco.repo.lock.JobLockService.JobLockRefreshCallback; import org.alfresco.service.cmr.security.AuthenticationService; import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName; +import org.alfresco.service.transaction.TransactionService; import org.alfresco.util.PropertyCheck; import org.alfresco.util.VmShutdownListener; import org.apache.commons.logging.Log; @@ -52,7 +53,7 @@ public abstract class AbstractFeedGenerator implements FeedGenerator private ActivityPostDAO postDAO; private ActivityPostServiceImpl activityPostServiceImpl; private AuthenticationService authenticationService; - + private TransactionService transactionService; private JobLockService jobLockService; private String repoEndPoint; // http://hostname:port/webapp (eg. http://localhost:8080/alfresco) @@ -112,8 +113,12 @@ public abstract class AbstractFeedGenerator implements FeedGenerator { this.jobLockService = jobLockService; } - + public void setTransactionService(TransactionService transactionService) + { + this.transactionService = transactionService; + } + public RepoCtx getWebScriptsCtx() { return this.ctx; @@ -148,6 +153,16 @@ public abstract class AbstractFeedGenerator implements FeedGenerator { checkProperties(); + // Avoid running when in read-only mode + if (!transactionService.getAllowWrite()) + { + if (logger.isTraceEnabled()) + { + logger.trace("Activities feed generator not running due to read-only server"); + } + return; + } + String lockToken = null; try