001
014
015 package com.liferay.portlet.social.util.test;
016
017 import com.liferay.asset.kernel.model.AssetEntry;
018 import com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil;
019 import com.liferay.portal.kernel.json.JSONFactoryUtil;
020 import com.liferay.portal.kernel.json.JSONObject;
021 import com.liferay.portal.kernel.model.Group;
022 import com.liferay.portal.kernel.model.User;
023 import com.liferay.portal.kernel.test.util.RandomTestUtil;
024 import com.liferay.portal.kernel.util.PortalUtil;
025 import com.liferay.portal.kernel.util.StringPool;
026 import com.liferay.social.kernel.model.SocialActivityCounter;
027 import com.liferay.social.kernel.model.SocialActivityCounterConstants;
028 import com.liferay.social.kernel.model.SocialActivityLimit;
029 import com.liferay.social.kernel.service.SocialActivityCounterLocalServiceUtil;
030 import com.liferay.social.kernel.service.SocialActivityLimitLocalServiceUtil;
031 import com.liferay.social.kernel.service.SocialActivityLocalServiceUtil;
032
033
036 public class SocialActivityTestUtil {
037
038 public static void addActivity(
039 User user, Group group, AssetEntry assetEntry, int type)
040 throws Exception {
041
042 addActivity(user, group, assetEntry, type, StringPool.BLANK);
043 }
044
045 public static void addActivity(
046 User user, Group group, AssetEntry assetEntry, int type,
047 String extraData)
048 throws Exception {
049
050 SocialActivityLocalServiceUtil.addActivity(
051 user.getUserId(), group.getGroupId(), assetEntry.getClassName(),
052 assetEntry.getClassPK(), type, extraData, 0);
053 }
054
055 public static AssetEntry addAssetEntry(User user, Group group)
056 throws Exception {
057
058 return AssetEntryLocalServiceUtil.updateEntry(
059 user.getUserId(), group.getGroupId(), RandomTestUtil.randomString(),
060 RandomTestUtil.randomLong(), null, null);
061 }
062
063 public static AssetEntry addAssetEntry(
064 User user, Group group, AssetEntry assetEntry)
065 throws Exception {
066
067 if (assetEntry != null) {
068 AssetEntryLocalServiceUtil.deleteEntry(assetEntry);
069 }
070
071 return AssetEntryLocalServiceUtil.updateEntry(
072 user.getUserId(), group.getGroupId(), _TEST_MODEL, 1, null, null);
073 }
074
075 public static String createExtraDataJSON(String key, String value) {
076 JSONObject extraDataJSONObject = JSONFactoryUtil.createJSONObject();
077
078 extraDataJSONObject.put(key, value);
079
080 return extraDataJSONObject.toString();
081 }
082
083 public static SocialActivityCounter getActivityCounter(
084 long groupId, String name, Object owner)
085 throws Exception {
086
087 long classNameId = 0;
088 long classPK = 0;
089 int ownerType = SocialActivityCounterConstants.TYPE_ACTOR;
090
091 if (owner instanceof User) {
092 classNameId = PortalUtil.getClassNameId(User.class.getName());
093 classPK = ((User)owner).getUserId();
094 }
095 else if (owner instanceof AssetEntry) {
096 classNameId = ((AssetEntry)owner).getClassNameId();
097 classPK = ((AssetEntry)owner).getClassPK();
098 ownerType = SocialActivityCounterConstants.TYPE_ASSET;
099 }
100
101 if (name.equals(SocialActivityCounterConstants.NAME_CONTRIBUTION)) {
102 ownerType = SocialActivityCounterConstants.TYPE_CREATOR;
103 }
104
105 return SocialActivityCounterLocalServiceUtil.fetchLatestActivityCounter(
106 groupId, classNameId, classPK, name, ownerType);
107 }
108
109 public static SocialActivityLimit getActivityLimit(
110 long groupId, User user, AssetEntry assetEntry, int activityType,
111 String activityCounterName)
112 throws Exception {
113
114 long classPK = assetEntry.getClassPK();
115
116 if (activityCounterName.equals(
117 SocialActivityCounterConstants.NAME_PARTICIPATION)) {
118
119 classPK = 0;
120 }
121
122 return SocialActivityLimitLocalServiceUtil.fetchActivityLimit(
123 groupId, user.getUserId(), assetEntry.getClassNameId(), classPK,
124 activityType, activityCounterName);
125 }
126
127 private static final String _TEST_MODEL = "test-model";
128
129 }