What is JPEL?

It is a mechanism for Java software parametrization (also called configuration) based on a built-in language model to permite parameters relations and independence of file formats.

Why using JPEL?

Because it permits:

  1. establish parameters relations into parameters files;

  2. a hierarquical definition of parameters, it means, parameters can be grouped into modules to minimize complexity of configurations;

  3. a configuration file to be composed of multiples files of different formats;

  4. a configuration file make references to URLs and vice-versa;

  5. reading/writing different configuration file formats (i.e XML, text, properties, others);

  6. new parameters types/operators to be added only by implementing an API interface. i.e A SGBD connection can be described fully into a parameter file;

  7. software self-setup at runtime when configuration resources change without the need of any duplicated code;

  8. create/edit parameters files with a GUI (gui snapshot);

  9. parameters to be remotelly requested (still under development).

To undertand how this list is fulfilled go to section HowTo.

How is it composed?

Actually, JPEL is composed by:

  • Language: Responsible for modeling the built-in language: the abstract syntax, the memory model, and the readers and writers interfaces;

  • GUI: Contains all classes created to provide a graphical interface for manipulating JPEL resources: auxiliary classes for showing/editing declarations trees, GUI used to create/edit files and the export formats facility; 

  • Remote: Provides an ordinary client/server model to parametrization, to enable a remote software parametrization;

  • Examples: It is a set of examples to show how JPEL can be used.

How to download?

Choose one of the downloads available at section Download.

How to use?

To know how replace old parametrization mechanisms by JPEL and how to use it to parametrize your softwares go to section HowTo.