Package org.alfresco.repo.activities
Class ActivityServiceImpl
java.lang.Object
org.alfresco.repo.activities.ActivityServiceImpl
- All Implemented Interfaces:
ActivityPostService,ActivityService,org.springframework.beans.factory.InitializingBean
public class ActivityServiceImpl
extends Object
implements ActivityService, org.springframework.beans.factory.InitializingBean
Activity Service Implementation
- Author:
- janv
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbooleanexistsFeedControl(FeedControl feedControl) For current user, does the feed control exist ?For current user, get feed controlsgetFeedControls(String userId) For given user, get feed controlsintReturn maximum configured item entries (per feed)org.alfresco.query.PagingResults<ActivityFeedEntity>getPagedUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, long minFeedId, org.alfresco.query.PagingRequest pagingRequest) getSiteFeedEntries(String siteId) Retrieve site feedprotected NodeRefgetUserAvatarNodeRef(ActivityFeedEntity activityFeed, Map<String, NodeRef> userIdToAvatarNodeRefCache) Attempts to find the avatarNodeReffor the user in suppliedActivityFeedEntity.getUserFeedEntries(String feedUserId, String siteId) Retrieve user feed with optional site filter Will return activities for all users across all sites, or optionally for all users for specified site.getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers) Retrieve user feed with optional site filter and optional user filters Will return activities for users across all sites, or optionally for users for specified site.getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, long minFeedId) Retrieve user feed with optional site filter and optional user filters and optional min feed DB id Will return activities for users across all sites, or optionally for users for specified site.getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, Set<String> userFilter, Set<String> actvityFilter) Retrieve user feed with optional site filter and optional user filters Will return activities for users across all sites, or optionally for users for specified site.getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, Set<String> userFilter, Set<String> actvityFilter, long minFeedId) Retrieve user feed with optional site filter and optional user filters and optional min feed DB id Will return activities for users across all sites, or optionally for users for specified site.voidpostActivity(String activityType, String siteId, String appTool, String activityData) Post a custom activity typevoidpostActivity(String activityType, String siteId, String appTool, String activityData, String userId) Post a custom activity typevoidpostActivity(String activityType, String siteId, String appTool, String jsonActivityData, org.alfresco.sync.repo.Client client) Post a custom activity typevoidpostActivity(String activityType, String siteId, String appTool, String jsonActivityData, org.alfresco.sync.repo.Client client, FileInfo contentNodeInfo) Post a custom activity typevoidpostActivity(String activityType, String siteId, String appTool, NodeRef nodeRef) Post a pre-defined activity type - certain activity data will be looked-up asynchronously, including: name (of nodeRef) displayPath typeQName firstName (of posting user) lastName (of posting user)voidPost a pre-defined activity type - eg. for checked-out nodeRef or renamed nodeRefvoidpostActivity(String activityType, String siteId, String appTool, NodeRef nodeRef, String name, QName typeQName, NodeRef parentNodeRef) Post a pre-defined activity type - eg. for deleted nodeRefvoidsetActivityPostService(ActivityPostService activityPostService) voidsetAuthorityService(AuthorityService authorityService) voidsetFeedCleaner(FeedCleaner feedCleaner) voidsetFeedControl(FeedControl feedControl) For current user, set feed control (opt-out) for a site or an appTool or a site/appTool combinationvoidsetFeedControlDAO(FeedControlDAO feedControlDAO) voidsetFeedDAO(ActivityFeedDAO feedDAO) voidsetMaxFeedItems(int maxFeedItems) voidsetNodeService(NodeService nodeService) voidsetPersonService(PersonService personService) voidsetSiteService(SiteService siteService) voidsetTenantService(TenantService tenantService) voidsetUserNamesAreCaseSensitive(boolean userNamesAreCaseSensitive) voidunsetFeedControl(FeedControl feedControl) For current user, unset feed control
-
Constructor Details
-
ActivityServiceImpl
public ActivityServiceImpl()
-
-
Method Details
-
setMaxFeedItems
public void setMaxFeedItems(int maxFeedItems) -
setUserNamesAreCaseSensitive
public void setUserNamesAreCaseSensitive(boolean userNamesAreCaseSensitive) -
setFeedDAO
-
setFeedControlDAO
-
setFeedCleaner
-
setAuthorityService
-
setTenantService
-
setSiteService
-
setActivityPostService
-
setPersonService
-
setNodeService
-
afterPropertiesSet
- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
Exception
-
postActivity
Description copied from interface:ActivityPostServicePost a custom activity type- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringactivityData- - required
-
postActivity
public void postActivity(String activityType, String siteId, String appTool, String activityData, String userId) Description copied from interface:ActivityPostServicePost a custom activity type- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringactivityData- - requireduserId- - required
-
postActivity
Description copied from interface:ActivityPostServicePost a pre-defined activity type - certain activity data will be looked-up asynchronously, including: name (of nodeRef) displayPath typeQName firstName (of posting user) lastName (of posting user)- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringnodeRef- - required - do not use for deleted (or about to be deleted) nodeRef
-
postActivity
public void postActivity(String activityType, String siteId, String appTool, NodeRef nodeRef, String name) Description copied from interface:ActivityPostServicePost a pre-defined activity type - eg. for checked-out nodeRef or renamed nodeRef- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringnodeRef- - required - do not use deleted (or about to be deleted) nodeRefname- - optional - name of node (eg. prior to name change)
-
postActivity
public void postActivity(String activityType, String siteId, String appTool, NodeRef nodeRef, String name, QName typeQName, NodeRef parentNodeRef) Description copied from interface:ActivityPostServicePost a pre-defined activity type - eg. for deleted nodeRef- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringnodeRef- - required - can be a deleted (or about to be deleted) nodeRefname- - optional - name of nametypeQName- - optional - type of nodeparentNodeRef- - required - used to lookup path/displayPath
-
postActivity
public void postActivity(String activityType, String siteId, String appTool, String jsonActivityData, org.alfresco.sync.repo.Client client) Description copied from interface:ActivityPostServicePost a custom activity type- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringjsonActivityData- - required
-
postActivity
public void postActivity(String activityType, String siteId, String appTool, String jsonActivityData, org.alfresco.sync.repo.Client client, FileInfo contentNodeInfo) Description copied from interface:ActivityPostServicePost a custom activity type- Specified by:
postActivityin interfaceActivityPostService- Parameters:
activityType- - requiredsiteId- - optional, if null will be stored as empty stringappTool- - optional, if null will be stored as empty stringjsonActivityData- - requiredcontentNodeInfo- FileInfo
-
getUserFeedEntries
Description copied from interface:ActivityServiceRetrieve user feed with optional site filter Will return activities for all users across all sites, or optionally for all users for specified site.- Specified by:
getUserFeedEntriesin interfaceActivityService- Parameters:
feedUserId- - requiredsiteId- - optional, if set then will filter by given siteId else return all sites- Returns:
- list of JSON feed entries
-
getUserFeedEntries
public List<String> getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers) Description copied from interface:ActivityServiceRetrieve user feed with optional site filter and optional user filters Will return activities for users across all sites, or optionally for users for specified site. User filters are: - all user activities (excludeThisUser = false, excludeOtherUsers = false) - other user activities (excludeThisUser = true, excludeOtherUsers = false) - my user activities (excludeThisUser = false, excludeOtherUsers = true) note: if both excludes are true then no activities will be returned.- Specified by:
getUserFeedEntriesin interfaceActivityService- Parameters:
feedUserId- - requiredsiteId- - optional, if set then will filter by given siteId else return all sitesexcludeThisUser- - if TRUE then will exclude activities for this user (hence returning other users only)excludeOtherUsers- - if TRUE then will exclude activities for other users (hence returning this user only)- Returns:
- list of JSON feed entries
-
getUserFeedEntries
public List<String> getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, Set<String> userFilter, Set<String> actvityFilter) Description copied from interface:ActivityServiceRetrieve user feed with optional site filter and optional user filters Will return activities for users across all sites, or optionally for users for specified site. User filters are: - all user activities (excludeThisUser = false, excludeOtherUsers = false) - other user activities (excludeThisUser = true, excludeOtherUsers = false) - my user activities (excludeThisUser = false, excludeOtherUsers = true) note: if both excludes are true then no activities will be returned.- Specified by:
getUserFeedEntriesin interfaceActivityService- Parameters:
feedUserId- - requiredsiteId- - optional, if set then will filter by given siteId else return all sitesexcludeThisUser- - if TRUE then will exclude activities for this user (hence returning other users only)excludeOtherUsers- - if TRUE then will exclude activities for other users (hence returning this user only)userFilter- - if not NULL then will only return activities of users in this setactvityFilter- - if not NULL then will only return activities that are in this set- Returns:
- list of JSON feed entries
-
getPagedUserFeedEntries
public org.alfresco.query.PagingResults<ActivityFeedEntity> getPagedUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, long minFeedId, org.alfresco.query.PagingRequest pagingRequest) - Specified by:
getPagedUserFeedEntriesin interfaceActivityService
-
getUserAvatarNodeRef
protected NodeRef getUserAvatarNodeRef(ActivityFeedEntity activityFeed, Map<String, NodeRef> userIdToAvatarNodeRefCache) Attempts to find the avatarNodeReffor the user in suppliedActivityFeedEntity. As this is aimed at setting theNodeReffrom a client-side point of view there are a couple of activity types where the user is taken from the activity summary rather than from the poster (e.g. when a user role is changed). A cache should be passed in from which to retrieve previously fetchedNodeRefs for efficiency.- Parameters:
activityFeed- ActivityFeedEntity- Returns:
- NodeRef
-
getUserFeedEntries
public List<ActivityFeedEntity> getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, long minFeedId) Description copied from interface:ActivityServiceRetrieve user feed with optional site filter and optional user filters and optional min feed DB id Will return activities for users across all sites, or optionally for users for specified site. User filters are: - all user activities (excludeThisUser = false, excludeOtherUsers = false) - other user activities (excludeThisUser = true, excludeOtherUsers = false) - my user activities (excludeThisUser = false, excludeOtherUsers = true) note: if both excludes are true then no activities will be returned.- Specified by:
getUserFeedEntriesin interfaceActivityService- Parameters:
feedUserId- - requiredsiteId- - optional, if set then will filter by given siteId else return all sitesexcludeThisUser- - if TRUE then will exclude activities for this user (hence returning other users only)excludeOtherUsers- - if TRUE then will exclude activities for other users (hence returning this user only)minFeedId- - inclusive from min feed DB id, if -1 then return all available- Returns:
- list of JSON feed entries
-
getUserFeedEntries
public List<ActivityFeedEntity> getUserFeedEntries(String feedUserId, String siteId, boolean excludeThisUser, boolean excludeOtherUsers, Set<String> userFilter, Set<String> actvityFilter, long minFeedId) Description copied from interface:ActivityServiceRetrieve user feed with optional site filter and optional user filters and optional min feed DB id Will return activities for users across all sites, or optionally for users for specified site. User filters are: - all user activities (excludeThisUser = false, excludeOtherUsers = false) - other user activities (excludeThisUser = true, excludeOtherUsers = false) - my user activities (excludeThisUser = false, excludeOtherUsers = true) note: if both excludes are true then no activities will be returned.- Specified by:
getUserFeedEntriesin interfaceActivityService- Parameters:
feedUserId- - requiredsiteId- - optional, if set then will filter by given siteId else return all sitesexcludeThisUser- - if TRUE then will exclude activities for this user (hence returning other users only)excludeOtherUsers- - if TRUE then will exclude activities for other users (hence returning this user only)userFilter- - if not NULL then will only return activities of users in this setactvityFilter- - if not NULL then will only return activities that are in this setminFeedId- - inclusive from min feed DB id, if -1 then return all available- Returns:
- list of JSON feed entries
-
getSiteFeedEntries
Description copied from interface:ActivityServiceRetrieve site feed- Specified by:
getSiteFeedEntriesin interfaceActivityService- Parameters:
siteId- - required- Returns:
- list of JSON feed entries
-
getMaxFeedItems
public int getMaxFeedItems()Description copied from interface:ActivityServiceReturn maximum configured item entries (per feed)- Specified by:
getMaxFeedItemsin interfaceActivityService- Returns:
- int
-
setFeedControl
Description copied from interface:ActivityServiceFor current user, set feed control (opt-out) for a site or an appTool or a site/appTool combination- Specified by:
setFeedControlin interfaceActivityService- Parameters:
feedControl- - required
-
getFeedControls
Description copied from interface:ActivityServiceFor current user, get feed controls- Specified by:
getFeedControlsin interfaceActivityService- Returns:
- list of user feed controls
-
getFeedControls
Description copied from interface:ActivityServiceFor given user, get feed controls- Specified by:
getFeedControlsin interfaceActivityService- Parameters:
userId- - required (must match- Returns:
- list of user feed controls
-
unsetFeedControl
Description copied from interface:ActivityServiceFor current user, unset feed control- Specified by:
unsetFeedControlin interfaceActivityService- Parameters:
feedControl- - required
-
existsFeedControl
Description copied from interface:ActivityServiceFor current user, does the feed control exist ?- Specified by:
existsFeedControlin interfaceActivityService- Parameters:
feedControl- - required- Returns:
- true, if user feed control exists
-