Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 257592

Summary: Architecture review for WikiText
Product: z_Archived Reporter: David Green <greensopinion>
Component: MylynAssignee: 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 CLA 2008-12-04 13:27:33 EST
a wiki page with points:

* what architecture is
* coupling between plug-ins
* public API
** most interesting things that can be reviewed in 1 hour
* test coverage
Comment 1 Steffen Pingel CLA 2009-01-08 18:25:45 EST
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.
Comment 2 David Green CLA 2009-01-08 19:11:43 EST
(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
Comment 3 David Green CLA 2009-01-12 19:12:33 EST
completed in the last conf. call