[MGNLUI-666] Split MagnoliaShell in a UI part and a framework part Created: 15/Feb/13 Updated: 20/Feb/13 Resolved: 19/Feb/13 |
|
| Status: | Closed |
| Project: | Magnolia UI |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 5.0 |
| Type: | Improvement | Priority: | Neutral |
| Reporter: | Tobias Mattsson | Assignee: | Tobias Mattsson |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | apiteam | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Template: |
|
||||||||||||||||
| Acceptance criteria: |
Empty
|
||||||||||||||||
| Task DoD: |
[ ]*
Doc/release notes changes? Comment present?
[ ]*
Downstream builds green?
[ ]*
Solution information and context easily available?
[ ]*
Tests
[ ]*
FixVersion filled and not yet released
[ ] 
Architecture Decision Record (ADR)
|
||||||||||||||||
| Date of First Response: | |||||||||||||||||
| Description |
|
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:
The problematic dependency is illustrated here: http://wiki.magnolia-cms.com/display/DEV/Concept+-+Alternative+ui-project+organisation |
| Comments |
| Comment by Tobias Mattsson [ 18/Feb/13 ] |
|
More steps to follow: info.magnolia.ui.admincentral.ShellImpl should be moved to info.magnolia.ui.framework.shell.ShellImpl It is however not possible to move ShellImpl because of its dependency on BaseDialogPresenter. |
| Comment by Tobias Mattsson [ 20/Feb/13 ] |
|
I used the wrong ticket for one of the commits: acf0e473ecde176350d4f1d30394504d42a9791e |
| Comment by Aleksandr Pchelintcev [ 20/Feb/13 ] |
|
I had an idea that maybe a Component part could be named as MagnoliaShellUI by probably it is not the best way to go as in Vaadin7 UI is a core class representing the root of the app. |