From 3d874e3334babdf24c1ecab586a16a198862332c Mon Sep 17 00:00:00 2001 From: Jamal Kaabi-Mofrad Date: Tue, 10 May 2016 11:30:19 +0000 Subject: [PATCH] Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2) 124563 gjames: RA-884: Posting activities for file/folder deleted git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@126566 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../default/activities-feed-context.xml | 1 - .../alfresco/opencmis/ActivityPosterImpl.java | 52 +----------- .../org/alfresco/opencmis/CMISConnector.java | 3 +- .../alfresco/opencmis/CmisActivityPoster.java | 2 +- .../service/cmr/activities/ActivityInfo.java | 80 +++++++++++++++++++ .../cmr/activities/ActivityPoster.java | 18 ----- .../FileFolderActivityPosterImpl.java | 45 +---------- 7 files changed, 87 insertions(+), 114 deletions(-) create mode 100644 source/java/org/alfresco/service/cmr/activities/ActivityInfo.java diff --git a/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml b/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml index 399f6ae13b..8d5e506f65 100644 --- a/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml +++ b/config/alfresco/subsystems/ActivitiesFeed/default/activities-feed-context.xml @@ -29,7 +29,6 @@ - diff --git a/source/java/org/alfresco/opencmis/ActivityPosterImpl.java b/source/java/org/alfresco/opencmis/ActivityPosterImpl.java index bed24d54d3..ef040a23b2 100644 --- a/source/java/org/alfresco/opencmis/ActivityPosterImpl.java +++ b/source/java/org/alfresco/opencmis/ActivityPosterImpl.java @@ -26,6 +26,7 @@ import org.alfresco.repo.Client.ClientType; import org.alfresco.repo.activities.ActivityType; import org.alfresco.repo.model.filefolder.HiddenAspect; import org.alfresco.repo.tenant.TenantService; +import org.alfresco.service.cmr.activities.ActivityInfo; import org.alfresco.service.cmr.activities.ActivityPoster; import org.alfresco.service.cmr.model.FileFolderService; import org.alfresco.service.cmr.model.FileFolderServiceType; @@ -282,56 +283,5 @@ public class ActivityPosterImpl implements CmisActivityPoster, InitializingBean return null; } } - - public static class ActivityInfo - { - private NodeRef nodeRef; - private String parentPath; - private NodeRef parentNodeRef; - private String siteId; - private String fileName; - private boolean isFolder; - public ActivityInfo(NodeRef nodeRef, String parentPath, NodeRef parentNodeRef, - String siteId, String fileName, boolean isFolder) - { - super(); - this.nodeRef = nodeRef; - this.parentPath = parentPath; - this.parentNodeRef = parentNodeRef; - this.siteId = siteId; - this.fileName = fileName; - this.isFolder = isFolder; - } - - public NodeRef getNodeRef() - { - return nodeRef; - } - - public String getParentPath() - { - return parentPath; - } - - public NodeRef getParentNodeRef() - { - return parentNodeRef; - } - - public String getSiteId() - { - return siteId; - } - - public String getFileName() - { - return fileName; - } - - public boolean isFolder() - { - return isFolder; - } - } } \ No newline at end of file diff --git a/source/java/org/alfresco/opencmis/CMISConnector.java b/source/java/org/alfresco/opencmis/CMISConnector.java index 9931b564f4..4fe2f74f5e 100644 --- a/source/java/org/alfresco/opencmis/CMISConnector.java +++ b/source/java/org/alfresco/opencmis/CMISConnector.java @@ -53,7 +53,7 @@ import org.alfresco.events.types.ContentEventImpl; import org.alfresco.events.types.ContentReadRangeEvent; import org.alfresco.events.types.Event; import org.alfresco.model.ContentModel; -import org.alfresco.opencmis.ActivityPosterImpl.ActivityInfo; +import org.alfresco.service.cmr.activities.ActivityInfo; import org.alfresco.opencmis.dictionary.CMISActionEvaluator; import org.alfresco.opencmis.dictionary.CMISAllowedActionEnum; import org.alfresco.opencmis.dictionary.CMISDictionaryService; @@ -109,7 +109,6 @@ import org.alfresco.service.cmr.dictionary.InvalidAspectException; import org.alfresco.service.cmr.lock.LockService; import org.alfresco.service.cmr.model.FileExistsException; import org.alfresco.service.cmr.model.FileFolderService; -import org.alfresco.service.cmr.model.FileInfo; import org.alfresco.service.cmr.model.FileNotFoundException; import org.alfresco.service.cmr.rendition.RenditionService; import org.alfresco.service.cmr.repository.AssociationRef; diff --git a/source/java/org/alfresco/opencmis/CmisActivityPoster.java b/source/java/org/alfresco/opencmis/CmisActivityPoster.java index 83ab491aad..e594377a6e 100644 --- a/source/java/org/alfresco/opencmis/CmisActivityPoster.java +++ b/source/java/org/alfresco/opencmis/CmisActivityPoster.java @@ -18,7 +18,7 @@ */ package org.alfresco.opencmis; -import org.alfresco.opencmis.ActivityPosterImpl.ActivityInfo; +import org.alfresco.service.cmr.activities.ActivityInfo; import org.alfresco.service.cmr.repository.NodeRef; /** diff --git a/source/java/org/alfresco/service/cmr/activities/ActivityInfo.java b/source/java/org/alfresco/service/cmr/activities/ActivityInfo.java new file mode 100644 index 0000000000..893a8da8ad --- /dev/null +++ b/source/java/org/alfresco/service/cmr/activities/ActivityInfo.java @@ -0,0 +1,80 @@ +package org.alfresco.service.cmr.activities; + +import org.alfresco.service.cmr.model.FileInfo; +import org.alfresco.service.cmr.repository.NodeRef; + +/** + * Basic Activity information for use when posting Activities. + * + * @author Gethin James + */ +public class ActivityInfo +{ + private final NodeRef nodeRef; + private final String parentPath; + private final NodeRef parentNodeRef; + private final String siteId; + private final String fileName; + private final boolean isFolder; + private final FileInfo fileInfo; + + public ActivityInfo(NodeRef nodeRef, String parentPath, NodeRef parentNodeRef, + String siteId, String fileName, boolean isFolder) + { + super(); + this.nodeRef = nodeRef; + this.parentPath = parentPath; + this.parentNodeRef = parentNodeRef; + this.siteId = siteId; + this.fileName = fileName; + this.isFolder = isFolder; + this.fileInfo = null; + } + + public ActivityInfo(String parentPath, NodeRef parentNodeRef, String siteId, FileInfo fileInfo) + { + super(); + this.nodeRef = fileInfo.getNodeRef(); + this.parentPath = parentPath; + this.parentNodeRef = parentNodeRef; + this.siteId = siteId; + this.fileName = fileInfo.getName(); + this.isFolder = fileInfo.isFolder(); + this.fileInfo = fileInfo; + } + + public FileInfo getFileInfo() + { + return fileInfo; + } + + public NodeRef getNodeRef() + { + return nodeRef; + } + + public String getParentPath() + { + return parentPath; + } + + public NodeRef getParentNodeRef() + { + return parentNodeRef; + } + + public String getSiteId() + { + return siteId; + } + + public String getFileName() + { + return fileName; + } + + public boolean isFolder() + { + return isFolder; + } +} diff --git a/source/java/org/alfresco/service/cmr/activities/ActivityPoster.java b/source/java/org/alfresco/service/cmr/activities/ActivityPoster.java index 643ad0b8e8..8f08568da1 100644 --- a/source/java/org/alfresco/service/cmr/activities/ActivityPoster.java +++ b/source/java/org/alfresco/service/cmr/activities/ActivityPoster.java @@ -30,22 +30,4 @@ public interface ActivityPoster String siteId, NodeRef parentNodeRef, NodeRef nodeRef, String fileName, String appTool, Client client, FileInfo fileInfo); - /** - * Posts file folder activity only if its part of a Site. If the activity is - * not from a Site then it is ignored. - * @param activityType required - * @param path optional - * @param tenantDomain optional - * @param siteId required - * @param parentNodeRef optional - * @param nodeRef required - * @param fileName required - * @param appTool required - * @param client required - * @param fileInfo optional - */ - void postSiteAwareFileFolderActivity(String activityType, String path, String tenantDomain, - String siteId, NodeRef parentNodeRef, NodeRef nodeRef, String fileName, - String appTool, Client client, FileInfo fileInfo); - } diff --git a/source/java/org/alfresco/service/cmr/activities/FileFolderActivityPosterImpl.java b/source/java/org/alfresco/service/cmr/activities/FileFolderActivityPosterImpl.java index 5445802f14..cae082cf44 100644 --- a/source/java/org/alfresco/service/cmr/activities/FileFolderActivityPosterImpl.java +++ b/source/java/org/alfresco/service/cmr/activities/FileFolderActivityPosterImpl.java @@ -1,10 +1,14 @@ package org.alfresco.service.cmr.activities; import org.alfresco.error.AlfrescoRuntimeException; +import org.alfresco.model.ContentModel; +import org.alfresco.opencmis.ActivityPosterImpl; import org.alfresco.repo.Client; +import org.alfresco.repo.activities.ActivityType; import org.alfresco.repo.tenant.TenantService; import org.alfresco.repo.tenant.TenantUtil; import org.alfresco.service.cmr.model.FileInfo; +import org.alfresco.service.cmr.model.FileNotFoundException; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.site.SiteInfo; import org.alfresco.service.cmr.site.SiteService; @@ -24,7 +28,6 @@ public class FileFolderActivityPosterImpl implements ActivityPoster { private static final Logger logger = LoggerFactory.getLogger(FileFolderActivityPosterImpl.class); private ActivityService activityService; - private SiteService siteService; @Override public void postFileFolderActivity( @@ -59,41 +62,6 @@ public class FileFolderActivityPosterImpl implements ActivityPoster fileInfo); } - @Override - public void postSiteAwareFileFolderActivity(String activityType, - String path, - String tenantDomain, - String siteId, - NodeRef parentNodeRef, - NodeRef nodeRef, - String fileName, - String appTool, - Client client, - FileInfo fileInfo) - { - - if(siteId == null || siteId.isEmpty()) - { - SiteInfo siteInfo = siteService.getSite(nodeRef); - if (siteInfo != null) - { - siteId = siteInfo.getShortName(); - } - else - { - //Not a site noderef so return without posting - if (logger.isDebugEnabled()) - { - logger.debug("Non-site activity, so ignored " + activityType + " " + nodeRef); - } - return; - } - - } - postFileFolderActivity(activityType, path, tenantDomain, siteId, parentNodeRef, nodeRef, - fileName, appTool, client, fileInfo); - } - /** * Create JSON suitable for create, modify or delete activity posts. * @@ -143,11 +111,6 @@ public class FileFolderActivityPosterImpl implements ActivityPoster return json; } - public void setSiteService(SiteService siteService) - { - this.siteService = siteService; - } - public void setActivityService(ActivityService activityService) { this.activityService = activityService;