diff options
Diffstat (limited to 'liferay-integration/src')
-rw-r--r-- | liferay-integration/src/main/java/com/vaadin/osgi/liferay/PortletUIServiceTrackerCustomizer.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/liferay-integration/src/main/java/com/vaadin/osgi/liferay/PortletUIServiceTrackerCustomizer.java b/liferay-integration/src/main/java/com/vaadin/osgi/liferay/PortletUIServiceTrackerCustomizer.java index d985f55352..1353a735b5 100644 --- a/liferay-integration/src/main/java/com/vaadin/osgi/liferay/PortletUIServiceTrackerCustomizer.java +++ b/liferay-integration/src/main/java/com/vaadin/osgi/liferay/PortletUIServiceTrackerCustomizer.java @@ -182,6 +182,20 @@ class PortletUIServiceTrackerCustomizer @Override public void modifiedService(ServiceReference<UI> serviceReference, ServiceObjects<UI> ui) { + /* + * This service has been registered as a portlet at some point, + * otherwise it wouldn't be tracked. + * + * This handles changes for Portlet related properties that are part of + * the UI service to be passed to the Portlet service registration. + */ + Dictionary<String, Object> newProperties = createPortletProperties( + serviceReference); + ServiceRegistration<Portlet> registration = portletRegistrations + .get(serviceReference); + if (registration != null) { + registration.setProperties(newProperties); + } } @Override |