Navigation Area The latest news about Team Synergy Information about Projects undertaken by Team Synergy Team Synergy Member Profiles Team Synergy Member Management Team Synergy Project-related Documentation Team Synergy Meetings Archive Downloads relating to Team Synergy Projects Funny Stuff Team Synergy Logo
Icon Navigation Home Help / Frequently Asked Questions Products Site Site Map Email the Webmaster

Documentation
Documentation Home
BKernel Javadoc Documentation (No Frames)
Cohesion - Client User Guide
Cohesion - Administration Manual
Configuration Management
CVS Documentation
Debug Package Documentation
Demerit Point Scheme
Management Procedures
Package Description
Project Plans and Procedures
Samba
Software Design Spec.
Software Requirements Spec.
Syndicate User Manual
Technical Style Standards
Web Document Style Standards
Work Log & Weekly Plan Proc.
WWW Document Template
 
Table of Contents
1. Scope
1.1 System Objectives
1.2 Major Software Functions
1.3 Major Design Constraints and Limitations
2. Reference Documents
2.1 Project Documentation
2.1.1 Project Plan
2.1.2 SRS - Software Requirement Specification
3. Industry Standards
3.1 Encryption
3.2 GUI Industry Conventions
3.3 Error/Exception Handling
3.4 Security


4. Architecture Design

4.1 Kernel/Plugin Architecture
4.2 Client/Server Architecture
5. Package Design

6. File Structure and Global Data

6.1 External File Structure
6.1.1 Logical Structure
6.1.2 Logical Record Description
6.1.3 Access Method
7. Requirements Cross Reference

8. Test Provisions

8.1 Unit Test Provisions
8.1.1 Control Structure Test Provisions
8.1.2 Software Function Test Provisions
8.2 Integration Test Provisions
8.3 Special Considerations
9. Interface Design
9.1 Input Devices
9.2 Output Devices
9.3 Dialogue Specification
Appendix A

References

 
Software Design Specification

Version 1.0

Edition 1


Document ID:  SDS
Author(s):  Danny Goulas,
Ronny Lay,
Jared Clinton,
Daniel Woodhouse
Reviewed by:  Danny Goulas,
Simon Hutchison,
George Panagiotopoulos,
Jaycee Phua
Date:  15 October 1999 



Revision History
Date Modifications Reason Version
1999.08.12 Template developed to meet TSS (DW) Intitial setup of document. 0.1d
1999.08.18 Spelling and Grammar revision (JP) Draft document content-verification 0.11d
1999.10.15 Document Collation (DG) Put all seperate sections into one document 0.75d
1999.10.18 Document Review (DG) Final Document Collation and Review 1.0


Table Of Contents
1. Scope
1.1 System Objectives
1.2 Major Software Functions
1.3 Major Design Constraints and Limitations
2. Reference Documents
2.1 Project Documentation
2.1.1 Project Plan
2.1.2 SRS - Software Requirement Specification
3. Industry Standards
3.1 Encryption
3.2 GUI Industry Conventions
3.3 Error/Exception Handling
3.4 Security


4. Architecture Design

4.1 Kernel/Plugin Architecture
4.2 Client/Server Architecture
5. Package Design

6. File Structure and Global Data

6.1 External File Structure
6.1.1 Logical Structure
6.1.2 Logical Record Description
6.1.3 Access Method
7. Requirements Cross Reference

8. Test Provisions

8.1 Unit Test Provisions
8.1.1 Control Structure Test Provisions
8.1.2 Software Function Test Provisions
8.2 Integration Test Provisions
8.3 Special Considerations
9. Interface Design
9.1 Input Devices
9.2 Output Devices
9.3 Dialogue Specification
Appendix A

References


1. Scope

1.1 System Objectives

The objectives of this document are to provide a basis for the implementation of the following:

  • System Design
    • Design Overview
    • Module Design
  • Interface Design
    • Input Devices
    • Output Devices
    • Dialogue Specification
  • Testing Provisions
    • Unit Testing
    • Integration Testing
  • Interface Usability Evaluation
1.2 Major Software Functions

The major software functions provided by the system are:

  • User management: Create and maintain a list of users who can use the system.
  • Messaging: e-mail messages can be sent and direct messages can be sent and received.
  • Address book: Both a global and a local address book can be maintained.
  • Project management: A project can be stored locally or remotely. A project can contain a number of models.
  • Edit Models: The models are the main functionality of the system.  Each model represents a semantic net which is drawn using a certain meta-model.
  • Meta-model: The meta-model architecture allows diagrams to be customised to incorporate enhancements, or new meta-models can be created to allow new diagrams to be created. Such diagrams might be entity-relation diagrams or state transition diagrams.
  • File Management: Both projects and models can be stored locally for individual use or stored remotely so that a number of people can access them. If a more than one person uses a remote file, then a Concurrent Versioning System is used to maintain one master copy, and changes made are integrated into this copy. This way, users do not need to use any locking and if a conflict occurs, only one person needs to decide which parts of the conflicts to use.
1.3 Major Design Constraints and Limitations


General design/implementation constraints include:

  • The software system will run under Windows NT 4.0.
  • All code shall be written in Java 2.
  • Text files shall be used for all data storage and reporting.
  • Time.
Although the system should run on any Java 2 compatible platform, it will only be supported on Win32 platforms.
 

2. Reference Documents

2.1 Project Documentation

2.1.1 Project Plan

The Project Plan was used extensively throughout the creation of this document. The product was developed according to these plans and procedures. The Project Plan details the crucial aspects of the development process. More specifically it outlines the initial system development plan, configuration management plan and procedures, development support environment, verification and validation, testing plan, quality assurance process plan, documentation plan, delivery plan, distribution plan and marketing plan.

2.1.2 SRS - Software Requirement Specification

The Software Requirements Specification details the functional and performance requirements for the computer software to be developed by Team Synergy.  It is intended to supply sufficient software requirement information to the Client to establish a solid foundation for subsequent software assessment and approval. The SRS provides an excellent starting block for the Software Design Specification. All elements outlined in this document are extensions to those functional requirements outlined in the SRS.
 

3. Industry Standards

3.1 Encryption

All network data transfers (client to server, server to client) are encrypted by the sender and decrypted by the reciever on the fly (real-time). To enhance system customisation, any type of encryption can be plugged into Cohesion, for that matter, any kind of filtering device on the Network Layer can be plugged into Cohesion. This allows administrators of the system to upgrade / downgrade network security as desired. However, all machines on the network must be running the same network security plugins. Passwords are protected using standard UNIX one-way password encryption.

3.2 GUI Industry Conventions

There have been a number of industry conventions implemented in the development of the product's GUI. Most were based on the conventions set by Microsoft Windows. The menu set has such conventional features as cut, copy, paste, undo, redo, help / about, and the commonly associated shortcut key combinations (ctrl-z, ctrl-x, ctrl-c, ctrl-v, F1, etc).
 

3.3 Error/Exception Handling

All errors outside of the oprerating system throw custom exceptions. These exceptions are all handled gracefully by the software product and will not forceably or undesireably terminate execution of the application. Exceptions, critical or otherwise, are reported to the user via a combination of pop-up dialogs, status messages, and messages displayed by the command prompt.
 

3.4 Security

Team Synergy have attempted to identify all possible security issues to a reasonable extent. All identified security issues have been addressed. Wherever possible sensitive data has been encrypted, and user access privileges are strictly adhered to. All network connections are secure, with data encrypted / decrypted on the fly (See section 3.1). There are two security levels, user and administrator. While accounts with administrator privilages can access all features of the system, user accounts have limited access to such features as User Manager, remote commands, and versioning directory structure modification.
 
 

4. Architecture Design

Cohesion is based on a client/server architecture. The core of the architecture is the kernel which is responsible for loading plugins and dispatching command events.

4.1 Kernel/Plugin Architecture

The kernel reads a configuration file specified on the command line. If no file is specified then the default modules.conf file is used. The configuration file specifies a list of plugins to load. Each plugin then registers itself with the kernel, so it can receive messages. Once all the plugins have been loaded the kernel sends out a boot event to all the registered plugins.

Plugins can communicate with each other by passing a command event to the kernel to be dispatched. The kernel then forwards this event to all registered plugins. A plugin can either process or ignore a dispatched event. The plugin can return information to the originating plugin by calling the completion object for the specified event.
 

4.2 Client/Server Architecture

The architecture was designed specifically to support transparent client/server interaction. On the client side, the client plugin allows connection to a remote server using TCP/IP. Events can then be sent over the network to the remote kernel. Completion objects are also supported, so when the event has been processed, the completion object is executed on the client side.

The server plugin allows many clients to connect to it. Events are received from the network and sent to the kernel. It is also possible to send events from the server to an individual client, or broadcast to all clients.

The first event the client sends to the server is an authentication event. If the authentication fails the connection is immediately closed.

There is no limit on the number of events which can be outstanding at any time.

It is possible for each plugin to register a filter which can modify the network stream to allow for services such as encryption.
 

5. Package Design

Address Book [au.edu.swin.synergy.plugin.addressbook]

The Address Book plugin provides a GUI and management of the Address Book.

The Address Book GUI provides the user interface to add/remove address book entries which contain the user name and email address. This user interface can be displayed through the Messaging menu option or from the To: button in the send message dialog.

The Address Book Manager provides the interface between the GUI and the Address Book and processes the Create/Retrieve/Update/Delete operations. The client and server each have an Address Book Manager however the Server Address Books entries are global and can be seen by all the clients.
 

Other plugins used are:

  • au.edu.swin.synergy.debug
  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.lib
  • au.edu.swin.synergy.plugin.addressbook.event
  • au.edu.swin.synergy.plugin.client.event
  • au.edu.swin.synergy.plugin.command.event
  • au.edu.swin.synergy.plugin.dialect
  • au.edu.swin.synergy.plugin.mod13.event
  • au.edu.swin.synergy.plugin.server.event
  • au.edu.swin.synergy.plugin.userdb
  • au.edu.swin.synergy.plugin.userman.event


Broadcast Client [au.edu.swin.synergy.plugin.broadcastcli]

The Broadcast Client plugin starts its own thread to communicate with the broadcast server. It collates a list of available servers on the local area network. A command line option is also available with this plugin.

The input event handled by the Broadcast Client plugin is GetServers. There are no outputs or events dispatched by the Broadcast Client plugin.

A list of unique servers is maintained.  When a duplicate is detected, it is discarded.

On the Broadcast Client startup/boot, a notification request is broadcast to the network. Any time that a server notification is received, the server is added to the list. This change is automatically reflected in any list on the GUI.

Other plugins used are:

  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.kernel.event
  • au.edu.swin.synergy.plugin.broadcastsvr
  • au.edu.swin.synergy.lib
  • au.edu.swin.synergy.plugin.broadcastcli.event
  • au.edu.swin.synergy.debug
  • au.edu.swin.synergy.plugin.command
  • au.edu.swin.synergy.plugin.command.event

Broadcast Server [au.edu.swin.synergy.plugin.broadcastsvr]

The Broadcast Server plugin starts its own thread to listen for broadcast requests from each of the clients. It responds after receiving the request. On startup it sends a broadcast message to all nodes on the local area network that it has been started.

There are no inputs events handled and no outputs events dispatched by the broadcastsvr.

On startup/boot, a notification is broadcasted to the network.  Whenever a server request broadcast is detected, a responce is sent back to the originating machine.

Other plugins used are:

  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.debug
  • au.edu.swin.synergy.lib








Client [au.edu.swin.synergy.plugin.client]

The Client Side Network plugin is a client side event redirector. It waits for the client to make a request to the server, and then sends that request to the server. This module also handles logging in and logging out to the server, and also listens for events coming from the server and distributes the event to the other modules on the client side.

The inputs or events handled by the client plugin are Login events, Logout events, and events which need to be sent to the server. The outputs or events dispatched by the client plugin are Login Complete and Logout Complete. The client also calls completion objects for events returning from the server.

The client maintains a hashtable of outstanding events.  Each event which is redirected to the server is assigned a unique ID and added to the hashtable.  The ID is used to locate the original object in the hashtable when the event is being completed.  Once the event has been completed, it is removed from the hashtable of outstanding events.

Other plugins used are:

  • au.edu.swin.synergy.debug
  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.lib
  • au.edu.swin.synergy.plugin.client.event
  • au.edu.swin.synergy.plugin.command
  • au.edu.swin.synergy.plugin.command.event
  • au.edu.swin.synergy.plugin.server
  • au.edu.swin.synergy.plugin.server.event
  • au.edu.swin.synergy.plugin.userdb
  • au.edu.swin.synergy.plugin.userdb.event

Client GUI [au.edu.swin.synergy.plugin.clientgui]

The Client GUI is used to display the menu items for logging in and logging out, with a login status bar. The Client GUI uses the Client Side Network plugin to do all the processing.

The input events handled by the Client GUI are Login Complete and Logout Complete. The output events dispatched by the Client GUI are Login, Logout and FindServers.

On creation, menus are registered and are enabled and disabled based on the current login state. When login is selected, a dialog is displayed with a list of available servers, prompting for username and password.  This information is then dispatched in a Login event.

Other plugins used are:

  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.plugin.client.event
  • au.edu.swin.synergy.plugin.mod13.event
  • au.edu.swin.synergy.plugin.server
  • au.edu.swin.synergy.plugin.userdb.event
  • au.edu.swin.synergy.plugin.broadcastcli.event
  • au.edu.swin.synergy.plugin.broadcastcli
  • au.edu.swin.synergy.debug
  • au.edu.swin.synergy.plugin.userdb
  • au.edu.swin.synergy.plugin.command.event
  • au.edu.swin.synergy.plugin.command
  • au.edu.swin.synergy.lib
  • au.edu.swin.synergy.plugin.mod13.bwt
  • au.edu.swin.synergy.plugin.dialect







  • Command Line [au.edu.swin.synergy.plugin.command]

    The Command line plugin allows text based commands to be entered and outputs text to the command line. Commands can be dynamically added and removed at run-time and can store environmental variables.

    The input events handled by the Command line plugin are EnableRemoteCommands, ExecuteCommand, GetEnvironment, HandleStandardOutEvents, RegisterCommand, UnregisterCommand, SetInputOutputStreams and StandardOutput. The output events dispatched by the Command line plugin are ExecuteCommand and RegisterCommand.

    All registered commands are kept in a hashtable. Commands are read from the input stream which is by default System.in but can be re-assigned. Once a command has been read, it is parsed into a sentence.  The first word is used to find the appropriate command in the hashtable. The command is then invoked and the rest of the sentence is passed in as parameters to the command.

    The core set of default commands with their descriptions are in the table below.
    Command
    Description
    quit exits application
    load loads a plugin passed in as an argument
    unload unloads a plugin passed in as an argument
    list returns a list of currently loaded plugins
    help returns help on available commands
    exec runs a script passed in as an argument
    debug toggles debug on/off
    set set an environment variable passed in as an argument
    echo return the current value for an environment variable passed in as an argument
    history returns the command history
    r executes a command on the server passed in as an argument
    ! execute a native application

    Other plugins used are:

    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.plugin.test2.event
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.plugin.server.event
    • au.edu.swin.synergy.plugin.userdb

    Command GUI [au.edu.swin.synergy.plugin.cmdgui]

    The Command GUI plugin is the interface to the command line.

    The are no input events handled by the Command GUI plugin. The output event dispatched by the Command GUI plugin is SetInputOutputStreams.

    When the Enter key is pressed, the line of input is passed to the input stream.

    The Command GUI plugin registers with the Window Manager to display the command line window.

    Other plugins used are:

    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.plugin.test2.event
    • au.edu.swin.synergy.plugin.mod13.event
    • au.edu.swin.synergy.plugin.dialect
    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.lib








    Diagram [au.edu.swin.synergy.plugin.diagram]

    This plugin takes care of all everything which is related to diagram. One example of this would be the display of Drawables on the viewport. Apart from that, it also stores drawables, allow other plugins to connect to the viewport, and interacts with the drawable palette.

    This plugin requires the module 'au.edu.swin.synergy.kernel.BPlugin' as one or more of its classes extends it.

    There is a command event - BRegisterViewportCE - which is handled by this plugin. This command event is sent by other plugin to register a viewport. On the other hand, this plugin dispatches two comand events - BAddWindowCE and BAddMenuItemCE. Event BAddWindowCE adds a window to the window manager, whereas BAddMenuItemCE adds room menun item to the menu manager.

    In summary,
    Input (event handled) = BRegisterViewportCE
    Output (events dispatched) = BAddWindowCE, BAddMenuItemCE

    Package diagram is made up of the following classes:

    • BDiagramPlugin - used to store all common diagrams setting and attributes. It contains the main tool palette, and it's a managing plugin. It extends BPlugin as it is a plugin. Any class that is a plugin must extend class BPlugin.
    • BDrawable - the abstract super class for anything that can be drawn in a viewport. It provides functions for transforming and rendering on the graphics. Other functionality of class BDrawable includes Mouse Hit Testing, Loading, Saving, Selection, Sizing, and moving. It implements 'icon' so that drawing to the button is possible, 'saveable' so that the node, shape, and arc can be saved.
    • BDrawableButton - is just a Drawable Button that stores drawable in it. Drawable is anything that can be drawn in a viewport. When user clicks on a Drawable Button, then click on the drawing area, whatever Drawable (node, arc) the button stores will be drawn.
    • BDrawablePalette - is basically just a palette for all the Drawables. More precisely, it is a palette for the Drawable buttons. It has a list of Drawable buttons, and it gets a list of Drawable buttons from the diagrams. Class BDrawablePalette implements interface MouseInputListener because the list Drawable buttons that the palette contains can be selected using a mouse.
    • BViewport - is a rendering window that displays Drawable. It has grid, and user may add Drawable to it. Viewport interacts with Drawable Palette as Drawables displayed on viewport may be selected from the Drawable Palette. A viewport may display all Diagram Drawables. It is also used to add Drawables to Diagram. It is important to understand that viewport does not perform any storing, however Diagram does. It implements MouseInputListener as activities that may be performed on the viewport such as dropping of Drawables, moving, and re-sizing may be carried out using a mouse.

    • Whereas it implements interface BView for the purpose of Height, Width, and Depth.
    The following class diagram shows how the various classes interacts:








    The following is a description of the above diagram in point form:

    • Diagram plugin loads itself in and waits for viewport to register itself.
    • Other Plugins creates viewport.
    • The viewport is registered to the diagram plugin via the BRegisterViewportCE.
    • Each viewport looks onto a diagram. Viewport displays diagram.
    • When the viewport gets focused, it tells the drawable palette what to draw (everyting that can be displayed).
    • Diagram stores drawables.
    • Drawable palette tells the drawable button to draw the drawable on the button.
    • Each button drawable in it.
    Dialect [au.edu.swin.synergy.plugin.dialect]

    This plugin has 2 sides, the plugin, which dispatches events, and the static methods contained within the classes.

    The plugin begins by registering a panel with the preferences plugin via an Add Preferences command. The preferences panel provides a means for the user to change the current locale and consequently the language the User Interface is displayed in. When the dialect plugin receives a preferences updated command, it dispatches a dialect change event to all plugins that they need to update their interface.

    The static methods provide ways to read the relevant properties file and return the appropriate values for the current locale. It also provides a means for formatting compound messages (a string containing variables which are provided at runtime).
     

    Other plugins used are:

  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.kernel.event
  • au.edu.swin.synergy.lib
  • au.edu.swin.synergy.lib.io
  • au.edu.swin.synergy.plugin.dialect.event
  • au.edu.swin.synergy.plugin.mod13.bwt
  • au.edu.swin.synergy.plugin.prefs.event

  • Direct Messaging Server [au.edu.swin.synergy.plugin.directsvr]

    The Direct Messaging Server plugin is loaded on the server and allows messages to be sent between logged on clients. The Direct Messaging Server communicates by listening for Mail events. All Mail events have a "container" object which contains all the fields relevant to a message ie. sender, receiver, subject, message, time spent, etc. The Direct Messaging Server detects the absence of the '@' symbol which indicates it is not an SMTP message. If it is not an SMTP message, it detects whether the user is logged in to obtain their connection ID. It then dispatches a Direct Mail event to the client utilising the connection ID.
     

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.directsvr.event
    • au.edu.swin.synergy.plugin.mailclient
    • au.edu.swin.synergy.plugin.server
    • au.edu.swin.synergy.plugin.server.event
    • au.edu.swin.synergy.plugin.smtpsvr.event
    • au.edu.swin.synergy.plugin.userdb

    Encryption [au.edu.swin.synergy.plugin.crypt]

    The Encryption plugin uses cryptography to make the communication between clients and servers secure. The final cryptographic method is yet to be determined.

    There are no input events handled by the Encryption plugin. The output event dispatched by the Encryption plugin is RegisterEvent.

    Data is read from the appropriate stream then either encrypted or decrypted. Initial key exchange can be done and is transperant to any higher layer, such as the networking plugins.

    Other plugins used are:

    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.plugin.command
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.lib.io
    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.plugin.server
    • au.edu.swin.synergy.plugin.server.event
    • au.edu.swin.synergy.plugin.diagram
    • au.edu.swin.synergy.math








    Help [au.edu.swin.synergy.plugin.help]

    This plugin provides help structure for plugins to register help files. For example, if a new plugin is implemented and the developer wishes to register its help system, then the .html help files can be sent to Help, evething will be taken care of by Help and updated automatically, for example: table of contents, search, and so on.

    Module used:

    • au..edu.swin.synergy.kernel.BPlugin
    An event handled by this plugin is the BRegisterHelpCE. This command event is dispatched by other plugin when they need to register their help system. Whereas event dispatch by plugin Help are BAddMenuCE which adds a menu to the menu bar on the top, and BAddWindowCE which adds a window so that a help window can be displayed.

    In summary,
    Input (event handled) = BRegisterHelpCE
    Output (event dispatched) = BAddMenuCE and BAddWindowCE

    Plugin Help has the following classes:

    • BCohesionAboutPanel - constructs the standard About box; About Cohesion. It displays information such as copy Right, Software Version, and so on.
    • BContentTab - builds the 'Table of Contents' tab in the help menu, where everything is displayed in tree structure.
    • BFindTab - allows search in HTML files through keyword(s).
    • BHelp - sets up the Help plugin so that it may be registered with the Cohesion system. Bhelp also captures events and provide correct functionality.
    • BHelpItem - used to encapsulate Uniform Resource Locator (URL) descriptions which is displayed in tree or list.

    • It implements Comparable so that Help Items can sorted within a list.
    • BHelpManager - This class manages all components to do with help.
    • BHelpTabbedPane - This class is to contain Find, Index, Content.
    • BHelpTreeModel - provides standard function to make easy to create new helptree structure so that one can register new help system.
    • BHelpUtil - is a basic class which contains many static functions which are used through all help class. It reduces code duplication.
    • BHelpViewpane - is a panel which displays HTML documents. It takes care of history and hpypertext functionality.
    • BIndexTab - displays a list of all items been registered. It also provide simple search functionality.
    The following class diagram show how the varrious classes in the Help plugin interacts:









    Mail Client [au.edu.swin.synergy.plugin.mailclient]

    The Mail Client plugin is client related and provides an interface for sending SMTP/Direct Mail and viewing/receiving Direct Mail. The Mail Client GUI can be displayed through the Send Message menu item in the Messaging menu, which dispatches a Direct Mail event to be received by the Mail GUI to display the window. To send a message the receivers are selected from the Address Book. When a message is sent, a Mail event is dispatched. When a Direct Message is received, the Mail GUI receives a Direct Mail event containing the message details which are then displayed. Each Direct Message received during the life of the current session is saved. The previous messages received can be viewed through the dialog.
     

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.addressbook.event
    • au.edu.swin.synergy.plugin.command
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.plugin.dialect
    • au.edu.swin.synergy.plugin.directsvr.event
    • au.edu.swin.synergy.plugin.mod13.event
    • au.edu.swin.synergy.plugin.prefs.event
    • au.edu.swin.synergy.plugin.smtpsvr.event

    Meta-Modeller [au.edu.swin.synergy.plugin.metamodeller]

    This plugin is a definition of what a model can be made up of.
    It defines what can belong to a model, for example; the type of node, arc, and rules that belong to a model. How they interact with each other. How inheritance, association, and class should be done.

    Modules Used

    • au.edu.swin.synergy.plugin.metamodeller.BCreateElement
    • au.edu.swin.synergy.plugin.metamodeller.BMetaElement
    • au.edu.swin.synergy.lib.io.BSaveable
    • au.edu.swin.synergy.kernel.BPlugin
    This plugin does not handle any event. All input is user input. However it dispatches an event - BAddWindowCE.

    In summary,
    Input (event handled) = none. All other input is user input. Output (event dispathed) = BAddWindowCE
     

    Meta-modeller is made up of the following classes:

    • BCircRule - rule that determines whether an arc is allowed or not to have circular reference. It defines a lookup table and checks whether it allows circular referencing. Basically it takes care of circular referencing in arcs, for example; circular inheritance is not allowed.
    • BConnectNodeRule - rule that define how nodes should be joined. An example of this would be node A can only join to node B only via arc C. It specifies node connection rule. It allows the specification of start node, arc, and end node.
    • BCreateElement - a panel to allow users to create new Meta elements. It also provides means to add properties to these Meta elements.
    • BEditElement - provides the Graphical User Interface for editing an element.
    • BMaxRule - used to determine the maximum number of arcs which can come into a node or out of a node.
    • BMetaArc - This is an empty class. It is only used for type checking.
    • BMetaElement - describes a meta-element (such as a node or an arc)from a conceptual point-of-view. That is, an identifying name such as class, package, inheritance etc), and a list of properties that belong to the element.
    • BMetaGui - a class which supplies the gui for creating and editing.
    • BMetaModel - the metamodel that describes what a model can be made out of. It is a container for meta element. Class BMetaModel implements Serializable so that sending data in a stream is possible.
    • BMetaNode - is an empty class and it is only used for type casting.
    • BMetaRule - an empty class and is only used for type casting purpose.
    • BPropListModel - provides the Graphical User Interface for the property list model. It extends AbstractListModel because it provides the Graphical User Interface for the property list.
    • BRuleGui - a panel for the rule builder. It allows the automatic change of the corresponding Graphical User Interface depending on which item was selected.
    The following is the class diagram for the meta-modeller plugin:











    The description for the above diagram is as follow:

    • BMetaModel is made up of collection of elements.
    • BMetaElement can be node, arc, and rule.
    • User may specify the rules - BCircRule, BConnectRule, and BMaxRule - and when a meta-element is created, it gets evaluated against the rules specified. Therefore BCircRule, BConnectRule, and BMaxRule are the evaluators.

     

    Modeller [au.edu.swin.synergy.plugin.modeller]

    This package is used for drawing all the models. It is different from just square, shapes, etc. Modeller is not a simple model. It is a way of drawing models given a package and a meta model.

    This plugin uses two other modules, they are:

    • au.edu.swin.synergy.plugin.modeller.BModelElement
    • au.edu.swin.synergy.lib.io.BSaveable
    Plugin modeller does handle or dispatch any event. Therefore,
    Input (event handled) = none
    Output (event dispatched) = none

    Plugin modeller is made up of the following classes:

    • BModel - is the main data structure for the models that appear on screen. It has a reference to the data model so that it knows what can and cannot be drawn. BModel stores Drawables as they are added. These added Drawables are then drawn by the viewport. BModel implements interface BTreeNode so that it can be drawn in a tree view. Whereas it implements the BDiagram interface for Drawable storage.
    • BModelArc - A class for arc on the model. It has a difference to a package arc. It extends 'BModelElement' because it's a model element. It implements the BSaveable interface for saving purposes.
    • BModelElement - an abstract super-class for anything that can be drawn on the model. E.G. arc, node.
    • BModelNode - A class for node on the model.
    • BModelEditor - a viewport by which models are showed.







    Packager [au.edu.swin.synergy.plugin.packager]

    This plugin is used for building notation. It specifies notation for the meta model. New notation can be created using packager. However a meta model must be selected to be based on. There are two section to this packager. The first section allows user to specify what they wish to have in their notation, such as class, interface, node, arc, and so on. The second section is the notation builder, which enables user to specify the shapes for those elements defined earlier on.

    Modules Used:

    • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE
    • au.edu.swin.synergy.lib.BTreeNode
    • au.edu.swin.synergy.lib.io.BSaveable
    • au.edu.swin.synergy.plugin.Diagram.BDrawable
    • au.edu.swin.synergy.plugin.diagram.BDiagram
    • au.edu.swin.synergy.kernel.BPlugin
    Packager does not handle any event at all, however it dispatches a Register Viewport event registers the viewport with the diagram.

    In summary,
    Input (event handled) = none
    Output (event dispatched)= Register viewport

    Plugin Packager has the following classes:

    • BNewPackageDialog - this will allow the user to specify the details of the package they are about to create. They can give it a name, specify the meta model it is based on and various other options.
    • BPackageArcEditor - provides the Graphical User Interface for editing package arc.
    • BPackageMenu - provides a menu for the packager plugin. It provides the menu elements for the 'Meta Model' menu.
    • BPackageModel - data structure for the package model. keeps track of the p-nodes, p-arcs, and p-terminators that make up the package. Also has a meta-model. Implements the TreeModel interface, so that the data can be viewed from inside a JTree.
    • BPackageModelBranch - the container for package element. It implements the BTreeNode as it needs to construct a tree structure. Basically it allows the package element - node, arc, terminators - to be expanded in a tree.
    • BPackageNode - provides the graphical representation of the node. It extends BDrawable because package node is a drawable.
    • BPackageNodeDiagram - this class is basically the diagram for the package node. It is the diagram for creating package node. For example, As user draw the shape of the drawable, it is added to the package node diagram.
    • BPackagePanel - the tab pane for containing all the tabs: node, arc, and terminators tab.
    • BPackagePlugin - in controller for the packager plugin. Is plugin allows the user to create and it packages for use with the modeller plugin.
    • BPackagerPrefs - supplies the panel to be dispalyed in the prefernces section. Allows user to specify the colors to be used.
    • BPackageTree - this panel will contain the tree outlining the contents of the meta model which needs to be implemented as well as indicating those items which have been implemented.
    The class diagram for the Packager plugin is the same as the one for the Diagram plugin, as it has BPackageNodeDiagram that implements the BDiagram interface. It adds primitive BDrawables and all shown in a BViewport.

    Preferences [au.edu.swin.synergy.plugin.prefs]

    This package provides a central place for plugins to display their preference panel.
    Basically, if there is a plugin that wishes to register its preference panel, it can send out a command event to the 'prefs' plugin requesting the preference panel to be added to the preference area. This plugin will then display the preference panel in the central preference area. Similarly, this plugin can also remove a preference panel from the preference area, if requested by other plugins.

    This plugin uses only one other module, and this module is 'au.edu.swin.synergy.kernel.BPlugin'.

    Package 'au.edu.swin.synergy.kernel.BPlugin' handles two command events - BAddPrefsCE and BRemovePrefsCE. BAddPrefsCE is the command event that other plugins dispatches to add a preference panel to the preference area, whereas BRemovePrefsCE is the command event that other plugins dispatches to remove a preference panel from the preference area. Having handled the command event (BAddPrefsCE or BRemovePrefsCE), this plugin dispatches a command event - BUpdatePrefsCE - which instructs the other plugins to update their preference panel on the preference area.

    In summary,
    Input (events handled) = BAddPrefsCE, BRemovePrefsCE
    Output (event dispatched) = BUpdatePrefsCE 

    There is no class diagram for this package as it only contain one single class - class BPrefs. Class BPrefs extends BPlugin because it is a plugin. Any class that is to be a plugin must extend BPlugin.
     
     

    Remote Transfer Protocol [au.edu.swin.synergy.plugin.rtp]

    The Remote Transfer Protocol plugin is the client side for the repository and has a command line interface to the repository. There is also a GUI version which allows the user to graphically check in, check out, add and delete files. It also has an ACL editor for setting the appropriate security settings.

    Information is retreived from the repository server by sending command events. Files are transferred to and from the server using events. Permissions are changed using the set security event.

    The BFile class within the au.edu.swin.synergy.lib plugin is used for the method in which compressed files are transferred across the network.

    Other plugins used are:

    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.repository.event
    • au.edu.swin.synergy.plugin.repository
    • au.edu.swin.synergy.plugin.command
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.lib.io







    Repository [au.edu.swin.synergy.plugin.repository]

    The Repository plugin is used for the server side storage of files, with version management.

    The input events handled by the repository plugin are GetFile, PutFile, StatFile and ChangeSecurity. There are no output events dispatched by the Repository plugin.

    All persistant storage is stored in a file called meta-data. The actual file contents is saved in a file with version information.

    Security access to the file is checked, then the results of this check are passed back as an event.

    The BACL class, which maintains an Access Control List, within this plugin contains a list of security descriptors (BDescriptor) and an owner. It performs the security checks of files and has a one-to-many relationship with BDescriptor.  The BDescriptor class within this plugin maps a user or a group to an access level. The access levels available are read, read/write and no access. BDescriptor contains a relm (user/group), an id and an access level. By default no access is given unless specified. The BMetaData class within this plugin contains meta-data for each file in the repository. These meta-data are date, name, size, type, version and BACL. The BRepository class within this plugin listens for events from the client and performs the request.

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.plugin.userdb
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.lib.io
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.plugin.repository.event
    • au.edu.swin.synergy.plugin.server.event






    Server [au.edu.swin.synergy.plugin.server]

    The Server plugin is the server side event redirector. It checks for event authentication and allows multiple connections. It takes an event on the server, sends it to the client, listens for events coming from the clients and distributes them to the plugins on the server side.

    Events dispatched: None
    The input events handled by the server plugin are GetNetworkStatus, GetSessions, GetUser and RegisterFilter. There are no output events dispatched by the server plugin.

    The server maintains a list of connections.  Each session has an ID which is placed inside every event handled by the server.  Other plugins can then request the BUser who is authenticated on that session ID.  The server also handles requests for encryption plugins and can return a complete list of current sessions.

    The BNetCredentials class within this plugin contains the username and password used to perform authentification. The BServer class within this plugin listens for incoming connections and creates a BServerSession to handle them. The BServerSession class within this plugin is a thread that listens for incoming events from the network. The BSocketObjectPipe class within this plugin takes an object and sends it over the network and pipes the data through any registered filters.

    Other plugins used are:

    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.plugin.command
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.userdb
    • au.edu.swin.synergy.plugin.server.event
    • au.edu.swin.synergy.plugin.userdb.event
    • au.edu.swin.synergy.plugin.server






    SMTP Server [au.edu.swin.synergy.plugin.smtpsvr]

    This plugin operates in much the same way as the Direct Messaging server except it processes the address objects, which contain an '@'. It uses a SMTP object to send the message using the SMTP standards format.
     

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.mailclient
    • au.edu.swin.synergy.plugin.server.event
    • au.edu.swin.synergy.plugin.smtpsvr.event

    • au.edu.swin.synergy.plugin.userdb

    User Database [au.edu.swin.synergy.plugin.userdb]

    This is a server side plugin and provides services via command events for creating, retrieving, updating and deleting. It provides a means for editing users/groups and permanently storing them in human readable text files on the server. It also provides a way for assigning priviledges to user/group levels, which is used for access control to the repository and anything else that requires priviledge based access. It is also used as the basis for logging into servers. It maintains referntial integrity across users/groups. ie. Users/groups are stored in individual files and it makes sure that if a user is a member of a group that the group includes the user.

    When a user/group is updated the plugin broadcasts an Update event to all clients. The changes/updates take effect on all logged on clients/servers immediately. The User Database enforces security while running on the server, such as only administrators can add users, etc.
     

    Other plugins used are:

  • au.edu.swin.synergy.debug
  • au.edu.swin.synergy.kernel
  • au.edu.swin.synergy.kernel.event
  • au.edu.swin.synergy.lib
  • au.edu.swin.synergy.lib.io
  • au.edu.swin.synergy.plugin.command
  • au.edu.swin.synergy.plugin.command.event
  • au.edu.swin.synergy.plugin.server
  • au.edu.swin.synergy.plugin.server.event
  • au.edu.swin.synergy.plugin.userdb.event





  • User Manager [au.edu.swin.synergy.plugin.userman]

    This plugin provides a user interface to the User Database which facilitates remote administration. It can either be used through the GUI or the command line. Both interfaces allow the full range of User Manager commands except that the command line also allows input/output redirection, ie. scripting commands, log files. The User Manager enforces security with the latest available priviledge information and when changes are made it updates immediately. For example, if an administrator revokes the administrative priviledges of another administrator while the second administrator is conducting an administrative transaction (eg. add user/change priviledges) the updated priviledges from the User Database running on the server will override the current priviledges on the client.
     

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.client.event
    • au.edu.swin.synergy.plugin.command
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.plugin.dialect
    • au.edu.swin.synergy.plugin.help
    • au.edu.swin.synergy.plugin.help.event
    • au.edu.swin.synergy.plugin.mod13.bwt
    • au.edu.swin.synergy.plugin.mod13.event
    • au.edu.swin.synergy.plugin.server.event
    • au.edu.swin.synergy.plugin.userdb
    • au.edu.swin.synergy.plugin.userdb.event

    Window Manager [au.edu.swin.synergy.plugin.mod13]

    The Window Manager plugin controls the layout for all graphical components and provides an application framework which includes menus, menu items, dialogs, windows and panels. It maintains three default menus: File, which contains Exit; Edit, which contains Cut, Copy and Paste; and Windows, which contains the windows added to the Window Manager. All listeners & controls of added items are handled by the source plugin.

    Menus - If the menu names are the same the Window Manager merges the menus. Groups of menu items within a menu are divided by a horizontal seperator. Plugins can nominate a preferred mnemonic for the menu, the Window Manager will ensure it is unique. If it is not, it takes the next unique letter in the menu name as the mnemonic.

    Windows - If a window has the same name as another window, a sequential number is added to the window name, both in the window title and the window menu. If a window is added with the same name, the original window will become window1 and the second becomes window2, etc. If there are 5 windows and window3 is closed then windows 1,2,4 & 5 will remain.

    Any components added to the Top, Bottom, Left or Right of the Window Manager are added seperately to a tab on a split pane. A way of selecting the tab is provided via events.

    Tab panes and menus are only created when components are added. When all items have been removed so will the menu, tab pane and status bar.

    Status Bar - The status bar provides a means for adding/removing items onto the status bar.

    Selecting menus, tabs on tab pane, minimising, maximising, hiding, closing, bringing to front, sending to back, etc. can be done with the mouse or through the command line.

    The Window Manager also redirects events to relevant Listeners of the window and notifies focus window of cut, copy and paste events.
     

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.kernel.event
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.plugin.command
    • au.edu.swin.synergy.plugin.command.event
    • au.edu.swin.synergy.plugin.dialect
    • au.edu.swin.synergy.plugin.dialect.event
    • au.edu.swin.synergy.plugin.mod13.bwt
    • au.edu.swin.synergy.plugin.mod13.event
    • au.edu.swin.synergy.plugin.test2.event

    Workspace [au.edu.swin.synergy.plugin.workspace]

    The Workspace is a client plugin and provides a user interface representing what the user is working on.

    New Project makes a new Workspace with the same name as the project. Only one Workspace at a time can be displayed in the panel. It is possible to remove the project and add a new project. It is also possible to have multiple projects in the one Workspace. Each project is displayed with its contents, such as models. Selecting a model displays it in the working area. Clicking on a model in the workspace switches between the models.

    If there is no workspace open when a new project is created a new workspace is created with the same name. If there is a workspace open then you can choose to add the new project to the current workspace or create a new workspace.

    Other plugins used are:

    • au.edu.swin.synergy.debug
    • au.edu.swin.synergy.kernel
    • au.edu.swin.synergy.lib
    • au.edu.swin.synergy.lib.io
    • au.edu.swin.synergy.plugin.client.event
    • au.edu.swin.synergy.plugin.diagram
    • au.edu.swin.synergy.plugin.diagram.event
    • au.edu.swin.synergy.plugin.dialect
    • au.edu.swin.synergy.plugin.mod13.event
    • au.edu.swin.synergy.plugin.modeller
    • au.edu.swin.synergy.plugin.packager
    • au.edu.swin.synergy.plugin.prefs.event
    • au.edu.swin.synergy.plugin.workspace.event






    6. File Structure and Global Data

    6.1 External File Structure

    The file structure of the released product that is maintained on secondary storage media is:

    .\cohesion\cohesion.jar
    .\cohesion\client.bat
    .\cohesion\server.bat
    .\cohesion\any other support files

    This directory contains the executable jar file which can be run from a computer which supports java. The cohesion directory is the only one needed by the cohesion program. Other directories which may require maintenance are ones which hold data files. This is at the discretion of the user of the product.

    6.1.1 Logical Structure

    The jar file encapsulates the file data structure. For a complete listing please refer to the jar file directly (Unjar using the jar command).

    6.1.2 Logical Record Description

    The file format used for cohesion models is a XML like file format. Any object which implements the BSaveable interface can be loaded and saved in the cohesion file format. Each section represents an object with a start tag, an end tag and a number of text strings and sub-sections. Data is saved in a human readble format with a series of key = value strings. If any key is omitted then defaults are used. Section names are mapped to java classes using a set of registered aliases.

    The file format is designed to allow changes in code while maintaining compatibility with the existing files.

    6.1.3 Access Method

    The files are text based and are maintainable via any text editor. eg. Notepad.
     

    7. Requirements Cross Reference
     
     

    SRS Requirement
    (Refer to Section 5)
    Module(s) / Plugin which met requirement
    Sub Module
    CREATEPROJECT
    WORKSPACE
     
    EDITPROP
    WORKSPACE
     
    ADDMODEL
    WORKSPACE
     
    OPENPRJ
    WORKSPACE
     
    NEWWORKSPACE
    WORKSPACE
     
    CREATEPROJ
    WORKSPACE
     
    CREATEMODEL
    WORKSPACE
     
    SELECTTOOL
    MODELLER
     
    ADDNODE
    MODELLER
     
    CONNECTNODES
    MODELLER
     
    SELECT
    MODELLER
     
    DESELECT
    MODELLER
     
    MOVESELECT
    MODELLER
     
    GRPSELECT
    MODELLER
     
    UNGRPSELECT
    MODELLER
     
    BRINGSELECT
    MODELLER
     
    SENDSELECT
    MODELLER
     
    DELSELECT
    MODELLER
     
    EVALRULE
    MODELLER
     
    VIEWCOMMONSELECT
    MODELLER
     
    CHNGCOMMONSELECT
    MODELLER
     
    ASSIGNMM
    MODELLER
     
    ASSIGNPKGE
    MODELLER
     
    UNDO
    MODELLER
     
    CONVERTMM
    MODELLER
     
    CHANGEVIEW
    MODELLER
     
    DISPVISNODES
    MODELLER
     
    DISPVISARCS
    MODELLER
     
    TRANSCOORDS
    MATH
     
    ZOOM
    MODELLER
     
    PAN
    MODELLER
     
    CREATEMM
    METAMODELLER
     
    SPECNODETYPE
    METAMODELLER
     
    SPECNODEPROP
    METAMODELLER
     
    SPECARCTYPE
    METAMODELLER
     
    SPECARCPROP
    METAMODELLER
     
    SPECMRULE
    METAMODELLER
     
    SPECMCOMPONENT
    METAMODELLER
     
    SPECMCONDITION
    METAMODELLER
     
    SELECTMM
    PACKAGER
     
    CRUDPN
    PACKAGER
     
    SPECPNSHAPE
    PACKAGER
     
    SPECMNPROPDISP
    PACKAGER
     
    CRUDPA
    PACKAGER
     
    SPECLINETYPE
    PACKAGER
     
    SPECARCGRAPH
    PACKAGER
     
    SPECARCSTYLE
    PACKAGER
     
    SPECMAPROPDISP
    PACKAGER
     
    SPECARCGRPH
    PACKAGER
     
    SAVELOCAL
    REPOSITORY
     
    CHECKIN
    REPOSITORY
     
    RESOLVE
    REPOSITORY
     
    CHECKOUT
    REPOSITORY
     
    PRINT
    WORKSPACE
     
    LOGIN
    CLIENT
    CLIENTGUI
    LOGOUT
    CLIENT
    CLIENTGUI
    SMTP
    MAILCLIENT
    SMTPSVR
    SRAB
    ADDRESSBOOK
     
    ABDISPLAY
    ADDRESSBOOK
     
    SENDDIRECT
    MAILCLIENT
    SMTPSVR
    SLOU
    MAILCLIENT
     
    SMTR
    MAILCLIENT
     
    RTDM
    MAILCLIENT
     
    SMPR
    MAILCLIENT
     
    ABSTORE
    ADDRESSBOOK
     
    ABMODIFY
    ADDRESSBOOK
     
    RDIM
    MAILCLIENT
     
    SETPERM
    USERMAN
     
    CVEDITUSER
    USERMAN
     
    ADDUSER
    USERMAN
     
    EDITUSER
    USERMAN
     
    DELUSER
    USERMAN
     
    CHOOSEUSERG
    USERMAN
     
    SETPRIVILEGE
    USERMAN
     
    CVEDITUSER
    USERMAN
     
    CVEDITGROUP
    USERMAN
     
    EDITGROUP
    USERMAN
     
    DELGROUP
    USERMAN
     
    SEARCHHELP
    HELP
     
    DISPHELP
    HELP
     
    NAVHYP
    HELP
     
    NAVHISTORY
    HELP
     

    8. Test Provisions
    Cohesion is tested using several methods which form comprehensive and rigorous testing procedures. Black box, white box and cluster testing are some of the methods employed.  Modules in Cohesion are considered delineated by the package structure that the code and associated plugins conform to.

    From the Project Plan and Procedures document :

    "Analyse software code and software development documentation (eg. software development plans, project instructions, configuration management plans). This is to assess whether the implementation is traceable to the design and of high quality (ie components comply with standards, are internally consistent, do not implement unintended functionality, support desired user interaction, and do not adversely impact the expandability of the system, etc.)."


    Verification of all aspects of Quality Assurance came from several sources, functionality as outlined in the SRS, expert opinion within and from without the group, and specifically our clients feedback.
     

    8.1 Unit Test Provisions

    Each module within Cohesion has been tested and verified to varying degrees and using different methods.  Tests carried out depend upon its role in terms of functionality and overall system importance.

    The BKA architecture enables the Qaulity Assurance team to test each module using "test plugins".
    Test plugins are created to comprehensively exercise each of the modules to the finest  level of isolation possible for each module.

    • Fine isolation level, each module can be isolated and tested using only the 1)Kernel 2)Actual component classes 3)any mandatory supporting classes.
    • Testing in collaboration, each module can be tested under different circumstances in a scripted fashion easily using the test plugin architecture.
    After the functionality has been identified it is simple to write a plugin which will act as 'driver' plugin.  The plugins which are loaded are dependant on the configuration file which is passed to Cohesion.  Therefore a test plugin once compiled and verified by the QA team can test the functionality in a rigorous fashion.

    Test plugins run inside and interact with the system at the same time giving the necessary feedback needed by the Application engineering group.  As Cohesion runs with an open plugin architecture events can be generated and sent simulating the real expected usage.

    Test plugins can also deliberately abuse the openess and try and break the functionality being tested, this technique was used in critical areas.

    During development the BKA Kernel will be rigorously tested enabling other modules to be tested independently of one another. This means QA will have good assurance that the Kernel is safe and reliable. Further code testing work is then based upon solid ground.

    8.1.1 Control structure test provisions

    Code walkthroughs and whitebox testing in the form of test Plugins are employed throughout the testing procedures.

    Separate modules within the system are treated differently according to the individual system  importance.  This is assertained from the Software Requirements Specification and speaking with the client.

    Application framework, modeller functionality, network communications are all instrisically important to the success of the project.  This indicates that the QA measures will be concentrated on these areas.

    Secondary concerns are other GUI systems (not modeller related) such as user management, messaging system etc,.

    Applicaton framework modules.
    This is the Micro-kernel, known as BKA or Beaker. It supports run-time loadable plugins, and uses a event passing API which allows the plugins to communicate.  Core application framework modules are listed below:

    • au.edu.swin.synergy.kernel : BKA core files.
    • au.edu.swin.synergy.lib : Miscellaneous application supporting library functions
    • au.edu.swin.synergy.shapes : Drawing support
    • au.edu.swin.synergy.math : Useful custom math library.
    Network related modules.
    Cohesions' utilisation of an impressive client server architecture implies the use of networks.
    This was identified early as one of the areas which would have to be tested comprehensively as it is likely to encounter problems.
    The network related modules provide services which allow users to work collaboratively, such as remote check in and check out from a centralised repository and messaging either to other people on the Cohesion server or to external email addresses.

    Modeller related modules.
    As one of the primary objectives of Cohesion, it is important that the modelling related modules are tested and verified against the SRS for completeness of functionality. To verify the existence of functionality, it is sufficient to ensure that each function is working by using them.
    We will be careful to ensure that all modelling  functionality is documented correctly and is easy enough to use from a new users perspective.

    The modeller must be intuitive to use.
    It is important that the modeller performs as specified in terms of functionality.
    In terms of control structure the modeller is comprised of GUI modules and responds to events from user interaction.

    Non graphical modules
    Non graphical modules are typified by containing no GUI components, these modules have been tested using our test plugin architecture as well as neccesary white box testing.

    Graphical modules.
    Cohesion client uses the java swing api extensively to create a powerful an usable GUI.  It is known that swing GUI components in java are buggy and will cause some problems.  It is the task of the QA team to identify the bugs that appear when using the GUI components although it is assumed that there will be some unavoidable problems.
     

    8.1.2 Validation data sets

    Each Cohesion module interface accepts inputs as BCommandEvent objects.
    For every Cohesion module (plugin) it either accepts or rejects the CommandEvent which get sent to it.
    There is expected behaviour for each BCommandEvent and the behaviour is documented in the code of Cohesion.

    Test scripts will be written that will encapsulate the data sets which are acceptable inputs and will expect appropriate reponses from the modules.  Test scripts will also run invalid data objects past the plugins in question to test if they respond in an acceptable manner.

    Each module that requires user interaction will need supervised testing runs with a 'tester' recording the results of the test run while testing the product with a pre-defined set of steps.

    8.2 Integration Test Provisions

    As discussed above the plugin architecture provides a standard interface (events) allowing us to test the class intergration constantly as this is the way that the system is designed.

    Modules communicate via events which are dispatched, recieved, processed and returned to the originator.   Module integration is the default and can therefore be tested purely by running the test plugins which are utilising the architecture mentioned above.

    To verify and validate the module integration cluster testing, user interface testing, overall system black box testing, logical design inspections, detailed code walkthroughs will be used.

    Test plan documents (called TestScripts) outline the valid input and expected output, and will be written to support all major components of the system.
    Other components will be subject to detailed code wallkthroughs and black box testing with reference to the functionality detailed in the Software Requirments Specification.

    Testers that have had any involvement in the development of the software to be tested, will not be used in the testing of that software due to possible conflicts of interest. Multiple testers testing the same software simultaneously MUST have identical software versions.
    All testing environments must be noted in the test plan, and closely adhered to.

    Multiple testers testing the same software simultaneously MUST have identical testing environments.
    Testers will test all software strictly following the test plan documents. Any further tests required that are not outlined in each test plan, will be appended to the test plan document (editing appropriate document revisions), before those tests will be commenced.
     

    8.3 Special Considerations

    Other areas not covered above concerning testing verification and validation are :

    System Stress tests Stress tests are neccesary to carry out due to the intrinsic distributed work-group nature of Cohesion. Stress testing the server with multiple clients will be carried out performing common tasks in unison using multiple clients. The server should respond promptly and degrade gracefully

    Cluster tests Cohesion will be created from several different plugins, these plugins can be cluster tested for any colloborative errors that they may have.

    JProbe testing Using JProbe to perform bottle-neck analysis on the Cohesion code base will provide an extremely valuable tool for optimisation in the later stages of development.

    User consultation Throughout the lifetime of the project it must be kept in mind that the product is being built for a user and that they product should conform to thier requirements and expectations. User consultation will provide this opportunity for the client to express the direction and preferences for different parts of the systesm.

    Regression testing will be implemented and run automatically to find any inconsistancies amongst classes that may have changed in the past.
     

    9. Interface Design

    The client software will make extensive use of Windows GUI features. In particular, the point > click and click > drag features. To support the user interaction with the software, the following interface devices have been identified and will be supported:

    9.1 Input Devices

    9.2.1 Mouse

    The mouse is the major input device, allowing the models to be created and edited. Many functions can be done without a mouse, but a mouse is required for full functionality. This does not strictly have to be a mouse, any two buttoned pointing device should be sufficient.

    9.2.2 Keyboard

    The keyboard is required for entering textual information.  Most of the node properties will be text based so require the keyboard for input.  Some GUI based functions can also be performed using the keyboard.
     

    9.2 Output Devices

    9.2.1 Screen

    The screen is the major output device.  It supports the GUI interface by providing the user with feedback relating to the mouse and keyboard, as well as the content of the application, namely the models. The screen should support 256 colours in 1024x768 resolution.
     

    9.2.2 Printer

    A printer allows hard copies of the models to be printed.  Either a local or networked printer should be suitable. A printer capable of printing black and white in 300 dpi should be sufficient.

    9.3 Dialogue Specification

    9.3.1 Preferences


    The preferences window:

    • is intuitive with the use of tabs for viewing/changing types of preferences.
    • uses standard preference options available in other applications with prefences of such type.
    • uses check boxes, dialog lists and selection lists for ease of use. ie. point and click.
    • where available, have options for tabs are broken into specific sections making it easier to understand.
    • saves screen space with the use of check boxes, dialog lists and selection lists.


    9.3.2 Main Screen

    The main screen window:

    • uses a standard layout as used by many other windows based applications.
    • uses a status bar to give the user updated information on the fly.
    • uses tabs, toolbars and selection lists for ease of use. ie. point and click.
    • uses mulitliple windows within the one main window to allow the user more flexability in their work.
    • allows each window to be resized at the users discretion to make the user more comfortable looking at their work.
    • saves screen space with the use of tabs, toolbars and selection lists.


    9.3.3 Menus

    The menus:

    • use standard window techniques with the use of File, Edit as the first two menus and Window and Help as the last two menus making it more intuitive to the user.
    • do not go further than two levels deep, allowing the user to not get lost within the menu system. ie. Level 0 being the menus you see above, Level 1 being after one click and Level 2 being after two clicks.
    • show Network and Notation as the other two Level 0 menu options available as they are the other two main options the user requires.


    9.3.4 Revision Control (CVS)

    The revision control windows:

    • use standard windows techniques with options at the top, the data in the middle, and \ the action buttons at the bottom of the screen, making it more intuitive to the user.
    • use dialog lists, selection lists and buttons for ease of use. ie. point and click.
    • saves screen space with the use of dialog lists and selection lists.


    9.3.5 Address Book

    The address book window:

    • uses action buttons, radio buttons, selection lists and expandable/collapsable switches for ease of use. ie. point and click.
    • saves space with the use of expandable/collapsable switches, action buttons, radio buttons and selection lists.
    • uses address book standards found in many other packages with address books.


    9.3.6 Notation Builder

    The notation builder window:

    • is an extension to the main screen in that it is from the main screen in which the notation builder is used.
    • uses a standard layout as used by many other windows based applications.
    • uses a status bar to give the user updated information on the fly.
    • uses tabs, toolbars, expandable/collapsable switches and selection lists for ease of use. ie. point and click.
    • uses mulitliple windows within the one main window to allow the user more flexability in their work.
    • allows each window to be resized at the users discretion to make the user more comfortable looking at their work.
    • saves screen space with the use of tabs, toolbars, expandable/collapsable switches and selection lists.


    9.3.7 Rule Set Builder

    The rule set builder window:

    • uses a standard layout as used by many other windows based applications.
    • uses action buttons, expandable/collapsable switches and selection lists for ease of use. ie. point and click.
    • uses > and < for symbols on add and remove action buttons as standard in many other applications.
    • saves screen space with the use of expandable/collapsable switches and selection lists.


    9.3.8 Modeller

    The modeller window was designed using the same concepts as the notation builder window.
     

    Appendix A

    au.edu.swin.synergy.plugin.addressbook

    • BAddress
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • java.io.*;
    • BAddressBook
      • implements
        • Serializable
      • imports
        • java.util.Vector;
        • java.io.*;
    • BAddressBookGUI
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.addressbook.event.BAddressBookCE;
        • au.edu.swin.synergy.plugin.addressbook.event.BAddressDisplayCE;
        • au.edu.swin.synergy.plugin.server.event.BGetNetworkStatusCE;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userman.event.BGetUsersCE;
        • au.edu.swin.synergy.plugin.client.event.BLoginCompleteCE;
        • au.edu.swin.synergy.plugin.client.event.BLogoutCompleteCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.lib.BListModel;
        • au.edu.swin.synergy.lib.BTreeModel;
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • javax.swing.*;
        • javax.swing.tree.*;
        • javax.swing.event.*;
        • javax.swing.border.*;
        • java.awt.*;
        • java.awt.event.*;
        • java.util.*;
    • BAddressBookMgr
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.BHelpTreeModel;
        • au.edu.swin.synergy.plugin.help.event.BRegisterHelpCE;
        • java.util.Vector;
        • java.io.*;


    au.edu.swin.synergy.plugin.addressbook.event

    • BAddressBookCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.plugin.addressbook.BAddress;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BAddressDisplayCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.broadcastcli
    • BBroadcastCli
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • not in Phil's file
    • BServerListModel
      • extends
        • DefaultComboBoxModel [javax.swing]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.plugin.broadcastsvr.BBroadcastSvr;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
    au.edu.swin.synergy.plugin.broadcastcli.event
    • BGetServersCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.broadcastcli.BServerListModel;
    au.edu.swin.synergy.plugin.broadcastsvr
    • BBroadcastSvr
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • not in Phil's file
    au.edu.swin.synergy.plugin.client
    • BClient
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • implements
        • Runnable [java.lang]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.client.event.BNetLoginCE;
        • au.edu.swin.synergy.plugin.client.event.BNetLogoutCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUserUpdatedCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.server.BSocketObjectPipe;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.server.event.BGetNetworkStatusCE;
        • au.edu.swin.synergy.plugin.server.event.BRegisterFilterCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.server.BServer;
        • au.edu.swin.synergy.plugin.server.BNetCredentials;
        • au.edu.swin.synergy.plugin.userdb.event.BAuthUserCE;
        • au.edu.swin.synergy.plugin.client.event.BLoginCompleteCE;
        • au.edu.swin.synergy.plugin.client.event.BLogoutCompleteCE;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.client.event.BGetUserCE;
        • au.edu.swin.synergy.kernel.BBlockingComplete;
    au.edu.swin.synergy.plugin.client.event
    • BGetUserCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BLoginCompleteCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    • BLogoutCompleteCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    • BNetLoginCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.server.BNetCredentials;
    • BNetLogoutCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    au.edu.swin.synergy.plugin.clientgui
    • BClientGui
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.client.event.BNetLoginCE;
        • au.edu.swin.synergy.plugin.client.event.BNetLogoutCE;
        • au.edu.swin.synergy.plugin.client.event.BLoginCompleteCE;
        • au.edu.swin.synergy.plugin.client.event.BLogoutCompleteCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.server.BNetCredentials;
        • au.edu.swin.synergy.plugin.userdb.event.BAuthUserCE;
        • au.edu.swin.synergy.plugin.broadcastcli.event.BGetServersCE;
        • au.edu.swin.synergy.plugin.broadcastcli.BServerListModel;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.client.event.BGetUserCE;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.mod13.bwt.BDialog;
        • au.edu.swin.synergy.plugin.mod13.bwt.BDialogDone;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.server.BServer;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
    • BLoginDlg
      • extends
        • BDialog [au.edu.swin.synergy.plugin.mod13.bwtm]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.mod13.bwt.BDialog;
        • au.edu.swin.synergy.plugin.mod13.bwt.BDialogDone;
        • au.edu.swin.synergy.plugin.dialect.BString;
    au.edu.swin.synergy.plugin.clock
    • BClock
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuCE;
        • au.edu.swin.synergy.plugin.mod13.event.BSelectPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemovePanelCE;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.cmdgui
    • BCommandGui
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.test2.event.BTestCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuCE;
        • au.edu.swin.synergy.plugin.mod13.event.BSelectPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemovePanelCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.command.event.BSetCmdStreamCE;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.command
    • BCommandLine
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.test2.event.BTestCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.debug.Assertion;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.plugin.command.event.BUnRegisterCmdCE;
        • au.edu.swin.synergy.plugin.command.event.BSetCmdStreamCE;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.command.event.BHandleStdOutCE;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.command.event
    • BHandleStdOutCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
    • BRegisterCmdCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
    • BSetCmdStreamCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
    • BStandardOutCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BUnRegisterCmdCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
    au.edu.swin.synergy.plugin.crypt
    • BCrypt
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.debug.Debug;
        • is.hi.logir.cryptonite.*;
        • is.hi.logir.cryptonite.keys.*;
        • is.hi.logir.cryptonite.modes.*;
        • is.hi.logir.cryptonite.protocols.*;
        • is.hi.logir.cryptonite.io.*;
        • au.edu.swin.synergy.plugin.server.BSessionSetup;
        • au.edu.swin.synergy.plugin.server.BStreamSet;
        • au.edu.swin.synergy.plugin.server.event.BRegisterFilterCE;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalarPoint;
    au.edu.swin.synergy.plugin.diagram
    • BDiagramPlugin
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.prefs.event.BAddPrefsCE;
        • au.edu.swin.synergy.plugin.prefs.event.BUpdatePrefsCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.diagram.BViewportPrefs;
        • au.edu.swin.synergy.plugin.diagram.event.BUpdateViewportCE;
        • au.edu.swin.synergy.plugin.diagram.BDrawablePalette;
        • au.edu.swin.synergy.plugin.diagram.event.BSetDrawablePaletteCE;
        • au.edu.swin.synergy.plugin.diagram.event.BGetViewportAttrCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalar;
        • au.edu.swin.synergy.debug.Debug;
    • BDrawable
      • extends
        • Object
      • implements
        • Icon
        • BSaveable [au.edu.swin.synergy.lib.io]
        • Serializable
      • imports
        • not in Phil's file
    • BDrawableButton
      • extends
        • JToggleButton
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.math.BScalar;
        • au.edu.swin.synergy.debug.Debug;
    • BDrawablePalette
      • extends
        • JPanel
      • implements
        • MouseInputListener
        • BView [au.edu.swin.synergy.plugin.diagram]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.diagram.BDrawableButton;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.math.BScalar;
    • BViewport
      • extends
        • JPanel
      • implements
        • MouseInputListener
        • BView [au.edu.swin.synergy.plugin.diagram]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDiagram;
        • au.edu.swin.synergy.plugin.diagram.BDrawablePalette;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.math.BScalar;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.shapes.BRectangle;
    au.edu.swin.synergy.plugin.diagram.event
    • BSetDrawablePaletteCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.diagram.BViewport;
    • BSetGroupPaletteCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.diagram.BViewport;
    au.edu.swin.synergy.plugin.dialect
    • BDialect
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.prefs.event.BAddPrefsCE;
        • au.edu.swin.synergy.plugin.prefs.event.BUpdatePrefsCE;
        • au.edu.swin.synergy.plugin.dialect.event.BDialectChangeCE;
    • BDialectPreferences
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.lib.BListModel;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
        • au.edu.swin.synergy.plugin.mod13.bwt.*;
    • BLocale
      • extends
        • Object
      • imports
        • not in Phil's file
    • BString
      • extends
        • Object
      • imports
        • not in Phil's file
    au.edu.swin.synergy.plugin.dialect.event
    • BDialectChangeCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.*;
    au.edu.swin.synergy.plugin.dialectedit
    • BDialectEditor
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BBlockingComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
    au.edu.swin.synergy.plugin.directsvr
    • BDirectMessageSvr
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.*;
        • au.edu.swin.synergy.plugin.smtpsvr.event.BMailCE;
        • au.edu.swin.synergy.plugin.directsvr.event.BDirectMailCE;
        • au.edu.swin.synergy.plugin.mailclient.BMessage;
        • au.edu.swin.synergy.plugin.server.event.BGetSessionsCE;
        • au.edu.swin.synergy.plugin.server.BServerSession;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.server.event.BGetUserCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
    au.edu.swin.synergy.plugin.directsvr.event
    • BDirectMailCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.mailclient.BMessage;
    au.edu.swin.synergy.plugin.help
    • BCohesionAboutPanel
      • extends
        • JPanel
      • imports
        • not in Phil's file
    • BContentTab
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.BHelpManager;
        • au.edu.swin.synergy.plugin.help.BHelpItem;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plug in.dialect.BDialect;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
    • BFindTab
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.BHelpItem;
        • au.edu.swin.synergy.plugin.help.BHelpManager;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
    • BHelp
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • au.edu.swin.synergy.plugin.help.event.BRegisterHelpCE;
        • au.edu.swin.synergy.plugin.help.BHelpManager;
        • au.edu.swin.synergy.plugin.help.BHelpTabbedPane;
        • au.edu.swin.synergy.plugin.help.BCohesionAboutPanel;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.dialect.event.BDialectChangeCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
    • BHelpItem
      • extends
        • Object
      • implements
        • Comparable
      • imports
        • au.edu.swin.synergy.debug.Debug;
    • BHelpManager
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpViewpane;
        • au.edu.swin.synergy.plugin.help.BHelpTreeModel;
        • au.edu.swin.synergy.plugin.help.BIndexTab;
        • au.edu.swin.synergy.plugin.help.BContentTab;
        • au.edu.swin.synergy.plugin.help.BFindTab;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
    • BHelpTabbedPane
      • extends
        • JTabbedPane
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpManager;
        • au.edu.swin.synergy.plugin.help.BContentTab;
        • au.edu.swin.synergy.plugin.help.BFindTab;
        • au.edu.swin.synergy.plugin.help.BIndexTab;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
    • BHelpTreeModel
      • extends
        • Object
      • imports
        • not in Phil's file
    • BHelpUtil
      • extends
        • Object
      • imports
        • not in Phil's file
    • BHelpViewpane
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.BHelpManager;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
    • BIndexTab
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.BHelpManager;
        • au.edu.swin.synergy.plugin.help.BHelpItem;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;


    au.edu.swin.synergy.plugin.help.event

    • BRegisterHelpCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpTreeModel;
        • au.edu.swin.synergy.kernel.BCommandEvent;
    au.edu.swin.synergy.plugin.mailclient
    • BMailGui
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.BTextArea;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.plugin.smtpsvr.event.BMailCE;
        • au.edu.swin.synergy.plugin.directsvr.event.BDirectMailCE;
        • au.edu.swin.synergy.plugin.addressbook.event.BAddressDisplayCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.prefs.event.BAddPrefsCE;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BMessage
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.metamodeller
    • BCircRule
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • not in Phil's file
    • BConnectNodeRule
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveMenuItemCE;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BCreateElement
      • extends
        • JPanel
      • imports
        • not found in Phil's file
    • BEditElement
      • extends
        • BCreateElement [au.edu.swin.synergy.plugin.metamodeller]
      • imports
        • not found in Phil's file
    • BMaxRule
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • not found in Phil's file
    • BMetaArc
      • extends
        • BMetaElement [au.edu.swin.synergy.plugin.metamodeller]
      • imports
        • not found in Phil's file
    • BMetaElement
      • extends
        • Object
      • implements
        • Serializable
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • not found in Phil's file
    • BMetaGui
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • not found in Phil's file
    • BMetaModel
      • extends
        • Object
      • implements
        • Serializable
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • not found in Phil's file
    • BMetaNode
      • extends
        • BMetaElement [au.edu.swin.synergy.plugin.metamodeller]
      • imports
        • not found in Phil's file
    • BMetaRule
      • extends
        • BMetaElement [au.edu.swin.synergy.plugin.metamodeller ]
      • imports
        • not found in Phil's file
    • BPropListModel
      • extends
        • AbstractListModel
      • imports
        • not found in Phil's file
    • BRuleGui
      • extends
        • JPanel
      • imports
        • not found in Phil's file
    au.edu.swin.synergy.plugin.mod13
    • BPaneManager
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemovePanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BSelectPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemovePanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddToolBarCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveToolBarCE;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BDynamicPane;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowBinder;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
    • BWindowManager
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.command.event.BHandleStdOutCE;
        • au.edu.swin.synergy.lib.BMetalTheme;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.test2.event.BTestCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.lib.BDynamicPane;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveStatusCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddToolBarCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveToolBarCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BSelectPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemovePanelCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowListener;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowBinder;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.dialect.event.BDialectChangeCE;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.debug.Debug;
    au.edu.swin.synergy.plugin.mod13.bwt
    • BDialog
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.debug.Debug;
    • BSwingUtilities
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.lib.BListModel;
        • au.edu.swin.synergy.debug.Debug;
    • BWindowAdapter
      • extends
        • Object
      • implements
        • BWindowListener [au.edu.swin.synergy.plugin.mod13.bwt]
      • imports
        • not found in Phil's file
    • BWindowBinder
      • extends
        • Object
      • implements
        • WindowListener
        • InternalFrameListener
      • imports
        • no imports
    • BWindowEvent
      • extends
        • EventObject
      • imports
        • no imports
    au.edu.swin.synergy.plugin.mod13.event
    • BAddMenuCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BAddMenuItemCE
      • extends
        • BRemoveMenuItemCE [au.edu.swin.synergy.plugin.mod13.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BAddPanelCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BAddStatusCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    • BAddToolBarCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BAddWindowCE
      • extends
        • BCloseWindowCE [au.edu.swin.synergy.plugin.mod13.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowListener;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowBinder;
    • BCloseWindowCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowListener;
    • BRemoveMenuItemCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BRemovePanelCE
      • extends
        • BSelectPanelCE [au.edu.swin.synergy.plugin.mod13.event]
      • imports
        • no import
    • BRemoveStatusCE
      • extends
        • BAddStatusCE [au.edu.swin.synergy.plugin.mod13.event]
      • imports
        • no import
    • BRemoveToolBarCE
      • extends
        • BAddToolBarCE [au.edu.swin.synergy.plugin.mod13.event]
      • imports
        • no import
    • BSelectPanelCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    au.edu.swin.synergy.plugin.modeller
    • BModel
      • extends
        • Object
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
        • BTreeNode [au.edu.swin.synergy.lib]
        • BDiagram [au.edu.swin.synergy.plugin.diagram]
      • imports
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.plugin.diagram.BDiagram;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaModel;
        • au.edu.swin.synergy.plugin.packager.BPackageModel;
        • au.edu.swin.synergy.plugin.packager.BPackageNode;
        • au.edu.swin.synergy.plugin.workspace.BProject;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalarPoint;
    • BModelArc
      • extends
        • BModelElement [au.edu.swin.synergy.plugin.modeller]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.plugin.modeller.BModelElement;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
    • BModelEditor
      • extends
        • BViewport [au.edu.swin.synergy.plugin.diagram]
      • implements
        • BWindowListener [au.edu.swin.synergy.plugin.mod13.bwt]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BViewport;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowListener;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.debug.Debug;
    • BModelElement
      • extends
        • BDrawable [au.edu.swin.synergy.plugin.diagram]
      • implements
        • BTreeNode [au.edu.swin.synergy.lib]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • not found
    • BModelNode
      • extends
        • BModelElement [au.edu.swin.synergy.plugin.modeller]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.plugin.modeller.BModelElement;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.plugin.packager.BPackageNode;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
    au.edu.swin.synergy.plugin.packager
    • BColourStyleEditor
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.plugin.packager.BFillEditorPanel;
        • au.edu.swin.synergy.plugin.packager.BLineEditorPanel;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
    • BFillEditorPanel
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.lib.BColorCombo;
    • BLineEditorPanel
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.packager.event.BIStrokeChangeListener;
        • au.edu.swin.synergy.lib.BColorCombo;
    • BNewPackageDialog
      • extends
        • JPanel
      • imports
        • not found in Phil's file
    • BPackageArc
      • extends
        • BDrawable [au.edu.swin.synergy.plugin.diagram]
      • implements
        • BTreeNode [au.edu.swin.synergy.lib]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalar;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.debug.Debug;
    • BPackageArcEditor
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.plugin.packager.BLineEditorPanel;
        • au.edu.swin.synergy.plugin.packager.event.BIStrokeChangeListener;
        • au.edu.swin.synergy.debug.Debug;
    • BPackageMenu
      • extends
        • BAddMenuItemCE [au.edu.swin.synergy.plugin.mod13.event]
      • imports
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BPackageModel
      • extends
        • Object
      • implements
        • TreeModel
        • BTreeNode [au.edu.swin.synergy.lib]
        • Serializable
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.packager.BPackageModel;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.debug.Debug;
    • BPackageModelBranch
      • extends
        • Object
      • implements
        • BTreeNode [au.edu.swin.synergy.lib]
        • Serializable
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.packager.BPackageModel;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.debug.Debug;
    • BPackageModelElement
      • extends
        • Object
      • implements
        • MutableTreeNode
        • Serializable
      • imports
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.debug.Debug;
    • BPackageNode
      • extends
        • BDrawable
      • implements
        • BTreeNode [au.edu.swin.synergy.lib]
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.shapes.BRectangle;
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalar;
    • BPackageNodeDiagram
      • extends
        • Object
      • implements
        • BDiagram [au.edu.swin.synergy.plugin.diagram]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDiagram;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.shapes.BRectangle;
        • au.edu.swin.synergy.shapes.BEllipse;
        • au.edu.swin.synergy.shapes.BRoundRect;
        • au.edu.swin.synergy.shapes.BLine;
        • au.edu.swin.synergy.plugin.metamodeller.BMetaElement;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.debug.Debug;
    • BPackagePanel
      • extends
        • JTabbedPane
      • imports
        • no import
    • BPackagePlugin
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • not found
    • BPackagerPrefs
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.lib.BColorCombo;
    • BPackageTree
      • extends
        • JTree
      • imports
        • au.edu.swin.synergy.plugin.metamodeller.BMetaModel;
    au.edu.swin.synergy.plugin.packager.event
    • nothing was found for this package
    au.edu.swin.synergy.plugin.prefs
    • BPrefs
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • implements
        • ActionListener
      • imports
        • not found
    au.edu.swin.synergy.plugin.prefs.event
    • BAddPrefsCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowListener;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BRemovePrefsCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowListener;
    • BUpdatePrefsCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    au.edu.swin.synergy.plugin.repository
    • BACL
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BBoolean
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.debug.Debug;
    • BDescriptor
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BFile;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
    • BMetaData
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BFile;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BRepository
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BBlockingComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BFile;
        • au.edu.swin.synergy.plugin.repository.event.BRepositoryCE;
        • au.edu.swin.synergy.plugin.repository.event.BFileXferCE;
        • au.edu.swin.synergy.plugin.repository.event.BGetFileCE;
        • au.edu.swin.synergy.plugin.repository.event.BPutFileCE;
        • au.edu.swin.synergy.plugin.repository.event.BStatFileCE;
        • au.edu.swin.synergy.plugin.repository.event.BSetSecurityCE;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.server.event.BGetUserCE;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.lib.BFile;
    au.edu.swin.synergy.plugin.repository.event
    • BFileXferCE
      • extends
        • BRepositoryCE [au.edu.swin.synergy.plugin.repository.event]
      • imports
        • not found
    • BGetFileCE
      • extends
        • BFileXferCE [au.edu.swin.synergy.plugin.repository.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.lib.BFile;
    • BPutFileCE
      • extends
        • BFileXferCE [au.edu.swin.synergy.plugin.repository.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.repository.BMetaData;
    • BRepositoryCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • not found
    • BSetSecurityCE
      • extends
        • BRepositoryCE [au.edu.swin.synergy.plugin.repository.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.repository.BMetaData;
    • BStatFileCE
      • extends
        • BRepositoryCE [au.edu.swin.synergy.plugin.repository.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.repository.BMetaData;
    au.edu.swin.synergy.plugin.roomgui
    • BChatGui
      • extends
        • JPanel
      • imports
        • not found
    • BChatPanel
      • extends
        • JPanel
      • imports
        • not found
    • BControlPanel
      • extends
        • JPanel
      • imports
        • not found
    • BDoorsModel
      • extends
        • AbstractListModel
      • implements
        • ComboBoxModel
      • imports
        • no import
    • BFileListMode
      • extends
        • AbstractListModel
      • imports
        • au.edu.swin.synergy.debug.Debug;
    • BNavigate
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.plugin.rooms.event.BGetRoomCE;
        • au.edu.swin.synergy.plugin.rooms.event.BGetRoomsCE;
        • au.edu.swin.synergy.plugin.rooms.event.BEnterRoomCE;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.rooms.BRoom;
        • au.edu.swin.synergy.debug.Debug;
    • BPeopleTableModel
      • extends
        • AbstractTableModel
      • imports
        • not found
    • BPrefsPanel
      • extends
        • JPanel
      • imports
        • not found
    • BRoomGui
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • not found
    au.edu.swin.synergy.plugin.roomgui.event
    • BDoNavigateCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    au.edu.swin.synergy.plugin.rooms
    • BChatUser
      • extends
        • BUser [au.edu.swin.synergy.plugin.userdb]
      • implements
        • Serializable
      • imports
        • not found
    • BRoom
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
    • BRooms
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • not found
    • BStats
      • extends
        • Object
      • implements
        • Serializable
      • implements
        • BOnCommand [au.edu.swin.synergy.plugin.command]
      • imports
        • not found
    • BUser
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.lib.UnixCrypt;
    au.edu.swin.synergy.plugin.rooms.event
    • BAddUserCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.rooms.BRoom;
        • au.edu.swin.synergy.plugin.rooms.BChatUser;
    • BChatMsgCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.lib.BStringList;
    • BChatPrivCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • not found
    • BCreateRoomCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.server.BNetCredentials;
    • BEditUserCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.rooms.BRoom;
        • au.edu.swin.synergy.plugin.rooms.BChatUser;
    • BEnterRoomCE
      • extends
        • BGetRoomCE [au.edu.swin.synergy.plugin.rooms.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.rooms.BRoom;
    • BGetFileCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.lib.BFile;
    • BGetRoomCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.rooms.BRoom;
    • BGetRoomsCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BGetThumbNailCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BKickCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • not found
    • BRemoveUserCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BRoomChangeCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.lib.BStringList;
    • BSendFileCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.lib.BFile;
    au.edu.swin.synergy.plugin.rtp
    • BRepositoryClient
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BBlockingComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BFile;
        • au.edu.swin.synergy.plugin.repository.event.BRepositoryCE;
        • au.edu.swin.synergy.plugin.repository.event.BGetFileCE;
        • au.edu.swin.synergy.plugin.repository.event.BPutFileCE;
        • au.edu.swin.synergy.plugin.repository.event.BStatFileCE;
        • au.edu.swin.synergy.plugin.repository.event.BSetSecurityCE;
        • au.edu.swin.synergy.plugin.repository.BMetaData;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
        • au.edu.swin.synergy.lib.BStringList;


    au.edu.swin.synergy.plugin.server

    • BNetCredentials
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • not import
    • BNetObject
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • not found
    • BServer
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.debug.Assertion;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.server.event.BGetUserCE;
        • au.edu.swin.synergy.plugin.server.event.BGetSessionsCE;
        • au.edu.swin.synergy.plugin.server.event.BGetNetworkStatusCE;
        • au.edu.swin.synergy.plugin.server.event.BRegisterFilterCE;
    • BServerSession
      • extends
        • Thread
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.plugin.userdb.event.BAuthUserCE;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.debug.Debug;
    • BSocketObjectPipe
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.server.BSessionSetup;
        • au.edu.swin.synergy.debug.Debug;
    • BStreamSet
      • extends
        • Object
      • imports
        • no import
    au.edu.swin.synergy.plugin.server.event
    • BGetNetworkStatusCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BGetSessionsCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.server.BServerSession;
    • BGetUserCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BRegisterFilterCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.server.BSessionSetup;
    au.edu.swin.synergy.plugin.smtpsvr
    • BSmtp
      • extends
        • Object
      • imports
        • no import
    • BSmtpSvr
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.*;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.smtpsvr.event.BMailCE;
        • au.edu.swin.synergy.plugin.mailclient.BMessage;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.server.event.BGetUserCE;
    au.edu.swin.synergy.plugin.smtpsvr.event
    • BMailCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.mailclient.BMessage;
    au.edu.swin.synergy.plugin.splash
    • BSplashScreen
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.lib.BSleep;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
    au.edu.swin.synergy.plugin.test1
    • BPluginTest1
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.debug.Debug;


    au.edu.swin.synergy.plugin.test2

    • BPluginTest2
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • implements
        • BOnCommand [au.edu.swin.synergy.plugin.command]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.test2.event.BTestCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddStatusCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemoveStatusCE;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.test2.event.BTestCE;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.test2.event
    • BTestCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.testhelp
    • TestHelp
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.plugin.help.BHelpTreeModel;
        • au.edu.swin.synergy.plugin.help.BHelpItem;
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.event.BRegisterHelpCE;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BStringList;
    au.edu.swin.synergy.plugin.userdb
    • BGroup
      • extends
        • BPrivileged [au.edu.swin.synergy.plugin.userdb]
      • imports
        • no import
    • BItemSorter
      • extends
        • Object
      • implements
        • Comparator
      • imports
        • no import
    • BPermanentStorage
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.userdb.event.BDBUpdateCE;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.debug.Debug;
    • BPrivileged
      • extends
        • Object
      • implements
        • Serializable
      • imports
        • not found
    • BReferentialIntegrity
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.debug.Debug;
    • BSecurityManager
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.lib.UnixCrypt;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.userdb.event.BChangePasswordCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAuthUserCE;
        • au.edu.swin.synergy.plugin.server.event.BGetUserCE;
        • au.edu.swin.synergy.kernel.BBlockingComplete;
    • BUser
      • extends
        • BPrivileged [au.edu.swin.synergy.plugin.userdb]
      • implements
        • Serializable
      • imports
        • au.edu.swin.synergy.lib.UnixCrypt;
    • BUserDB
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.lib.UnixCrypt;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.userdb.event.BGetUsersCE;
        • au.edu.swin.synergy.plugin.userdb.event.BGetGroupsCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAuthUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdatePrivilegedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BChangePasswordCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUserDBCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAdminCE;
        • au.edu.swin.synergy.plugin.userdb.event.BOwnerCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateNotificationCE;
        • au.edu.swin.synergy.plugin.userdb.event.BGroupUpdatedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUserUpdatedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BDBUpdateCE;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.lib.io.BTextdb;
        • au.edu.swin.synergy.lib.io.BTextdbRecord;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.server.BNetCredentials;
        • au.edu.swin.synergy.lib.BSleep;
    • BUserDBCommand
      • extends
        • Object
      • implements
        • BOnCommand [au.edu.swin.synergy.plugin.command]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.userdb.event.BDBUpdateCE;
    au.edu.swin.synergy.plugin.userdb.event
    • BAddGroupCE
      • extends
        • BUpdateGroupCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BAddUserCE
      • extends
        • BUpdateUserCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.rooms.BRoom;
        • au.edu.swin.synergy.plugin.rooms.BChatUser;
    • BAdminCE
      • extends
        • BUserDBCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • no import
    • BAuthUserCE
      • extends
        • BUserDBCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.server.BNetCredentials;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BChangePasswordCE
      • extends
        • BOwnerCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    • BDBUpdateCE
      • extends
        • BUserDBCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • no import
    • BGetGroupsCE
      • extends
        • BGetUsersCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BGetUsersCE
      • extends
        • BUserDBCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • not found
    • BGroupUpdatedCE
      • extends
        • BUpdateNotificationCE [au.edu.swin.synergy.plugin.userdb.event ]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
    • BOwnerCE
      • extends
        • BUpdatePrivilegedCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BRemoveGroupCE
      • extends
        • BUpdateGroupCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BRemoveUserCE
      • extends
        • BUpdateUserCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    • BUpdateGroupCE
      • extends
        • BUpdatePrivilegedCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdatePrivilegedCE;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.debug.Debug;
    • BUpdateNotificationCE
      • extends
        • BUserDBCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.debug.Debug;
    • BUpdatePrivilegedCE
      • extends
        • BAdminCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • not found
    • BUpdateUserCE
      • extends
        • BOwnerCE [au.edu.swin.synergy.plugin.userdb.event]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.debug.Debug;
    • BUserDBCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    • BUserUpdatedCE
      • extends
        • BUpdateNotificationCE [au.edu.swin.synergy.plugin.userdb.event ]
      • imports
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.BUser;
    au.edu.swin.synergy.plugin.userman
    • BChangePassword
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.userdb.event.BChangePasswordCE;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BInputReader;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.event.BAddGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveGroupCE;
        • au.edu.swin.synergy.plugin.userdb.BInvalidPropertyException;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.debug.Debug;
    • BCRUDGroup
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.lib.BSelectionListener;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.BInvalidPropertyException;
    • BCRUDUser
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.lib.BSelectionListener;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.BInvalidPropertyException;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowAdapter;
        • au.edu.swin.synergy.plugin.mod13.bwt.BWindowEvent;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.debug.Debug;
    • BCRUDUserManager
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.lib.BSelectionListener;
        • au.edu.swin.synergy.lib.BListModel;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdatePrivilegedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveGroupCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BMemberSelect
      • extends
        • JPanel
      • implements
        • ActionListener
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
    • BServerUpdateCompleteCC
      • extends
        • BCommandComplete [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdatePrivilegedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddGroupCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateGroupCE;
        • au.edu.swin.synergy.lib.BListModel;
        • au.edu.swin.synergy.debug.Debug;
    • BUserMan
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.event.BBootCE;
        • au.edu.swin.synergy.kernel.BKernel;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.event.BGetUsersCE;
        • au.edu.swin.synergy.plugin.userdb.event.BGetGroupsCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUserDBCE;
        • au.edu.swin.synergy.plugin.userdb.event.BDBUpdateCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateNotificationCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUserUpdatedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BGroupUpdatedCE;
        • au.edu.swin.synergy.plugin.userdb.event.BAddUserCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.bwt.BSwingUtilities;
        • au.edu.swin.synergy.plugin.client.event.BGetUserCE;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.plugin.dialect.event.BDialectChangeCE;
        • au.edu.swin.synergy.plugin.help.BHelpItem;
        • au.edu.swin.synergy.plugin.help.BHelpUtil;
        • au.edu.swin.synergy.plugin.help.BHelpTreeModel;
        • au.edu.swin.synergy.plugin.help.event.BRegisterHelpCE;
        • au.edu.swin.synergy.kernel.BCommandComplete;
        • au.edu.swin.synergy.kernel.BBlockingComplete;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.plugin.command.event.BRegisterCmdCE;
        • au.edu.swin.synergy.plugin.server.event.BGetNetworkStatusCE;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BInputReader;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.event.BAddUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveUserCE;
        • au.edu.swin.synergy.plugin.userdb.BInvalidPropertyException;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.debug.Debug;
    • BUserManCLTools
      • extends
        • Object
      • imports
        • au.edu.swin.synergy.plugin.command.BOnCommand;
        • au.edu.swin.synergy.lib.BInputReader;
        • au.edu.swin.synergy.plugin.userdb.BUser;
        • au.edu.swin.synergy.plugin.userdb.BGroup;
        • au.edu.swin.synergy.plugin.userdb.BPrivileged;
        • au.edu.swin.synergy.plugin.userdb.event.BAddUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BUpdateUserCE;
        • au.edu.swin.synergy.plugin.userdb.event.BRemoveUserCE;
        • au.edu.swin.synergy.plugin.userdb.BInvalidPropertyException;
        • au.edu.swin.synergy.plugin.dialect.BDialect;
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.lib.BStringList;
        • au.edu.swin.synergy.plugin.command.event.BStandardOutCE;
        • au.edu.swin.synergy.debug.Debug;
    au.edu.swin.synergy.plugin.userman.event
    • BGetUsersCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.kernel.BCommandComplete;
    au.edu.swin.synergy.plugin.workspace
    • BProject
      • extends
        • Object
      • implements
        • BTreeNode [au.edu.swin.synergy.lib]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.packager.BPackageModel;
        • au.edu.swin.synergy.plugin.modeller.BModel;
    • BWorkspace
      • extends
        • BPlugin [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BPlugin;
        • au.edu.swin.synergy.kernel.BCommandEvent;
        • au.edu.swin.synergy.plugin.mod13.event.BAddMenuItemCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BAddPanelCE;
        • au.edu.swin.synergy.plugin.prefs.event.BAddPrefsCE;
        • au.edu.swin.synergy.plugin.prefs.event.BUpdatePrefsCE;
        • au.edu.swin.synergy.plugin.mod13.event.BCloseWindowCE;
        • au.edu.swin.synergy.plugin.mod13.event.BRemovePanelCE;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BFileFilter;
        • au.edu.swin.synergy.lib.BListModel;
        • au.edu.swin.synergy.lib.BComboBoxModel;
        • au.edu.swin.synergy.lib.BGridBagConstraints;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.plugin.workspace.event.BDisplayWorkspaceCE;
        • au.edu.swin.synergy.plugin.client.event.BLoginCompleteCE;
        • au.edu.swin.synergy.plugin.client.event.BLogoutCompleteCE;
        • au.edu.swin.synergy.plugin.packager.BPackageModel;
        • au.edu.swin.synergy.plugin.modeller.BModel;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.plugin.diagram.BViewport;
        • au.edu.swin.synergy.plugin.modeller.BModelEditor;
        • au.edu.swin.synergy.plugin.diagram.event.BSetDrawablePaletteCE;
        • au.edu.swin.synergy.plugin.dialect.BString;
        • au.edu.swin.synergy.lib.BStringList;
    • BWorkspaceModelBranch
      • extends
        • Object
      • implements
        • BTreeNode [au.edu.swin.synergy.lib]
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.debug.Debug;
    • BWorkspacePrefs
      • extends
        • JPanel
      • imports
        • au.edu.swin.synergy.lib.BColorCombo;
        • au.edu.swin.synergy.plugin.dialect.BString;
    • BWorkspaceTree
      • extends
        • JTree
      • imports
        • no import
    • BWorkspaceTreeModel
      • extends
        • Object
      • implements
        • TreeModel
        • BTreeNode [au.edu.swin.synergy.lib]
      • imports
        • au.edu.swin.synergy.lib.BTreeNode;
        • au.edu.swin.synergy.debug.Debug;
    au.edu.swin.synergy.plugin.workspace.event
    • BDisplayWorkspaceCE
      • extends
        • BCommandEvent [au.edu.swin.synergy.kernel]
      • imports
        • au.edu.swin.synergy.kernel.BCommandEvent;
    au.edu.swin.synergy.shapes
    • BEllipse
      • extends
        • BRectShape [au.edu.swin.synergy.shapes]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.shapes.BRectShape;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.debug.Debug;
    • BLine
      • extends
        • BDrawable [au.edu.swin.synergy.plugin.diagram]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.math.BScalarPoint;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalar;
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.debug.Debug;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.plugin.diagram.BView;
        • au.edu.swin.synergy.math.BScalarRect;
        • au.edu.swin.synergy.math.BScalar;
        • au.edu.swin.synergy.math.BScalarPoint;
    • BRectangle
      • extends
        • BRectShape [au.edu.swin.synergy.shapes]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.shapes.BRectShape;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;
        • au.edu.swin.synergy.debug.Debug;
    • BRectShape
      • extends
        • BDrawable [au.edu.swin.synergy.plugin.diagram]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • not found
    • BRoundRect
      • extends
        • BRectShape [au.edu.swin.synergy.shapes]
      • implements
        • BSaveable [au.edu.swin.synergy.lib.io]
      • imports
        • au.edu.swin.synergy.plugin.diagram.BDrawable;
        • au.edu.swin.synergy.shapes.BRectShape;
        • au.edu.swin.synergy.lib.io.BDataFile;
        • au.edu.swin.synergy.lib.io.BSaveable;

        • au.edu.swin.synergy.debug.Debug;


    References