Login | Register
My pages Projects Community openCollabNet

argouml
Wiki: Diff for "Module Development"

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

 

Differences between revisions 1 and 3 (spanning 3 versions)

Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
This page is a help resource for developers that want to extend ArgoUML with modules. For some introducing information, see the page about ["Module Architecture"]. This page is a help resource for developers that want to extend ArgoUML with modules. For some information on the implementation of the module support inside ArgoUML, see the page about ["Module Architecture"], this knowledge is not required but might be useful.

= Introduction =

An ArgoUML module is a .jar archive in the {{{ext}}} subdirectory inside the ArgoUML directory, that includes as least one class that implements the {{{org.argouml.moduleloader.ModuleInterface}}} interface. (These classes are also called modules, so take care to distinguish between them depending on the context.)

 /!\ '''Hint:''' This page might leave some questions open, so it is always good to inspect the source code of existing and maintained modules. Recommended modules are the C++ module ([http://argouml-cpp.tigris.org/ argouml-cpp]) and the Java module ([http://argouml-java.tigris.org/ argouml-java]) (sources are available).
Line 5: Line 11:
 * help for setting up the development environment
 * help for setting up a module project (ant/eclipse based)
If you want to start developing a module, then you should read this section.
Line 8: Line 13:
= Extension APIs = == Requirements ==
Line 10: Line 15:
 * ContextActionFactor​y
 * ContextActionFactor​yManager
 * ImportInterface
 * ModuleInterface
 * Java SDK
 * ArgoUML executables
 * ArgoUML sources (recommended for info/debugging)
 * (some starter set of files would be great, not available yet)
 * an IDE (recommended), e.g. Eclipse

== Setting up the development environment ==

tbd

== Setting up a module project (ant/eclipse based) ==

tbd

= Extension API =

 * {{{ContextActionFactor​y}}}
 * {{{ContextActionFactor​yManager}}}
 * {{{ImportInterface}}}
 * {{{ModuleInterface}}}

(Maybe this section should become a separate page, to better serve as a reference.)

This page is a help resource for developers that want to extend ArgoUML with modules. For some information on the implementation of the module support inside ArgoUML, see the page about Module Architecture, this knowledge is not required but might be useful.

Introduction

An ArgoUML module is a .jar archive in the ext subdirectory inside the ArgoUML directory, that includes as least one class that implements the org.argouml.moduleloader.ModuleInterface interface. (These classes are also called modules, so take care to distinguish between them depending on the context.)

  • /!\ Hint: This page might leave some questions open, so it is always good to inspect the source code of existing and maintained modules. Recommended modules are the C++ module (argouml-cpp) and the Java module (argouml-java) (sources are available).

Getting Started

If you want to start developing a module, then you should read this section.

Requirements

  • Java SDK
  • ArgoUML executables
  • ArgoUML sources (recommended for info/debugging)
  • (some starter set of files would be great, not available yet)
  • an IDE (recommended), e.g. Eclipse

Setting up the development environment

tbd

Setting up a module project (ant/eclipse based)

tbd

Extension API

  • ContextActionFactor​y

  • ContextActionFactor​yManager

  • ImportInterface

  • ModuleInterface

(Maybe this section should become a separate page, to better serve as a reference.)

Module Development (last edited 2009-11-06 08:32:14 -0700 by thn)