1
22
23 package com.liferay.portlet.pagecomments.lar;
24
25 import com.liferay.portal.kernel.util.GetterUtil;
26 import com.liferay.portal.lar.PortletDataContext;
27 import com.liferay.portal.lar.PortletDataException;
28 import com.liferay.portal.lar.PortletDataHandler;
29 import com.liferay.portal.lar.PortletDataHandlerBoolean;
30 import com.liferay.portal.lar.PortletDataHandlerControl;
31 import com.liferay.portal.model.Layout;
32 import com.liferay.portlet.messageboards.service.MBMessageLocalServiceUtil;
33
34 import javax.portlet.PortletPreferences;
35
36
42 public class PageCommentsPortletDataHandlerImpl implements PortletDataHandler {
43
44 public PortletPreferences deleteData(
45 PortletDataContext context, String portletId,
46 PortletPreferences prefs)
47 throws PortletDataException {
48
49 try {
50 MBMessageLocalServiceUtil.deleteDiscussionMessages(
51 Layout.class.getName(), context.getPlid());
52
53 return null;
54 }
55 catch (Exception e) {
56 throw new PortletDataException(e);
57 }
58 }
59
60 public String exportData(
61 PortletDataContext context, String portletId,
62 PortletPreferences prefs)
63 throws PortletDataException {
64
65 try {
66 context.addComments(Layout.class, new Long(context.getPlid()));
67
68 return String.valueOf(context.getPlid());
69 }
70 catch (Exception e) {
71 throw new PortletDataException(e);
72 }
73 }
74
75 public PortletDataHandlerControl[] getExportControls() {
76 return new PortletDataHandlerControl[] {_comments};
77 }
78
79 public PortletDataHandlerControl[] getImportControls() {
80 return new PortletDataHandlerControl[] {_comments};
81 }
82
83 public PortletPreferences importData(
84 PortletDataContext context, String portletId,
85 PortletPreferences prefs, String data)
86 throws PortletDataException {
87
88 try {
89 context.importComments(
90 Layout.class, GetterUtil.getLong(data), context.getPlid(),
91 context.getGroupId());
92
93 return null;
94 }
95 catch (Exception e) {
96 throw new PortletDataException(e);
97 }
98 }
99
100 public boolean isPublishToLiveByDefault() {
101 return false;
102 }
103
104 private static final String _NAMESPACE = "page_comments";
105
106 private static final PortletDataHandlerBoolean _comments =
107 new PortletDataHandlerBoolean(_NAMESPACE, "comments", true, true);
108
109 }