13.07.2015 Views

Bouml reference manual - Fedora Project Packages GIT repositories

Bouml reference manual - Fedora Project Packages GIT repositories

Bouml reference manual - Fedora Project Packages GIT repositories

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

file:///C:/uml/BOUML/bouml_3.0/doc/TOUT.html354 of 378 07/10/2007 15:55Plug-outsTheplug-outsare the external programs written in C++ or Java interacting with BOUML, these programs may be written using BOUML itself. Tprevious chapter describe some plug-out including the code generators and code reverse.A plug-out is a very practical way to automatize treatment on the model, do not hesitate to write plug-out. I just recommend you to saveyour model before executing your plug-outs when you debug them :-) !Declaring a plug-outTo be executed, a plug-out must be declared through the tool dialog called when you select the tools settings entry of the tools menu :The first column specify how the plug-outis executed, for a C++ program you just have to give its name and may be the path depending on your environment, in Java the -cp optionallows to specify the path and the starting class is Main (except if you change the definition of the executable artifact !).The content of the second column will be displayed in the menu when your plug-out is applicable on the target item.The other columns allows to specify the kind of the items on whose the plug-out is applicable. For instance below, gpro may only beapplied on a artifact.Note that the declaration of the plug-out is saved in the file named tools, this allows you to quickly set the tools list after creating a newproject copying the tools file of an old project (this file is read when you load the project).Creating a new plug-outThe distribution of BOUML contains a project named empty, this one is a plug-out doing nothing for you point of view, in fact itimplements in C++ and Java the API allowing to interact with BOUML. To develop a new plug-out open the empty project, BOUML willask you to save it in an other project to keep empty unmodified. You may also develop a plug-out from one of the others availableplug-outs, you just have to know that these ones was developed at different step of the BOUML definition, then they do not contain allthe BOUML API and some operations may not be defined. By definition, empty contains all the API.The empty plug-out contains several already defined classes with their associated artifact, half of them are placed under the package APIBASE and implement the API with BOUML, you cannot modify them, they define the system part of a plus-out. The other half is yours,each of these user classes inherits to a system class, and sometimes a system class inherits of a user class, for instance the classesassociated to ... the classes are:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!