TBN NetBeans Module

Visual creation of ADL and topology XML files for TBN with this NetBeans IDE 6.0 module.

TBN NetBeans module


  1. Download the nbm-file below and save it somewhere on your computer.
  2. Launch NetBeans IDE 6.0 (or later) available from www.netbeans.org.
  3. Go to Tools -> Plugins and click on the Downloaded tab.
  4. Click on Add Plugins... and choose the downloaded file


com-markuspage-markus-tbn-module1-0.1.7.nbm (151 kB) v. 0.1.7
com-markuspage-markus-tbn-module1-0.1.6.nbm (119 kB) v. 0.1.6
com-markuspage-markus-tbn-module1-0.1.5.nbm (116 kB) v. 0.1.5
com-markuspage-markus-tbn-module1-0.1.3.nbm (113 kB) v. 0.1.3

Getting started

After installing the module two new file types has been added. Choose File -> New File -> and choose category TBN and select any of "Empty Topology file" or "Empty ADL file".

Source code

tbn-netbeans-module-0.1.7-src.zip (204 kB) v. 0.1.7
tbn-netbeans-module-0.1.6-src.zip (162 kB) v. 0.1.6

Release notes

2008-04-06 v. 0.1.7
* Fixed the issue with file type detection in NetBeans IDE 6.1 Beta
* Implemented code generation from ADL file(s)
* Added project template
* Added class template for TBN component class
* Added class template for TBN event class

2008-03-18 v. 0.1.6
* Fixed the issue with the small Graph view window
* Replaced usages of deprecated APIs
* Changed some unchecked or unsafe operations

2008-02-21 v. 0.1.5:
* Implemented automagic saving of locations
* Implemented saving of zoom factor
* Added dialog for choosing event class of right type when adding a binding
* Added dialog for choosing handler method when adding a subscription
* Fixed issue with need for extra xmlns attribute in ADL file root element
* Fixed issue with need for extra xmlns attribute in topology file root element
* Fixed issue with the module using dependencies added in Java 6, so it should now be possible to run with JDK 5.

2008-02-11 v. 0.1.3:
* Added support for start sequences in ADL
* Added positions saving to Topology Graph
* Added zoom to Topology Graph
* Added refactoring: rename of Node in Topology Graph view now updates links
* Implemented save of field values in Topology Design view

2008-02-10 v. 0.1.2:
* Initial release

Known issues

  • Changing values in Design view does not update dependencies

  • In Graph view: When adding a new component its package name is set to package.<ComponentName>

  • The code depends on implementation versions of some NetBeans modules

  • Bug: Sometimes when removing a channel, all of its content is not removed which means you have to go into the XML and manually remove the tag channel.

  • The user is now allowed to enter an empty name of a subscription or binding which leads to strange behavior.

  • Bug: Design -> Start sequence -> components/channels -> Edit and pressing Cancel removes the entry which it should not do.

  • The topology file is identifed only by the root element "topology" which means possible future collision with other module claiming that name.

  • Module does not work in NetBeans IDE 6.1 Beta. Problem is fixed in next release (0.1.7).

  • It's not possible now to make the Graph view window higher

  • The code uses some depricated API:s

  • The code uses some unchecked or unsafe operation

  • The module does not work with JDK 5, only JDK 6 is supported in the current version
  • For the module to recognize the topology file its root element must be:
    <topology xmlns="topology.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="topology.xsd">

  • For the module to recognize the ADL file its root element must be:
    <tns:configuration xmlns="http://www.sics.se/adl" xmlns:tns="http://www.sics.se/adl">

  • Due to the need for an extra xmlns attribute in the root element of the topology file it does not pass the validation by TBN but should anyway work.

  • For the ADL file to to correctly parsed by the module all tags has to be prefixed with "tns:"

  • In Graph view: You will have to manually press "Save positions" for the locations of the nodes/components/channels to be saved. Otherwise they are back on there origional positions after leaving the Graph view.

  • In Graph view: When adding a new subscription it always gets the name sampleHandler

  • In Graph view: When adding a new binding it always gets the name sampleEvent

  • In Graph view: The zoom factor is not saved and will be restored to 100% when leaving Graph view

Requested features

  • Resize components and channels

  • When adding a compont/channel/node it should be put inside the currently visible area

  • When adding multiple bindings/subscriptions between two nodes there labels should not be put on top of each other

  • Component/ComponentFactory should have a label which makis it possible to change the componentClass in Graph view.

  • All input should be validated

  • Code generation

  • When adding a binding it should be possible to choose from a list of event classes handled by that channel

  • When adding a subscription the correct name of the handler should be set


The module is based on following the tutorials and blogs below:



GNU General Public License