O'Reilly logo

Practical VoIP Using VOCAL by Luan Dang, Cullen Jennings, David Kelly

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Java User Interface

The Java user interface is multifaceted, including a dynamic GUI and methods for maintaining and provisioning data.

Dynamic GUI from Text Description

Most of the GUI consists of screens that are not hardcoded, but are instead generated from XML files that describe the fields to be presented to the end user. This description includes any labels, tooltips, or other descriptive markers associated with the fields; conditions under which the fields are enabled/disabled; sources of data for the fields; and the rules for validating data entered into these fields. We call these dynamic GUI screens. This design was intended to make the GUI very easy to change.

Dynamic GUI screens are used for server and endpoint provisioning because the provisioning needs of servers and endpoints often change. They are also used for feature provisioning of users. One important goal of this product has been to make new features easy to write and provision. Using dynamic GUI screens for features solves the provisioning half of that problem. In order to write the description for a new server or feature screen, a developer begins by writing an XML file similar to the one shown later.

The XML file is parsed by both PServer, to build up a database definition, and by the GUI software, to build up a screen. PServer looks for the following tags:

DataDefn

Gives a name and optional category (e.g., FeatureServer) for this data type.

Key

Indicates a key field for this data type.

DBEntry

Indicates a ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required