Begin Fix Pack 11.4.02 information

Appendix A - Command-line interface for high-level integration language

The high-level integration language provides a simple command-line interface that starts the compiler and outputs Jaql scripts. A shell script that runs the command is in the language release\bin directory. The shell script uses a HIL_HOME environment variable to locate the rest of the run time JAR files.

The command-line interface has the following usage.
$HIL_HOME/bin/hil <options>
The options are listed in this table.
Table 1. Command-line options
Option Description
-i|--indir input_dir_path If no input directory is specified, the default is the current working directory.
-o|--outdir output_dir_path If no output directory is specified, the output defaults to the input_dir_path.
-m|--moduledir module_dir_path If a module directory is not specified, the default is the current_working_dir/modules/ directory.
-t|--tempdir temporary_dir_path If a temporary directory is not specified, the default is the output_dir_path/temp directory.
-f|--file script1.hil … The name of the language program file is required. You can specify one or multiple .hil files. Multiple file names are separated by a comma.
-g|--generate generated.jaql The name for the output Jaql file that is generated by the program. This option is required.
-p|--properties properties_file The generation properties file name is optional.
-h|--help This option displays the command-line options and usage.
To generate a Jaql script from the prog1.hil program for example, type the following statement at the command prompt.
$HIL_HOME/bin/hil -f prog1.hil -g prog1.jaql

This command results in a prog1.jaql file that contains the Jaql program that implements prog1.hil. This Jaql program is parameterized and requires some variables to be specified before running. For example, if IRP is an input entity, the program assumes that the Jaql variable IRP was already initialized.

To automatically generate a preamble to the main Jaql file (a file that contains the needed variables), you can use the rest of the options of the command.
  • -i: Specifies the name of the directory that contains the input entities. This directory must be a directory file system (DFS) full path if the instances are in DFS or a local directory if the entities are going to be read from a local file system.

  • -o: Specifies the output path; similar to -i.

  • -p: The properties that specify the name of the files that are used for each input/output entity. See Generation properties for examples and details on what goes into this property file.

For example, the following statement compiles prog1.hil into prog1.jaql. A preamble Jaql script, called pre_prog1.jaql is created and defines the input and output directories as specified by the -i and -o parameters. The generation uses the properties in hilGen.properties to figure out how to read and write input/output data from the input/output directories.
$HIL_HOME/bin/hil generate -f prog1.hil -g prog1.jaql -i hdfs://myhost:9000/user/me -o hdfs://myhost:9000/user/me/output -p hilGen.properties


Last updated: 25 Jun 2015
End Fix Pack 11.4.02 information