An Example Application: A Simple FSA Editor
This example has been tested with
version 0.1.0-beta of the CIDER toolkit.
Quick Example
For a quick and easy way to run the example application, download the file
fsa.jar (437,101 bytes), then type the following
command:
java -jar fsa.jar
You do not need any other files to run the quick example.
To use the editor, use the buttons on the left panel, and the right
and left mouse buttons to manipulate the symbol attributes.
Constraints can be broken by holding down the shift key when
manipulating the symbol attributes.
Using CIDER to Create the Application
To create this example application, download and unzip
this file (10,226 bytes) which contains the following:
- a Grammar File
- a Transformations File
- a Java class for the functions used in the grammar specification
- three Java classes implement the terminal symbols as drawable objects
- a Java class which implements the FSA editor
Note that this example requires the CIDER implementation of the QOCA
multi-way constraint solver.
Important Points
The directory in which the editor is to be created will be referred to
as the base directory.
Note that all of the Java classes listed above belong to the package
fsa_editor and thus must be placed in a directory of the
same name (relative the base directory). This should happen automatically
when they are unzipped.
The base directory should contain the Grammar and Transformations files,
the CIDER DTD file, and three CIDER JAR files (the CIDER Compiler, the
CIDER Core Components, and the CIDER Implementation of QOCA).
All JAR files and the DTD file should have the same version number.
Running the CIDER Compiler
To create the grammar specific source code for the CIDER toolkit,
the Grammar and Transformations files must be processed by the CIDER
Compiler. This is done using the command:
java -classpath
CiderCompiler-version.jar:CiderQOCA-version.jar CiderCompiler
-g fsa.grammar -t fsa.transformations -cc
au.edu.monash.csse.tonyj.cider.qoca.QocaConstraintCompiler
With regard to this command:
- The text version represents a specific CIDER version number.
- The : character used to separate the two JAR files in the classpath
will need to be replaced with ; on some platforms (such as Windows).
If successful, this command will first translate the Grammar and
Transformations files into XML files, and them process these XML files
to produce CIDER Interpreter source code files (in the directory
au/edu/monash/csse/tonyj/cider/interpreter relative to
the base directory).
Compiling the Application with the Java Compiler
The application source code (both that produced by the CIDER Compiler and
that contained in the files in the fsa_editor directory)
can now be compiled. This is done using the command:
javac -classpath .:CiderCore-version.jar:CiderQOCA-version.jar
au/edu/monash/csse/tonyj/cider/interpreter/*.java fsa_editor/*.java
With regard to this command:
- The text version represents a specific CIDER version number.
- The : character used in the classpath argument will need
to be replaced with ; on some platforms (such as Windows).
- The / character used to separate directories when specifying a file
location will need to be replaced with \ on some platforms (such as
Windows).
Running the FSA Editor
If the application compiled successfully, it can now be run by using
the following command:
java -classpath .:CiderCore-version.jar:CiderQOCA-version.jar
fsa_editor.FSAEditor
With regard to this command:
- The text version represents a specific CIDER version number.
- The : character used in the classpath argument will need
to be replaced with ; on some platforms (such as Windows).
Of course, for many applications it will be convenient to gather all of
the required .class files into a single JAR file to allow for
a more succinct command line to be used and to make the application more
portable. This can be done by using the jar tool.
Back to the Version 0.1.0-beta Page.
Anthony.Jansen@infotech.monash.edu.au
Last Modified:
Friday March 12 18:02:33 EST 2004