@Override public Boolean doInTransaction(TransactionStatus status) { // Refresh the entity to avoid optimistic locking errors final IPortletEntity portletEntity = portletEntityRegistry.getPortletEntity( containerRequest, portletEntityId); final Map<String, IPortletPreference> targetPortletPreferences = getTargetPortletPreferences(); final Collection<IPortletPreference> values = targetPortletPreferences.values(); final boolean modified = portletEntity.setPortletPreferences( new ArrayList<IPortletPreference>(values)); if (!modified) { // Nothing actually changed, skip the store return Boolean.FALSE; } portletEntityRegistry.storePortletEntity( containerRequest, portletEntity); return Boolean.TRUE; } });
@Override public Boolean doInTransaction(TransactionStatus status) { // Refresh the entity to avoid optimistic locking errors final IPortletEntity portletEntity = portletEntityRegistry.getPortletEntity( containerRequest, portletEntityId); final Map<String, IPortletPreference> targetPortletPreferences = getTargetPortletPreferences(); final Collection<IPortletPreference> values = targetPortletPreferences.values(); final boolean modified = portletEntity.setPortletPreferences( new ArrayList<IPortletPreference>(values)); if (!modified) { // Nothing actually changed, skip the store return Boolean.FALSE; } portletEntityRegistry.storePortletEntity( containerRequest, portletEntity); return Boolean.TRUE; } });
/** * Initializes a newly created {@link PortletWindow}, the default implementation sets up the * appropriate {@link WindowState} and {@link javax.portlet.PortletMode} */ protected void initializePortletWindowData( HttpServletRequest request, PortletWindowData portletWindowData) { final IStylesheetDescriptor stylesheetDescriptor = getThemeStylesheetDescriptor(request); final IPortletEntityId portletEntityId = portletWindowData.getPortletEntityId(); final IPortletEntity portletEntity = this.portletEntityRegistry.getPortletEntity(request, portletEntityId); final WindowState entityWindowState = portletEntity.getWindowState(stylesheetDescriptor); if (persistentWindowStates.contains(entityWindowState)) { portletWindowData.setWindowState(entityWindowState); } else if (entityWindowState != null) { // Set of persistent window states must have changed, nuke the old value this.logger.warn( "PortletEntity.windowState=" + entityWindowState + " but that state is not in the set of persistent WindowStates. PortletEntity.windowState will be set to null"); portletEntity.setWindowState(stylesheetDescriptor, null); this.portletEntityRegistry.storePortletEntity(request, portletEntity); } }
/** * Initializes a newly created {@link PortletWindow}, the default implementation sets up the * appropriate {@link WindowState} and {@link javax.portlet.PortletMode} */ protected void initializePortletWindowData( HttpServletRequest request, PortletWindowData portletWindowData) { final IStylesheetDescriptor stylesheetDescriptor = getThemeStylesheetDescriptor(request); final IPortletEntityId portletEntityId = portletWindowData.getPortletEntityId(); final IPortletEntity portletEntity = this.portletEntityRegistry.getPortletEntity(request, portletEntityId); final WindowState entityWindowState = portletEntity.getWindowState(stylesheetDescriptor); if (persistentWindowStates.contains(entityWindowState)) { portletWindowData.setWindowState(entityWindowState); } else if (entityWindowState != null) { // Set of persistent window states must have changed, nuke the old value this.logger.warn( "PortletEntity.windowState=" + entityWindowState + " but that state is not in the set of persistent WindowStates. PortletEntity.windowState will be set to null"); portletEntity.setWindowState(stylesheetDescriptor, null); this.portletEntityRegistry.storePortletEntity(request, portletEntity); } }
this.portletEntityRegistry.storePortletEntity(request, portletEntity);
this.portletEntityRegistry.storePortletEntity(request, portletEntity);