| Summary: | Architecture review for WikiText | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | David Green <greensopinion> |
| Component: | Mylyn | Assignee: | Mik Kersten <mik.kersten> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | steffen.pingel |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Bug Depends on: | |||
| Bug Blocks: | 254700 | ||
|
Description
David Green
I noticed that o.e.m.wikitext.core.WikiTextPlugin is part of the API. In Mylyn 3.0 we have moved away from making plug-in classes API since they expose methods such as start(), stop(), getPluginPreferences() etc. that should not be called by clients in most cases. We now use facade classes with static methods that allow access to singletons, a good example is TasksUi or ContextCore. The additional advantage is that the internal plug-in class that manages the life-cycle of all singletons can make an internal class available whereas the facade can expose a public interface implemented by that class. An example of that pattern is TasksUi.getRepositoryManager() which returns IRepositoryManager whereas TasksUiPlugin.getRepositoryManager() returns TaskRepositoryManager. (In reply to comment #1) > I noticed that o.e.m.wikitext.core.WikiTextPlugin is part of the API. tracking this issue with bug 260487 completed in the last conf. call |