[ es ]

This is not a 100% Pure Java application, because one library, jLine , uses native code in MS Windows. However, in Linux or Unix it can be considered Pure Java . Then, the application itself is Pure Java , but not one of its dependencies.

How does it work?

Each DB2 command has different options because the grammar is specific for each command. Some commands are executed from the DB2 console ( CLP ), others from the system command line.

This application has the grammar of each command, so it can recognize the structure of a command that is currently typed, and then it can propose some possible options.

The grammar is defined in a set of configuration files, and when the application is loaded, it creates a graph that represents the grammar. This graph has one entering point (Starting Node) and one exiting point (Ending Node). The graph nodes are each of the words that compose a command, which made part of the grammar. The paths between nodes are the possibilities between the different parameters of a command.