Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

These interfaces and classes are in magnolia-ui-framework. The implementation AppController and the location handling are in magnolia-ui-admincentral.

Proposed Implementation

Image RemovedImage Added

From An App Developers perspective

...

  1. Convert abstract *Apps (AbstractApp, AbstractSubApp, ...) to concrete classes (BaseApp, BaseSubApp, ...)
  2. Interface for AppFrameView (AppView), inject interface into AbstractApp
  3. Make AbstractApp listen to AppFrameView Events (on tab close, on tab change)
    1. delegate to AppContext
  4. BaseApp
  5. AppView.Listener implemented by AppContext -> listens to AppView events
    1. remove tab dependency from events
  6. Remove vaadin dependencies from AppContext
  7. Renaming AppContextImpl

...

  1. Rename AppContextImpl ->AppInstanceControllerImpl
  2. AppInstanceControllerImpl implements two interfaces:
    1. AppContext for contextual information relevant for the app 
    2. AppInstanceController exposing the contract to the AppController 
  3. AppController: use AppDescriptorRegistry instead of AppLauncherLayoutManager

Missing:

  • info.magnolia.ui.framework.app.AppController#getCurrentAppInstanceController
    • should go
  • javadoc
  • Create app framework specific interfaces for e.g. AppView, SubAppView
    • SubAppView interface is still missing
  • stop method in subapp

Maybes

  1. remove vaadin dependencies from magnolia-ui-framework
    1. Move info.magnolia.ui.framework.view.View into vaadin-integrationCreate app framework specific interfaces for e.g. AppView, SubAppView

Additional Information

Documentation

...