001
014
015 package com.liferay.portlet.mobiledevicerules.service.impl;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.exception.SystemException;
019 import com.liferay.portal.kernel.util.UnicodeProperties;
020 import com.liferay.portal.model.User;
021 import com.liferay.portal.service.ServiceContext;
022 import com.liferay.portlet.mobiledevicerules.model.MDRAction;
023 import com.liferay.portlet.mobiledevicerules.model.MDRRuleGroupInstance;
024 import com.liferay.portlet.mobiledevicerules.service.base.MDRActionLocalServiceBaseImpl;
025
026 import java.util.Date;
027 import java.util.List;
028 import java.util.Locale;
029 import java.util.Map;
030
031
034 public class MDRActionLocalServiceImpl extends MDRActionLocalServiceBaseImpl {
035
036 public MDRAction addAction(
037 long ruleGroupInstanceId, Map<Locale, String> nameMap,
038 Map<Locale, String> descriptionMap, String type,
039 String typeSettings, ServiceContext serviceContext)
040 throws PortalException, SystemException {
041
042 User user = userPersistence.findByPrimaryKey(
043 serviceContext.getUserId());
044 MDRRuleGroupInstance ruleGroupInstance =
045 mdrRuleGroupInstancePersistence.findByPrimaryKey(
046 ruleGroupInstanceId);
047 Date now = new Date();
048
049 long actionId = counterLocalService.increment();
050
051 MDRAction action = mdrActionLocalService.createMDRAction(actionId);
052
053 action.setUuid(serviceContext.getUuid());
054 action.setGroupId(ruleGroupInstance.getGroupId());
055 action.setCompanyId(serviceContext.getCompanyId());
056 action.setCreateDate(serviceContext.getCreateDate(now));
057 action.setModifiedDate(serviceContext.getModifiedDate(now));
058 action.setUserId(serviceContext.getUserId());
059 action.setUserName(user.getFullName());
060 action.setClassNameId(ruleGroupInstance.getClassNameId());
061 action.setClassPK(ruleGroupInstance.getClassPK());
062 action.setRuleGroupInstanceId(ruleGroupInstanceId);
063 action.setNameMap(nameMap);
064 action.setDescriptionMap(descriptionMap);
065 action.setType(type);
066 action.setTypeSettings(typeSettings);
067
068 action = updateMDRAction(action);
069
070 ruleGroupInstance.setModifiedDate(now);
071
072 mdrRuleGroupInstancePersistence.update(ruleGroupInstance);
073
074 return action;
075 }
076
077 public MDRAction addAction(
078 long ruleGroupInstanceId, Map<Locale, String> nameMap,
079 Map<Locale, String> descriptionMap, String type,
080 UnicodeProperties typeSettingsProperties,
081 ServiceContext serviceContext)
082 throws PortalException, SystemException {
083
084 return addAction(
085 ruleGroupInstanceId, nameMap, descriptionMap, type,
086 typeSettingsProperties.toString(), serviceContext);
087 }
088
089 public void deleteAction(long actionId) throws SystemException {
090 MDRAction action = mdrActionPersistence.fetchByPrimaryKey(actionId);
091
092 if (action != null) {
093 deleteAction(action);
094 }
095 }
096
097 public void deleteAction(MDRAction action) throws SystemException {
098 mdrActionPersistence.remove(action);
099
100 MDRRuleGroupInstance ruleGroupInstance =
101 mdrRuleGroupInstancePersistence.fetchByPrimaryKey(
102 action.getRuleGroupInstanceId());
103
104 if (ruleGroupInstance != null) {
105 ruleGroupInstance.setModifiedDate(new Date());
106
107 mdrRuleGroupInstancePersistence.update(ruleGroupInstance);
108 }
109 }
110
111 public void deleteActions(long ruleGroupInstanceId) throws SystemException {
112 List<MDRAction> actions =
113 mdrActionPersistence.findByRuleGroupInstanceId(ruleGroupInstanceId);
114
115 for (MDRAction action : actions) {
116 deleteAction(action);
117 }
118 }
119
120 public MDRAction fetchAction(long actionId) throws SystemException {
121 return mdrActionPersistence.fetchByPrimaryKey(actionId);
122 }
123
124 public MDRAction getAction(long actionId)
125 throws PortalException, SystemException {
126
127 return mdrActionPersistence.findByPrimaryKey(actionId);
128 }
129
130 public List<MDRAction> getActions(long ruleGroupInstanceId)
131 throws SystemException {
132
133 return mdrActionPersistence.findByRuleGroupInstanceId(
134 ruleGroupInstanceId);
135 }
136
137 public List<MDRAction> getActions(
138 long ruleGroupInstanceId, int start, int end)
139 throws SystemException {
140
141 return mdrActionPersistence.findByRuleGroupInstanceId(
142 ruleGroupInstanceId, start, end);
143 }
144
145 public int getActionsCount(long ruleGroupInstanceId)
146 throws SystemException {
147
148 return mdrActionPersistence.countByRuleGroupInstanceId(
149 ruleGroupInstanceId);
150 }
151
152 public MDRAction updateAction(
153 long actionId, Map<Locale, String> nameMap,
154 Map<Locale, String> descriptionMap, String type,
155 String typeSettings, ServiceContext serviceContext)
156 throws PortalException, SystemException {
157
158 MDRAction action = mdrActionPersistence.findByPrimaryKey(actionId);
159
160 action.setModifiedDate(serviceContext.getModifiedDate(null));
161 action.setNameMap(nameMap);
162 action.setDescriptionMap(descriptionMap);
163 action.setType(type);
164 action.setTypeSettings(typeSettings);
165
166 mdrActionPersistence.update(action);
167
168 MDRRuleGroupInstance ruleGroupInstance =
169 mdrRuleGroupInstancePersistence.findByPrimaryKey(
170 action.getRuleGroupInstanceId());
171
172 ruleGroupInstance.setModifiedDate(serviceContext.getModifiedDate(null));
173
174 mdrRuleGroupInstancePersistence.update(ruleGroupInstance);
175
176 return action;
177 }
178
179 public MDRAction updateAction(
180 long actionId, Map<Locale, String> nameMap,
181 Map<Locale, String> descriptionMap, String type,
182 UnicodeProperties typeSettingsProperties,
183 ServiceContext serviceContext)
184 throws PortalException, SystemException {
185
186 return updateAction(
187 actionId, nameMap, descriptionMap, type,
188 typeSettingsProperties.toString(), serviceContext);
189 }
190
191 }