Interface SocialActivityCounterLocalService
- All Superinterfaces:
BaseLocalService
,CTService<SocialActivityCounter>
,PersistedModelLocalService
- All Known Implementing Classes:
SocialActivityCounterLocalServiceWrapper
- Author:
- Brian Wing Shun Chan
- See Also:
- {$generated.description}
-
Method Summary
Modifier and TypeMethodDescriptionaddActivityCounter
(long groupId, long classNameId, long classPK, String name, int ownerType, int totalValue, long previousActivityCounterId, int periodLength) Adds an activity counter specifying a previous activity and period length.void
addActivityCounters
(SocialActivity activity) Adds or increments activity counters related to an activity.addSocialActivityCounter
(SocialActivityCounter socialActivityCounter) Adds the social activity counter to the database.createPersistedModel
(Serializable primaryKeyObj) createSocialActivityCounter
(long activityCounterId) Creates a new social activity counter with the primary key.void
deleteActivityCounters
(long classNameId, long classPK) Deletes all activity counters, limits, and settings related to the entity identified by the class name ID and class primary key.void
deleteActivityCounters
(AssetEntry assetEntry) Deletes all activity counters, limits, and settings related to the asset.void
deleteActivityCounters
(String className, long classPK) Deletes all activity counters for the entity identified by the class name and class primary key.deletePersistedModel
(PersistedModel persistedModel) deleteSocialActivityCounter
(long activityCounterId) Deletes the social activity counter with the primary key from the database.deleteSocialActivityCounter
(SocialActivityCounter socialActivityCounter) Deletes the social activity counter from the database.void
disableActivityCounters
(long classNameId, long classPK) Disables all the counters of an asset identified by the class name ID and class primary key.void
disableActivityCounters
(String className, long classPK) Disables all the counters of an asset identified by the class name and class primary key.<T> T
dslQuery
(com.liferay.petra.sql.dsl.query.DSLQuery dslQuery) int
dslQueryCount
(com.liferay.petra.sql.dsl.query.DSLQuery dslQuery) <T> List<T>
dynamicQuery
(DynamicQuery dynamicQuery) Performs a dynamic query on the database and returns the matching rows.<T> List<T>
dynamicQuery
(DynamicQuery dynamicQuery, int start, int end) Performs a dynamic query on the database and returns a range of the matching rows.<T> List<T>
dynamicQuery
(DynamicQuery dynamicQuery, int start, int end, OrderByComparator<T> orderByComparator) Performs a dynamic query on the database and returns an ordered range of the matching rows.long
dynamicQueryCount
(DynamicQuery dynamicQuery) Returns the number of rows matching the dynamic query.long
dynamicQueryCount
(DynamicQuery dynamicQuery, Projection projection) Returns the number of rows matching the dynamic query.void
enableActivityCounters
(long classNameId, long classPK) Enables all activity counters of an asset identified by the class name ID and class primary key.void
enableActivityCounters
(String className, long classPK) Enables all the counters of an asset identified by the class name and class primary key.fetchActivityCounterByEndPeriod
(long groupId, long classNameId, long classPK, String name, int ownerType, int endPeriod) Returns the activity counter with the given name, owner, and end period that belong to the given entity.fetchActivityCounterByStartPeriod
(long groupId, long classNameId, long classPK, String name, int ownerType, int startPeriod) Returns the activity counter with the given name, owner, and start period that belong to the given entity.fetchLatestActivityCounter
(long groupId, long classNameId, long classPK, String name, int ownerType) Returns the latest activity counter with the given name and owner that belong to the given entity.fetchSocialActivityCounter
(long activityCounterId) getOffsetActivityCounters
(long groupId, String name, int startOffset, int endOffset) Returns all the activity counters with the given name and period offsets.getOffsetDistributionActivityCounters
(long groupId, String name, int startOffset, int endOffset) Returns the distribution of the activity counters with the given name and period offsets.Returns the OSGi service identifier.getPeriodActivityCounters
(long groupId, String name, int startPeriod, int endPeriod) Returns all the activity counters with the given name and time period.getPeriodDistributionActivityCounters
(long groupId, String name, int startPeriod, int endPeriod) Returns the distribution of activity counters with the given name and time period.getPersistedModel
(Serializable primaryKeyObj) getSocialActivityCounter
(long activityCounterId) Returns the social activity counter with the primary key.getSocialActivityCounters
(int start, int end) Returns a range of all the social activity counters.int
Returns the number of social activity counters.getUserActivityCounters
(long groupId, String[] rankingNames, String[] selectedNames, int start, int end) Returns the range of tuples that contain users and a list of activity counters.int
getUserActivityCountersCount
(long groupId, String[] rankingNames) Returns the number of users having a rank based on the given counters.void
incrementUserAchievementCounter
(long userId, long groupId) Increments theuser.achievements
counter for a user.updateSocialActivityCounter
(SocialActivityCounter socialActivityCounter) Updates the social activity counter in the database or adds it if it does not yet exist.<R,
E extends Throwable>
RupdateWithUnsafeFunction
(com.liferay.petra.function.UnsafeFunction<CTPersistence<SocialActivityCounter>, R, E> updateUnsafeFunction) Methods inherited from interface com.liferay.portal.kernel.service.PersistedModelLocalService
fetchPersistedModel, getBasePersistence
-
Method Details
-
addActivityCounter
SocialActivityCounter addActivityCounter(long groupId, long classNameId, long classPK, String name, int ownerType, int totalValue, long previousActivityCounterId, int periodLength) throws PortalException Adds an activity counter specifying a previous activity and period length.This method uses the lock service to guard against multiple threads trying to insert the same counter because this service is called asynchronously from the social activity service.
- Parameters:
groupId
- the primary key of the groupclassNameId
- the primary key of the entity's class this counter belongs toclassPK
- the primary key of the entity this counter belongs toname
- the counter nameownerType
- the counter's owner type. Acceptable values areTYPE_ACTOR
,TYPE_ASSET
andTYPE_CREATOR
defined inSocialActivityCounterConstants
.totalValue
- the counter's total value (optionally0
)previousActivityCounterId
- the primary key of the activity counter for the previous time period (optionally0
, if this is the first)periodLength
- the period length in days,PERIOD_LENGTH_INFINITE
for never ending counters orPERIOD_LENGTH_SYSTEM
for the period length defined inportal-ext.properties
. For more information seeSocialActivityCounterConstants
.- Returns:
- the added activity counter
- Throws:
PortalException
-
addActivityCounters
Adds or increments activity counters related to an activity.This method is called asynchronously from the social activity service when the user performs an activity defined in
liferay-social.xml
.This method first calls the activity processor class, if there is one defined for the activity, checks for limits and increments all the counters that belong to the activity. Afterwards, it processes the activity with respect to achievement classes, if any. Lastly it increments the built-in
user.activities
andasset.activities
counters.- Parameters:
activity
- the social activity- Throws:
PortalException
-
addSocialActivityCounter
@Indexable(type=REINDEX) SocialActivityCounter addSocialActivityCounter(SocialActivityCounter socialActivityCounter) Adds the social activity counter to the database. Also notifies the appropriate model listeners.Important: Inspect SocialActivityCounterLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
- Parameters:
socialActivityCounter
- the social activity counter- Returns:
- the social activity counter that was added
-
createPersistedModel
- Specified by:
createPersistedModel
in interfacePersistedModelLocalService
- Throws:
PortalException
-
createSocialActivityCounter
@Transactional(enabled=false) SocialActivityCounter createSocialActivityCounter(long activityCounterId) Creates a new social activity counter with the primary key. Does not add the social activity counter to the database.- Parameters:
activityCounterId
- the primary key for the new social activity counter- Returns:
- the new social activity counter
-
deleteActivityCounters
Deletes all activity counters, limits, and settings related to the asset.This method subtracts the asset's popularity from the owner's contribution points. It also creates a new contribution period if the latest one does not belong to the current period.
- Parameters:
assetEntry
- the asset entry- Throws:
PortalException
-
deleteActivityCounters
Deletes all activity counters, limits, and settings related to the entity identified by the class name ID and class primary key.- Parameters:
classNameId
- the primary key of the entity's classclassPK
- the primary key of the entity- Throws:
PortalException
-
deleteActivityCounters
Deletes all activity counters for the entity identified by the class name and class primary key.- Parameters:
className
- the entity's class nameclassPK
- the primary key of the entity- Throws:
PortalException
-
deletePersistedModel
- Specified by:
deletePersistedModel
in interfacePersistedModelLocalService
- Throws:
PortalException
-
deleteSocialActivityCounter
@Indexable(type=DELETE) SocialActivityCounter deleteSocialActivityCounter(long activityCounterId) throws PortalException Deletes the social activity counter with the primary key from the database. Also notifies the appropriate model listeners.Important: Inspect SocialActivityCounterLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
- Parameters:
activityCounterId
- the primary key of the social activity counter- Returns:
- the social activity counter that was removed
- Throws:
PortalException
- if a social activity counter with the primary key could not be found
-
deleteSocialActivityCounter
@Indexable(type=DELETE) SocialActivityCounter deleteSocialActivityCounter(SocialActivityCounter socialActivityCounter) Deletes the social activity counter from the database. Also notifies the appropriate model listeners.Important: Inspect SocialActivityCounterLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
- Parameters:
socialActivityCounter
- the social activity counter- Returns:
- the social activity counter that was removed
-
disableActivityCounters
Disables all the counters of an asset identified by the class name ID and class primary key.This method is used by the recycle bin to disable all counters of assets put into the recycle bin. It adjusts the owner's contribution score.
- Parameters:
classNameId
- the primary key of the asset's classclassPK
- the primary key of the asset- Throws:
PortalException
-
disableActivityCounters
Disables all the counters of an asset identified by the class name and class primary key.This method is used by the recycle bin to disable all counters of assets put into the recycle bin. It adjusts the owner's contribution score.
- Parameters:
className
- the asset's class nameclassPK
- the primary key of the asset- Throws:
PortalException
-
dslQuery
@Transactional(propagation=SUPPORTS, readOnly=true) <T> T dslQuery(com.liferay.petra.sql.dsl.query.DSLQuery dslQuery) - Specified by:
dslQuery
in interfacePersistedModelLocalService
-
dslQueryCount
@Transactional(propagation=SUPPORTS, readOnly=true) int dslQueryCount(com.liferay.petra.sql.dsl.query.DSLQuery dslQuery) - Specified by:
dslQueryCount
in interfacePersistedModelLocalService
-
dynamicQuery
-
dynamicQuery
@Transactional(propagation=SUPPORTS, readOnly=true) <T> List<T> dynamicQuery(DynamicQuery dynamicQuery) Performs a dynamic query on the database and returns the matching rows.- Parameters:
dynamicQuery
- the dynamic query- Returns:
- the matching rows
-
dynamicQuery
@Transactional(propagation=SUPPORTS, readOnly=true) <T> List<T> dynamicQuery(DynamicQuery dynamicQuery, int start, int end) Performs a dynamic query on the database and returns a range of the matching rows.Useful when paginating results. Returns a maximum of
end - start
instances.start
andend
are not primary keys, they are indexes in the result set. Thus,0
refers to the first result in the set. Setting bothstart
andend
tocom.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. IforderByComparator
is specified, then the query will include the given ORDER BY logic. IforderByComparator
is absent, then the query will include the default ORDER BY logic fromcom.liferay.portlet.social.model.impl.SocialActivityCounterModelImpl
.- Parameters:
dynamicQuery
- the dynamic querystart
- the lower bound of the range of model instancesend
- the upper bound of the range of model instances (not inclusive)- Returns:
- the range of matching rows
-
dynamicQuery
@Transactional(propagation=SUPPORTS, readOnly=true) <T> List<T> dynamicQuery(DynamicQuery dynamicQuery, int start, int end, OrderByComparator<T> orderByComparator) Performs a dynamic query on the database and returns an ordered range of the matching rows.Useful when paginating results. Returns a maximum of
end - start
instances.start
andend
are not primary keys, they are indexes in the result set. Thus,0
refers to the first result in the set. Setting bothstart
andend
tocom.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. IforderByComparator
is specified, then the query will include the given ORDER BY logic. IforderByComparator
is absent, then the query will include the default ORDER BY logic fromcom.liferay.portlet.social.model.impl.SocialActivityCounterModelImpl
.- Parameters:
dynamicQuery
- the dynamic querystart
- the lower bound of the range of model instancesend
- the upper bound of the range of model instances (not inclusive)orderByComparator
- the comparator to order the results by (optionallynull
)- Returns:
- the ordered range of matching rows
-
dynamicQueryCount
@Transactional(propagation=SUPPORTS, readOnly=true) long dynamicQueryCount(DynamicQuery dynamicQuery) Returns the number of rows matching the dynamic query.- Parameters:
dynamicQuery
- the dynamic query- Returns:
- the number of rows matching the dynamic query
-
dynamicQueryCount
@Transactional(propagation=SUPPORTS, readOnly=true) long dynamicQueryCount(DynamicQuery dynamicQuery, Projection projection) Returns the number of rows matching the dynamic query.- Parameters:
dynamicQuery
- the dynamic queryprojection
- the projection to apply to the query- Returns:
- the number of rows matching the dynamic query
-
enableActivityCounters
Enables all activity counters of an asset identified by the class name ID and class primary key.This method is used by the recycle bin to enable all counters of assets restored from the recycle bin. It adjusts the owner's contribution score.
- Parameters:
classNameId
- the primary key of the asset's classclassPK
- the primary key of the asset- Throws:
PortalException
-
enableActivityCounters
Enables all the counters of an asset identified by the class name and class primary key.This method is used by the recycle bin to enable all counters of assets restored from the recycle bin. It adjusts the owner's contribution score.
- Parameters:
className
- the asset's class nameclassPK
- the primary key of the asset- Throws:
PortalException
-
fetchActivityCounterByEndPeriod
@Transactional(propagation=SUPPORTS, readOnly=true) SocialActivityCounter fetchActivityCounterByEndPeriod(long groupId, long classNameId, long classPK, String name, int ownerType, int endPeriod) Returns the activity counter with the given name, owner, and end period that belong to the given entity.- Parameters:
groupId
- the primary key of the groupclassNameId
- the primary key of the entity's classclassPK
- the primary key of the entityname
- the counter nameownerType
- the owner typeendPeriod
- the end period,-1
for the latest one- Returns:
- the matching activity counter
-
fetchActivityCounterByStartPeriod
@Transactional(propagation=SUPPORTS, readOnly=true) SocialActivityCounter fetchActivityCounterByStartPeriod(long groupId, long classNameId, long classPK, String name, int ownerType, int startPeriod) Returns the activity counter with the given name, owner, and start period that belong to the given entity.- Parameters:
groupId
- the primary key of the groupclassNameId
- the primary key of the entity's classclassPK
- the primary key of the entityname
- the counter nameownerType
- the owner typestartPeriod
- the start period- Returns:
- the matching activity counter
-
fetchLatestActivityCounter
@Transactional(propagation=SUPPORTS, readOnly=true) SocialActivityCounter fetchLatestActivityCounter(long groupId, long classNameId, long classPK, String name, int ownerType) Returns the latest activity counter with the given name and owner that belong to the given entity.- Parameters:
groupId
- the primary key of the groupclassNameId
- the primary key of the entity's classclassPK
- the primary key of the entityname
- the counter nameownerType
- the owner type- Returns:
- the matching activity counter
-
fetchSocialActivityCounter
@Transactional(propagation=SUPPORTS, readOnly=true) SocialActivityCounter fetchSocialActivityCounter(long activityCounterId) -
getActionableDynamicQuery
@Transactional(propagation=SUPPORTS, readOnly=true) ActionableDynamicQuery getActionableDynamicQuery() -
getIndexableActionableDynamicQuery
@Transactional(propagation=SUPPORTS, readOnly=true) IndexableActionableDynamicQuery getIndexableActionableDynamicQuery() -
getOffsetActivityCounters
@Transactional(propagation=SUPPORTS, readOnly=true) List<SocialActivityCounter> getOffsetActivityCounters(long groupId, String name, int startOffset, int endOffset) Returns all the activity counters with the given name and period offsets.The start and end offsets can belong to different periods. This method groups the counters by name and returns the sum of their current values.
- Parameters:
groupId
- the primary key of the groupname
- the counter namestartOffset
- the offset for the start periodendOffset
- the offset for the end period- Returns:
- the matching activity counters
-
getOffsetDistributionActivityCounters
@Transactional(propagation=SUPPORTS, readOnly=true) List<SocialActivityCounter> getOffsetDistributionActivityCounters(long groupId, String name, int startOffset, int endOffset) Returns the distribution of the activity counters with the given name and period offsets.The start and end offsets can belong to different periods. This method groups the counters by their owner entity (usually some asset) and returns a counter for each entity class with the sum of the counters' current values.
- Parameters:
groupId
- the primary key of the groupname
- the counter namestartOffset
- the offset for the start periodendOffset
- the offset for the end period- Returns:
- the distribution of matching activity counters
-
getOSGiServiceIdentifier
String getOSGiServiceIdentifier()Returns the OSGi service identifier.- Returns:
- the OSGi service identifier
-
getPeriodActivityCounters
@Transactional(propagation=SUPPORTS, readOnly=true) List<SocialActivityCounter> getPeriodActivityCounters(long groupId, String name, int startPeriod, int endPeriod) Returns all the activity counters with the given name and time period.The start and end period values can belong to different periods. This method groups the counters by name and returns the sum of their current values.
- Parameters:
groupId
- the primary key of the groupname
- the counter namestartPeriod
- the start periodendPeriod
- the end period- Returns:
- the matching activity counters
-
getPeriodDistributionActivityCounters
@Transactional(propagation=SUPPORTS, readOnly=true) List<SocialActivityCounter> getPeriodDistributionActivityCounters(long groupId, String name, int startPeriod, int endPeriod) Returns the distribution of activity counters with the given name and time period.The start and end period values can belong to different periods. This method groups the counters by their owner entity (usually some asset) and returns a counter for each entity class with the sum of the counters' current values.
- Parameters:
groupId
- the primary key of the groupname
- the counter namestartPeriod
- the start periodendPeriod
- the end period- Returns:
- the distribution of matching activity counters
-
getPersistedModel
@Transactional(propagation=SUPPORTS, readOnly=true) PersistedModel getPersistedModel(Serializable primaryKeyObj) throws PortalException - Specified by:
getPersistedModel
in interfacePersistedModelLocalService
- Throws:
PortalException
-
getSocialActivityCounter
@Transactional(propagation=SUPPORTS, readOnly=true) SocialActivityCounter getSocialActivityCounter(long activityCounterId) throws PortalException Returns the social activity counter with the primary key.- Parameters:
activityCounterId
- the primary key of the social activity counter- Returns:
- the social activity counter
- Throws:
PortalException
- if a social activity counter with the primary key could not be found
-
getSocialActivityCounters
@Transactional(propagation=SUPPORTS, readOnly=true) List<SocialActivityCounter> getSocialActivityCounters(int start, int end) Returns a range of all the social activity counters.Useful when paginating results. Returns a maximum of
end - start
instances.start
andend
are not primary keys, they are indexes in the result set. Thus,0
refers to the first result in the set. Setting bothstart
andend
tocom.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. IforderByComparator
is specified, then the query will include the given ORDER BY logic. IforderByComparator
is absent, then the query will include the default ORDER BY logic fromcom.liferay.portlet.social.model.impl.SocialActivityCounterModelImpl
.- Parameters:
start
- the lower bound of the range of social activity countersend
- the upper bound of the range of social activity counters (not inclusive)- Returns:
- the range of social activity counters
-
getSocialActivityCountersCount
Returns the number of social activity counters.- Returns:
- the number of social activity counters
-
getUserActivityCounters
@Transactional(propagation=SUPPORTS, readOnly=true) List<Tuple> getUserActivityCounters(long groupId, String[] rankingNames, String[] selectedNames, int start, int end) Returns the range of tuples that contain users and a list of activity counters.The counters returned for each user are passed to this method in the selectedNames array. The method also accepts an array of counter names that are used to rank the users.
Useful when paginating results. Returns a maximum of
end - start
instances.start
andend
are not primary keys, they are indexes in the result set. Thus,0
refers to the first result in the set. Setting bothstart
andend
toQueryUtil#ALL_POS
will return the full result set.- Parameters:
groupId
- the primary key of the grouprankingNames
- the ranking counter namesselectedNames
- the counter names that will be returned with each userstart
- the lower bound of the range of resultsend
- the upper bound of the range of results (not inclusive)- Returns:
- the range of matching tuples
-
getUserActivityCountersCount
@Transactional(propagation=SUPPORTS, readOnly=true) int getUserActivityCountersCount(long groupId, String[] rankingNames) Returns the number of users having a rank based on the given counters.- Parameters:
groupId
- the primary key of the grouprankingNames
- the ranking counter names- Returns:
- the number of matching users
-
incrementUserAchievementCounter
Increments theuser.achievements
counter for a user.This method should be used by an external achievement class when the users unlocks an achievement.
- Parameters:
userId
- the primary key of the usergroupId
- the primary key of the group- Throws:
PortalException
-
updateSocialActivityCounter
@Indexable(type=REINDEX) SocialActivityCounter updateSocialActivityCounter(SocialActivityCounter socialActivityCounter) Updates the social activity counter in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.Important: Inspect SocialActivityCounterLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
- Parameters:
socialActivityCounter
- the social activity counter- Returns:
- the social activity counter that was updated
-
getCTPersistence
- Specified by:
getCTPersistence
in interfaceCTService<SocialActivityCounter>
-
getModelClass
- Specified by:
getModelClass
in interfaceCTService<SocialActivityCounter>
-
updateWithUnsafeFunction
@Transactional(rollbackFor=java.lang.Throwable.class) <R,E extends Throwable> R updateWithUnsafeFunction(com.liferay.petra.function.UnsafeFunction<CTPersistence<SocialActivityCounter>, R, throws EE> updateUnsafeFunction) - Specified by:
updateWithUnsafeFunction
in interfaceCTService<SocialActivityCounter>
- Throws:
E extends Throwable
-