001
014
015 package com.liferay.portlet.social.service.impl;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.exception.SystemException;
019 import com.liferay.portlet.social.model.SocialActivity;
020 import com.liferay.portlet.social.model.SocialActivitySet;
021 import com.liferay.portlet.social.service.base.SocialActivitySetLocalServiceBaseImpl;
022 import com.liferay.portlet.social.util.comparator.SocialActivitySetModifiedDateComparator;
023
024 import java.util.List;
025
026
029 public class SocialActivitySetLocalServiceImpl
030 extends SocialActivitySetLocalServiceBaseImpl {
031
032 public SocialActivitySet addActivitySet(long activityId)
033 throws PortalException, SystemException {
034
035
036
037 SocialActivity activity = socialActivityPersistence.findByPrimaryKey(
038 activityId);
039
040 long activitySetId = counterLocalService.increment();
041
042 SocialActivitySet activitySet = socialActivitySetPersistence.create(
043 activitySetId);
044
045 activitySet.setGroupId(activity.getGroupId());
046 activitySet.setCompanyId(activity.getCompanyId());
047 activitySet.setUserId(activity.getUserId());
048 activitySet.setCreateDate(activity.getCreateDate());
049 activitySet.setModifiedDate(activity.getCreateDate());
050 activitySet.setClassName(activity.getClassName());
051 activitySet.setClassPK(activity.getClassPK());
052 activitySet.setType(activity.getType());
053 activitySet.setActivityCount(1);
054
055 socialActivitySetPersistence.update(activitySet);
056
057
058
059 activity.setActivitySetId(activitySetId);
060
061 socialActivityPersistence.update(activity);
062
063 return activitySet;
064 }
065
066 public void decrementActivityCount(long activitySetId)
067 throws PortalException, SystemException {
068
069 if (activitySetId == 0) {
070 return;
071 }
072
073 SocialActivitySet activitySet =
074 socialActivitySetPersistence.findByPrimaryKey(activitySetId);
075
076 if (activitySet.getActivityCount() == 1) {
077 socialActivitySetPersistence.remove(activitySetId);
078
079 return;
080 }
081
082 activitySet.setActivityCount(activitySet.getActivityCount() - 1);
083
084 socialActivitySetPersistence.update(activitySet);
085 }
086
087 public void decrementActivityCount(long classNameId, long classPK)
088 throws PortalException, SystemException {
089
090 List<SocialActivity> activities = socialActivityPersistence.findByC_C(
091 classNameId, classPK);
092
093 for (SocialActivity activity : activities) {
094 decrementActivityCount(activity.getActivitySetId());
095 }
096 }
097
098 public SocialActivitySet getClassActivitySet(
099 long classNameId, long classPK, int type)
100 throws SystemException {
101
102 return socialActivitySetPersistence.fetchByC_C_T_First(
103 classNameId, classPK, type,
104 new SocialActivitySetModifiedDateComparator());
105 }
106
107 public SocialActivitySet getClassActivitySet(
108 long userId, long classNameId, long classPK, int type)
109 throws SystemException {
110
111 return socialActivitySetPersistence.fetchByU_C_C_T_First(
112 userId, classNameId, classPK, type,
113 new SocialActivitySetModifiedDateComparator());
114 }
115
116 public SocialActivitySet getUserActivitySet(
117 long groupId, long userId, int type)
118 throws SystemException {
119
120 return socialActivitySetPersistence.fetchByG_U_T_First(
121 groupId, userId, type,
122 new SocialActivitySetModifiedDateComparator());
123 }
124
125 public void incrementActivityCount(long activitySetId, long activityId)
126 throws PortalException, SystemException {
127
128
129
130 SocialActivitySet activitySet =
131 socialActivitySetPersistence.findByPrimaryKey(activitySetId);
132
133 SocialActivity activity = socialActivityPersistence.findByPrimaryKey(
134 activityId);
135
136 activitySet.setModifiedDate(activity.getCreateDate());
137
138 activitySet.setActivityCount(activitySet.getActivityCount() + 1);
139
140 socialActivitySetPersistence.update(activitySet);
141
142
143
144 activity.setActivitySetId(activitySetId);
145
146 socialActivityPersistence.update(activity);
147 }
148
149 }