1
22
23 package com.liferay.portlet.pagecomments.lar;
24
25 import com.liferay.portal.kernel.lar.PortletDataContext;
26 import com.liferay.portal.kernel.lar.PortletDataException;
27 import com.liferay.portal.kernel.lar.PortletDataHandler;
28 import com.liferay.portal.kernel.lar.PortletDataHandlerBoolean;
29 import com.liferay.portal.kernel.lar.PortletDataHandlerControl;
30 import com.liferay.portal.model.Layout;
31 import com.liferay.portlet.messageboards.service.MBMessageLocalServiceUtil;
32
33 import javax.portlet.PortletPreferences;
34
35
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 throws PortletDataException {
77
78 return new PortletDataHandlerControl[] {_comments};
79 }
80
81 public PortletDataHandlerControl[] getImportControls()
82 throws PortletDataException {
83
84 return new PortletDataHandlerControl[] {_comments};
85 }
86
87 public PortletPreferences importData(
88 PortletDataContext context, String portletId,
89 PortletPreferences prefs, String data)
90 throws PortletDataException {
91
92 try {
93 context.importComments(
94 Layout.class, data, new Long(context.getPlid()),
95 context.getGroupId());
96
97 return null;
98 }
99 catch (Exception e) {
100 throw new PortletDataException(e);
101 }
102 }
103
104 public boolean isPublishToLiveByDefault() {
105 return false;
106 }
107
108 private static final String _NAMESPACE = "page_comments";
109
110 private static final PortletDataHandlerBoolean _comments =
111 new PortletDataHandlerBoolean(_NAMESPACE, "comments", true, true);
112
113 }