To Cliser Home

Cliser: The Source Code Generators

To Cliser Architecture

Given the parameters specified by a user via a Cliser user-interface, a Cliser Generator object generates source files containing classes for the specified client and/or server. There is a separate generator class for each source language:

Cliser code-generating classes

Based on the language the user selects at their user-interface, Cliser simply creates a generator object for that language, passing its constructor the parameters the user has selected. The generator then generates the source code for the client and/or server the user has specified.

A given generator writes the source code it generates to one file, and the source code it generates for a server to a different file. The names of these files generally specify the ancestry of the class being generated, and so may be long and convoluted (e.g., DaytimeUDPClient.java, or DaytimeIterativeUDPServer.cpp). Cliser's command-line interface generates these files automatically; its graphical user interface waits until the user clicks on the Generate button. The files are written to the directory from which Cliser is invoked.

Warning: Cliser does not check whether a file of the same name already exists: if one does, it will be overwritten!

Each generator generates as much code as possible for the user-specified client and/or server. The user must supply the code that distinguishes their client/server from others, namely the code that specifies the behavior of the client or server for their given service. Cliser makes this as painless as possible. If the user specifies:

Of course, since all source code is available, the user may customize it as desired.

Please see the examples for illustrations.


Back to Cliser user-interfaces Up to the Cliser architecture overview Up to the Cliser home page Forward to the Cliser class libraries

This page maintained by Joel Adams (adams@calvin.edu).