Uploaded image for project: 'Magnolia UI'
  1. Magnolia UI
  2. MGNLUI-666

Split MagnoliaShell in a UI part and a framework part

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Neutral Neutral
    • 5.0
    • None
    • None

      The current situation is that we have an interface Shell that is part of ui-framework. Everybody is supposed to be using it to interact with the Shell (or via AppContext). However, the implementation of the interface is a base class MagnoliaShellBase, which is a vaadin component, and a sub class MagnoliaShell in admincentral. It has not been possible to extend the Shell interface with everything that it needs to provide, like dialogs, because that would have introduced circular dependencies. The core of the problem is that the UI part of it should be a component in its own, not something you inherit from, thereby cutting the dependency between ui-common-widgets and ui-framework.

      To do this we need to:

      • Make MagnoliaShellBase not abstract.
      • Add a Listener interface in MagnoliaShellBase
      • Make MagnoliaShell install a listener in MagnoliaShellBase
      • Make MagnoliaShell delegate to MagnoliaShellBase
      • Rename MagnoliaShell to ShellImpl
      • Rename MagnoliaShellBase should to MagnoliaShell

      The problematic dependency is illustrated here: http://wiki.magnolia-cms.com/display/DEV/Concept+-+Alternative+ui-project+organisation

        Acceptance criteria

              tmattsson Tobias Mattsson
              tmattsson Tobias Mattsson
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Task DoD