public class RatingServiceImpl extends java.lang.Object implements RatingService
| Constructor and Description |
|---|
RatingServiceImpl() |
| Modifier and Type | Method and Description |
|---|---|
void |
applyRating(org.alfresco.service.cmr.repository.NodeRef targetNode,
float rating,
java.lang.String ratingSchemeName)
This method applies the given rating to the specified target node.
|
float |
getAverageRating(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
This method returns the average (mean) rating in the specified scheme for the
specified nodeRef.
|
Rating |
getRatingByCurrentUser(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
This method gets the
Rating applied by the current user to the specified node in the specified
RatingScheme - if there is one. |
java.io.Serializable |
getRatingRollup(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName,
java.lang.String ratingRollupName)
This method returns a 'rolled up' property value for the specified targetNode.
|
java.util.List |
getRatingsByCurrentUser(org.alfresco.service.cmr.repository.NodeRef targetNode)
This method gets the
ratings applied by the current user to the specified node. |
RatingScheme |
getRatingScheme(java.lang.String ratingSchemeName)
Returns the named
rating scheme if there is one. |
java.util.Map |
getRatingSchemes()
Returns the available
rating schemes keyed by name. |
int |
getRatingsCount(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
This method gets the number of individual ratings which have been applied to
the specified node in the specified
RatingScheme. |
float |
getTotalRating(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
This method gets the total accumulated rating score for
the specified node in the specified
RatingScheme. |
Rating |
removeRatingByCurrentUser(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingScheme)
This method removes any
Rating applied by the current user to the specified node in the specified
RatingScheme. |
void |
setBehaviourFilter(BehaviourFilter behaviourFilter) |
void |
setDictionaryService(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService) |
void |
setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService) |
void |
setRatingSchemeRegistry(RatingSchemeRegistry schemeRegistry) |
void |
setRollupNamingConventions(RatingNamingConventionsUtil namingConventions) |
public void setRatingSchemeRegistry(RatingSchemeRegistry schemeRegistry)
public void setDictionaryService(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
public void setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
public void setBehaviourFilter(BehaviourFilter behaviourFilter)
public void setRollupNamingConventions(RatingNamingConventionsUtil namingConventions)
public java.util.Map getRatingSchemes()
RatingServicerating schemes keyed by name.getRatingSchemes in interface RatingServicerating schemes.public RatingScheme getRatingScheme(java.lang.String ratingSchemeName)
RatingServicerating scheme if there is one.getRatingScheme in interface RatingServiceratingSchemeName - name of the rating scheme.rating schemes if one of that name is registered,
else null.public void applyRating(org.alfresco.service.cmr.repository.NodeRef targetNode,
float rating,
java.lang.String ratingSchemeName)
throws RatingServiceException
RatingServiceapplyRating in interface RatingServicetargetNode - the node to which the rating is to be applied.rating - the rating which is to be applied.ratingSchemeName - the name of the rating scheme to use.RatingServiceException - if the rating is not within the range defined by the named scheme
or if the named scheme is not registered.RatingService.getRatingSchemes(),
RatingSchemepublic Rating getRatingByCurrentUser(org.alfresco.service.cmr.repository.NodeRef targetNode, java.lang.String ratingSchemeName)
RatingServiceRating applied by the current user to the specified node in the specified
RatingScheme - if there is one.getRatingByCurrentUser in interface RatingServicetargetNode - the node on which the rating is sought.null.RatingService.getRatingSchemes(),
RatingSchemepublic java.util.List getRatingsByCurrentUser(org.alfresco.service.cmr.repository.NodeRef targetNode)
RatingServiceratings applied by the current user to the specified node.getRatingsByCurrentUser in interface RatingServicetargetNode - the node on which the ratings are sought.Collections.emptyList().RatingService.getRatingSchemes(),
RatingSchemepublic Rating removeRatingByCurrentUser(org.alfresco.service.cmr.repository.NodeRef targetNode, java.lang.String ratingScheme)
RatingServiceRating applied by the current user to the specified node in the specified
RatingScheme.removeRatingByCurrentUser in interface RatingServicetargetNode - the node from which the rating is to be removed.null.RatingService.getRatingSchemes(),
RatingSchemepublic float getTotalRating(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
RatingServiceRatingScheme.
That is, the rating scores for all users for the specified
node are summed to give the result.getTotalRating in interface RatingServicetargetNode - the node on which the rating total is sought.RatingService.getRatingSchemes(),
RatingSchemepublic float getAverageRating(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
RatingServicegetAverageRating in interface RatingServicetargetNode - the node for which an average is sought.ratingSchemeName - the rating scheme name in which the average is defined.public int getRatingsCount(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName)
RatingServiceRatingScheme.getRatingsCount in interface RatingServicetargetNode - the node on which the rating is sought.RatingService.getRatingSchemes(),
RatingSchemepublic java.io.Serializable getRatingRollup(org.alfresco.service.cmr.repository.NodeRef targetNode,
java.lang.String ratingSchemeName,
java.lang.String ratingRollupName)
RatingServicecm:rating child nodes.
An example of such a roll up would be 'ratingTotal' which would be the sum of all ratings applied to the
targetNode in the specified rating scheme.
By rolling up property values from the various cm:rating child nodes and persisting them
as individual properties on the cm:rateable node itself, we are able to support indexing, searching
and sorting of such properties.getRatingRollup in interface RatingServicetargetNode - the rated node whose rolled up property we wish to read.ratingSchemeName - the rating scheme name in which the property is relevant.ratingRollupName - the name of the rating rollup property, as given in AbstractRatingRollupAlgorithm.getRollupName().Copyright © 2005 - 2010 Alfresco Software, Inc. All Rights Reserved.