Package de.hsh.graja.starter.apcli

Package with classes that launch the Graja backend while converting data between frontend and backend formats.

Graja's backend needs to be started in a separate JVM with restricted permissions (security policy, maximum memory, etc.). The starter classes in this package provide an easy interface: a request, either as a java object or as a file. The result is the same for both.

The first interface is the class StarterCommandProvider, which provides a command "grade_request" for the Graja CLI framework. The second interface is the class WithinJVMStarter, which has a method startGraja. The second interface delivers a ResultTO object as a return value.

The following sequence diagram shows, that both interfaces utilize the same class StarterImpl in the backend in order to launch a separate JVM. StarterImpl is responsible for converting a frontend request format into a backend format, launching a new JVM, and afterwards reading the result from a file into a ResultTO object.