[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| Re: [elk-dev] ELK Refactoring | 
| Hi elk lovers, 
 it’s review time again: 
 
 With this change people should be able to customize quite a lot of stuff already:     DiagramLayoutEngine     IDiagramLayoutConnector     ILayoutConfigurationStore     LayoutConfigurationManager     IGraphLayoutEngine     LayoutPropertySource and we could easily add more like this in the future, especially regarding the UI. 
 Maybe the most important point to understand about the change is in the invokeLayout method of DiagramLayoutEngine line 271. Here we have a transition from static code to non-static code. If that’s too strange, we could move the non-static code to a new class. 
 Miro 
 
 
 Currently you can only adapt IDiagramLayoutManagerYour second point seems to me to be a good reason.and ILayoutConfigurationStore, where the former acts as a provider for
 the latter. If we later decide to add more customization points we
 cannot use the same provider concept because that would break existing
 implementations of IDiagramLayoutManager, so we would need yet another
 extension point. The benefit of DI is that all customized classes are
 registered through a Guice Module, so
 1. we have a consistent concept for all customization points,
 2. it’s no problem to add more customization points later.
 
 My expectation is that by making customization easier the long-term
 effect will be more flexibility and thus more users, since a tool is
 more likely to be discarded if it cannot be adapted for the needs of an
 application.
 
 
 | 
Attachment:
signature.asc
Description: Message signed with OpenPGP using GPGMail