001
014
015 package com.liferay.portlet.assetpublisher;
016
017 import com.liferay.portal.kernel.portlet.PortletLayoutListener;
018 import com.liferay.portal.kernel.portlet.PortletLayoutListenerException;
019 import com.liferay.portal.model.Layout;
020 import com.liferay.portal.model.PortletPreferences;
021 import com.liferay.portal.service.LayoutLocalServiceUtil;
022 import com.liferay.portal.service.SubscriptionLocalServiceUtil;
023 import com.liferay.portlet.assetpublisher.util.AssetPublisherUtil;
024 import com.liferay.portlet.journal.service.JournalArticleLocalServiceUtil;
025
026
029 public class AssetPublisherPortletLayoutListener
030 implements PortletLayoutListener {
031
032 @Override
033 public void onAddToLayout(String portletId, long plid) {
034 }
035
036 @Override
037 public void onMoveInLayout(String portletId, long plid) {
038 }
039
040 @Override
041 public void onRemoveFromLayout(String portletId, long plid)
042 throws PortletLayoutListenerException {
043
044 try {
045 Layout layout = LayoutLocalServiceUtil.getLayout(plid);
046
047 JournalArticleLocalServiceUtil.deleteLayoutArticleReferences(
048 layout.getGroupId(), layout.getUuid());
049
050 SubscriptionLocalServiceUtil.deleteSubscriptions(
051 layout.getCompanyId(), PortletPreferences.class.getName(),
052 AssetPublisherUtil.getSubscriptionClassPK(plid, portletId));
053 }
054 catch (Exception e) {
055 throw new PortletLayoutListenerException(e);
056 }
057 }
058
059 }