Class SubscriptionServiceImpl

    • Field Detail

      • nodeService

        protected org.alfresco.service.cmr.repository.NodeService nodeService
      • searchService

        protected org.alfresco.service.cmr.search.SearchService searchService
      • namespaceService

        protected org.alfresco.service.namespace.NamespaceService namespaceService
      • active

        protected boolean active
    • Constructor Detail

      • SubscriptionServiceImpl

        public SubscriptionServiceImpl()
    • Method Detail

      • setSubscriptionsDAO

        public void setSubscriptionsDAO​(SubscriptionsDAO subscriptionsDAO)
        Sets the subscriptions DAO.
      • setNodeService

        public final void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)
        Sets the node service.
      • setPersonService

        public final void setPersonService​(PersonService personService)
        Sets the person service.
      • setActivityService

        public final void setActivityService​(ActivityService activictyService)
        Sets the activity service.
      • setAuthorityService

        public final void setAuthorityService​(AuthorityService authorityService)
        Sets the authority service.
      • setActionService

        public final void setActionService​(ActionService actionService)
        Sets the action service.
      • setSearchService

        public final void setSearchService​(org.alfresco.service.cmr.search.SearchService searchService)
        Set the search service.
      • setNamespaceService

        public final void setNamespaceService​(org.alfresco.service.namespace.NamespaceService namespaceService)
        Set the namespace service.
      • setFileFolderService

        public final void setFileFolderService​(FileFolderService fileFolderService)
        Set the fileFolder service.
      • setActive

        public final void setActive​(boolean active)
      • setFollowingEmailTemplateLocation

        public void setFollowingEmailTemplateLocation​(RepositoryLocation followingEmailTemplateLocation)
      • subscribe

        public void subscribe​(java.lang.String userId,
                              org.alfresco.service.cmr.repository.NodeRef node)
        Description copied from interface: SubscriptionService
        Subscribes to a node.
        Specified by:
        subscribe in interface SubscriptionService
        Parameters:
        userId - id of the user
        node - the node
      • unsubscribe

        public void unsubscribe​(java.lang.String userId,
                                org.alfresco.service.cmr.repository.NodeRef node)
        Description copied from interface: SubscriptionService
        Unsubscribes from a node.
        Specified by:
        unsubscribe in interface SubscriptionService
        Parameters:
        userId - id of the user
        node - the node
      • hasSubscribed

        public boolean hasSubscribed​(java.lang.String userId,
                                     org.alfresco.service.cmr.repository.NodeRef node)
        Description copied from interface: SubscriptionService
        Returns if the user has subscribed to the given node.
        Specified by:
        hasSubscribed in interface SubscriptionService
        Parameters:
        userId - id of the user
        node - the node
      • getFollowing

        public PagingFollowingResults getFollowing​(java.lang.String userId,
                                                   org.alfresco.query.PagingRequest pagingRequest)
        Description copied from interface: SubscriptionService
        Returns a list of users that the given user follows.
        Specified by:
        getFollowing in interface SubscriptionService
        Parameters:
        userId - id of the user
        pagingRequest - paging details
      • getFollowingCount

        public int getFollowingCount​(java.lang.String userId)
        Description copied from interface: SubscriptionService
        Returns how many users the given user follows.
        Specified by:
        getFollowingCount in interface SubscriptionService
        Parameters:
        userId - the id of the user
      • getFollowers

        public PagingFollowingResults getFollowers​(java.lang.String userId,
                                                   org.alfresco.query.PagingRequest pagingRequest)
        Description copied from interface: SubscriptionService
        Returns a list of users that follow the given user.
        Specified by:
        getFollowers in interface SubscriptionService
        Parameters:
        userId - id of the user
        pagingRequest - paging details
      • getFollowersCount

        public int getFollowersCount​(java.lang.String userId)
        Description copied from interface: SubscriptionService
        Returns how many users follow the given user.
        Specified by:
        getFollowersCount in interface SubscriptionService
        Parameters:
        userId - the id of the user
      • follow

        public void follow​(java.lang.String userId,
                           java.lang.String userToFollow)
        Description copied from interface: SubscriptionService
        Follows a user.
        Specified by:
        follow in interface SubscriptionService
        Parameters:
        userId - the id of the user
        userToFollow - the id of the user to follow
      • unfollow

        public void unfollow​(java.lang.String userId,
                             java.lang.String userToUnfollow)
        Description copied from interface: SubscriptionService
        Unfollows a user.
        Specified by:
        unfollow in interface SubscriptionService
        Parameters:
        userId - the id of the user
        userToUnfollow - the id of the user to unfollow
      • follows

        public boolean follows​(java.lang.String userId,
                               java.lang.String userToFollow)
        Description copied from interface: SubscriptionService
        Returns if the user follows to the given other user.
        Specified by:
        follows in interface SubscriptionService
        Parameters:
        userId - id of the user
        userToFollow - the id of the other user
      • setSubscriptionListPrivate

        public void setSubscriptionListPrivate​(java.lang.String userId,
                                               boolean isPrivate)
        Description copied from interface: SubscriptionService
        Sets or unsets the subscription list of the given user to private.
        Specified by:
        setSubscriptionListPrivate in interface SubscriptionService
        Parameters:
        userId - the id of the user
        isPrivate - true - set list private, false - set list public
      • isSubscriptionListPrivate

        public boolean isSubscriptionListPrivate​(java.lang.String userId)
        Description copied from interface: SubscriptionService
        Returns if the subscription list of the given user is set to private.
        Specified by:
        isSubscriptionListPrivate in interface SubscriptionService
        Parameters:
        userId - the id of the user
      • checkEnabled

        protected void checkEnabled()
        Checks if the subscription service is enabled.
      • checkRead

        protected void checkRead​(java.lang.String userId,
                                 boolean checkPrivate)
        Checks if the current user is allowed to get subscription data.
      • checkWrite

        protected void checkWrite​(java.lang.String userId)
        Checks if the current user is allowed to get change data.
      • getUserNodeRef

        protected org.alfresco.service.cmr.repository.NodeRef getUserNodeRef​(java.lang.String userId)
        Gets the user node ref from the user id.
      • checkUserNode

        protected void checkUserNode​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Checks if the node is a user node and throws an exception if it id not.
      • sendFollowingMail

        protected void sendFollowingMail​(java.lang.String userId,
                                         java.lang.String userToFollow)
        Sends an email to the person that is followed.
      • getEmailTemplateRef

        protected java.lang.String getEmailTemplateRef()
        Returns the NodeRef of the email template or null if the template coudln't be found.