mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-08 14:51:49 +00:00
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
This commit is contained in:
@@ -29,7 +29,6 @@
|
|||||||
|
|
||||||
<bean id="ffActivitiesPoster" class="org.alfresco.service.cmr.activities.FileFolderActivityPosterImpl">
|
<bean id="ffActivitiesPoster" class="org.alfresco.service.cmr.activities.FileFolderActivityPosterImpl">
|
||||||
<property name="activityService" ref="activityService" />
|
<property name="activityService" ref="activityService" />
|
||||||
<property name="siteService" ref="SiteService"/>
|
|
||||||
</bean>
|
</bean>
|
||||||
|
|
||||||
<!-- cleans out-of-date feed entries -->
|
<!-- cleans out-of-date feed entries -->
|
||||||
|
@@ -26,6 +26,7 @@ import org.alfresco.repo.Client.ClientType;
|
|||||||
import org.alfresco.repo.activities.ActivityType;
|
import org.alfresco.repo.activities.ActivityType;
|
||||||
import org.alfresco.repo.model.filefolder.HiddenAspect;
|
import org.alfresco.repo.model.filefolder.HiddenAspect;
|
||||||
import org.alfresco.repo.tenant.TenantService;
|
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.activities.ActivityPoster;
|
||||||
import org.alfresco.service.cmr.model.FileFolderService;
|
import org.alfresco.service.cmr.model.FileFolderService;
|
||||||
import org.alfresco.service.cmr.model.FileFolderServiceType;
|
import org.alfresco.service.cmr.model.FileFolderServiceType;
|
||||||
@@ -283,55 +284,4 @@ public class ActivityPosterImpl implements CmisActivityPoster, InitializingBean
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
@@ -53,7 +53,7 @@ import org.alfresco.events.types.ContentEventImpl;
|
|||||||
import org.alfresco.events.types.ContentReadRangeEvent;
|
import org.alfresco.events.types.ContentReadRangeEvent;
|
||||||
import org.alfresco.events.types.Event;
|
import org.alfresco.events.types.Event;
|
||||||
import org.alfresco.model.ContentModel;
|
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.CMISActionEvaluator;
|
||||||
import org.alfresco.opencmis.dictionary.CMISAllowedActionEnum;
|
import org.alfresco.opencmis.dictionary.CMISAllowedActionEnum;
|
||||||
import org.alfresco.opencmis.dictionary.CMISDictionaryService;
|
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.lock.LockService;
|
||||||
import org.alfresco.service.cmr.model.FileExistsException;
|
import org.alfresco.service.cmr.model.FileExistsException;
|
||||||
import org.alfresco.service.cmr.model.FileFolderService;
|
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.model.FileNotFoundException;
|
||||||
import org.alfresco.service.cmr.rendition.RenditionService;
|
import org.alfresco.service.cmr.rendition.RenditionService;
|
||||||
import org.alfresco.service.cmr.repository.AssociationRef;
|
import org.alfresco.service.cmr.repository.AssociationRef;
|
||||||
|
@@ -18,7 +18,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.alfresco.opencmis;
|
package org.alfresco.opencmis;
|
||||||
|
|
||||||
import org.alfresco.opencmis.ActivityPosterImpl.ActivityInfo;
|
import org.alfresco.service.cmr.activities.ActivityInfo;
|
||||||
import org.alfresco.service.cmr.repository.NodeRef;
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -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;
|
||||||
|
}
|
||||||
|
}
|
@@ -30,22 +30,4 @@ public interface ActivityPoster
|
|||||||
String siteId, NodeRef parentNodeRef, NodeRef nodeRef, String fileName,
|
String siteId, NodeRef parentNodeRef, NodeRef nodeRef, String fileName,
|
||||||
String appTool, Client client, FileInfo fileInfo);
|
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);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,10 +1,14 @@
|
|||||||
package org.alfresco.service.cmr.activities;
|
package org.alfresco.service.cmr.activities;
|
||||||
|
|
||||||
import org.alfresco.error.AlfrescoRuntimeException;
|
import org.alfresco.error.AlfrescoRuntimeException;
|
||||||
|
import org.alfresco.model.ContentModel;
|
||||||
|
import org.alfresco.opencmis.ActivityPosterImpl;
|
||||||
import org.alfresco.repo.Client;
|
import org.alfresco.repo.Client;
|
||||||
|
import org.alfresco.repo.activities.ActivityType;
|
||||||
import org.alfresco.repo.tenant.TenantService;
|
import org.alfresco.repo.tenant.TenantService;
|
||||||
import org.alfresco.repo.tenant.TenantUtil;
|
import org.alfresco.repo.tenant.TenantUtil;
|
||||||
import org.alfresco.service.cmr.model.FileInfo;
|
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.repository.NodeRef;
|
||||||
import org.alfresco.service.cmr.site.SiteInfo;
|
import org.alfresco.service.cmr.site.SiteInfo;
|
||||||
import org.alfresco.service.cmr.site.SiteService;
|
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 static final Logger logger = LoggerFactory.getLogger(FileFolderActivityPosterImpl.class);
|
||||||
private ActivityService activityService;
|
private ActivityService activityService;
|
||||||
private SiteService siteService;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void postFileFolderActivity(
|
public void postFileFolderActivity(
|
||||||
@@ -59,41 +62,6 @@ public class FileFolderActivityPosterImpl implements ActivityPoster
|
|||||||
fileInfo);
|
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.
|
* Create JSON suitable for create, modify or delete activity posts.
|
||||||
*
|
*
|
||||||
@@ -143,11 +111,6 @@ public class FileFolderActivityPosterImpl implements ActivityPoster
|
|||||||
return json;
|
return json;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSiteService(SiteService siteService)
|
|
||||||
{
|
|
||||||
this.siteService = siteService;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setActivityService(ActivityService activityService)
|
public void setActivityService(ActivityService activityService)
|
||||||
{
|
{
|
||||||
this.activityService = activityService;
|
this.activityService = activityService;
|
||||||
|
Reference in New Issue
Block a user