Class VersionedRuleEditorAreaLogicHandler

java.lang.Object
com.hybris.cockpitng.widgets.baseeditorarea.DefaultEditorAreaLogicHandler
de.hybris.platform.ruleenginebackoffice.widgets.editor.handlers.VersionedRuleEditorAreaLogicHandler
All Implemented Interfaces:
com.hybris.cockpitng.widgets.baseeditorarea.EditorAreaLogicHandler

public class VersionedRuleEditorAreaLogicHandler extends com.hybris.cockpitng.widgets.baseeditorarea.DefaultEditorAreaLogicHandler
The VersionedRuleEditorAreaLogicHandler enriches the DefaultEditorAreaController behaviour by hooking into extension point performSave(WidgetInstanceManager, Object)}. When a backoffice user modifies the "frozen" (RuleStatus.PUBLISHED, or RuleStatus.INACTIVE) AbstractRuleModel version and hit Save button, a new version of the rule is being created and the newly created AbstractRuleModel version becomes an active object in the editor widget. Additionally an event that is responsible for refreshing list view widget is being published
  • Constructor Details

    • VersionedRuleEditorAreaLogicHandler

      public VersionedRuleEditorAreaLogicHandler()
  • Method Details

    • performSave

      public Object performSave(com.hybris.cockpitng.engine.WidgetInstanceManager widgetInstanceManager, Object currentObject) throws com.hybris.cockpitng.dataaccess.facades.object.exceptions.ObjectSavingException
      Specified by:
      performSave in interface com.hybris.cockpitng.widgets.baseeditorarea.EditorAreaLogicHandler
      Overrides:
      performSave in class com.hybris.cockpitng.widgets.baseeditorarea.DefaultEditorAreaLogicHandler
      Throws:
      com.hybris.cockpitng.dataaccess.facades.object.exceptions.ObjectSavingException
    • isEditorWidgetReloadRequired

      protected boolean isEditorWidgetReloadRequired(Object saved)
      Parameters:
      saved - - saved object
      Returns:
      true if an object in the editor widget needs to be swapped by the newly created one otherwise false
    • notifyNewItemCreated

      protected void notifyNewItemCreated(AbstractRuleModel rule)
      Publish an event that allows to refresh other widgets in the backoffice
      Parameters:
      rule -
    • getRuleService

      protected RuleService getRuleService()
    • setRuleService

      public void setRuleService(RuleService ruleService)
    • getEventQueue

      protected com.hybris.cockpitng.core.events.CockpitEventQueue getEventQueue()
    • setEventQueue

      public void setEventQueue(com.hybris.cockpitng.core.events.CockpitEventQueue eventQueue)