Login | Register
My pages Projects Community openCollabNet

argouml
Wiki: Diff for "<<Subsystem>> Reverse Engineering Subsystem"

Edit this page | Links to this page | Page information | Attachments | Refresh page

 

Differences between revisions 3 and 4

Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
(...)
Line 15: Line 17:
Import modules have to implement {{{ImportInterface}}} and have to be successfully loaded at startup of ArgoUML. (...)
Line 17: Line 21:
There is no facade for this subsystem, because no other subsystem needs to access it. The only entry point is the {{{new Import(...)}}} statement in the {{{org.argouml.uml.ui.ActionImportFromSources}}} class. There is no facade for this subsystem, because no other subsystem needs to access it, and import modules use the API. The only entry point is the {{{new Import(ArgoFrame.getInstance())}}} statement in the {{{org.argouml.uml.ui.ActionImportFromSources}}} class.

The Reverse Engineering Subsystem manages all loaded import modules. It provides a GUI for choosing the import module, selecting the directory or files to be imported, and a settings mechanism for both common and module specific settings.

Import modules are modules (instances of ModuleInterface) that implement the ImportInterface. See the <<Subsystem>> Module loader.

The Reverse Engineering Subsystem is related to the <<Subsystem>> Code Generation Subsystem in a way that import modules for some language are related to code generation modules of the same language.

Responsibilities

(...)

Package Name

org.argouml.uml.reveng

API

Import modules have to implement ImportInterface and have to be successfully loaded at startup of ArgoUML. (...)

Facade

There is no facade for this subsystem, because no other subsystem needs to access it, and import modules use the API. The only entry point is the new Import(ArgoFrame.getInstance()) statement in the org.argouml.uml.ui.ActionImportFromSources class.

Plug-in Interfaces

Design

This is a preliminary picture (created with ArgoUML 0.26.2), just a start:

<<Subsystem>> Reverse Engineering Subsystem (last edited 2008-12-11 12:07:53 -0800 by thn)