Skip to content

Latest commit

 

History

History
31 lines (26 loc) · 4.48 KB

readme.md

File metadata and controls

31 lines (26 loc) · 4.48 KB

QPED - Quarterfall communication

General

The communication between Quarterfall and this plugin works exclusively by using a JSOn-object. The JSON-Object should be named "qf.json" and is supposed to be in the root directory of this project. When using Quarterfall to interface with his programme, the qf.json will automatically be generated for you.

qf.json

Please find the needed properties in the table below. Properties marked with a * will be automatically generated by Quarterfall and should only be manually written to if this programme is not used in conjunction with Quarterfall.

Property Description Optional
checkerClass The exact name and path of the checker-class that is to be executed. If this property is omitted, the class eu.qped.java.checkers.mass.Mass is used as default. true
mainSettings The overarching settings governing every checker. Also contains configuration for syntax checks. Please refer to this readme.md for further instructions on how to use the settings. true
styleSettings The configuration for checking style. Please refer to this readme.md for further instructions. true
semSettings The configuration for checking the semantics. Please refer to this readme.md for further instructions. true
designSettings The configuration for checking the design of classes. Please refer to this readme.md for further instructions. true
answer* This field contains the code or answer produced by the learner which will then be analyzed by the checkers. *
file* A link to the files that were handed in by the learner as their answer. If present, this will be used as the basis for the analyzation instead of answer. Files should be made available as a single zip-archive. *
user* A JSON-Object containing the user information of the Quarterfall user that solved the task. Only the language-property is used to generate feedback appropriate to the language of the user. If filled in manually, please refer to the google-translate-language codes (e.g. en, de, etc). *

Running CheckerRunner manually

Normally, the CheckerRunner will be executed from the Quarterfall Cloud check server or from the SystemTest framework. They will provide the necessary configuration in terms of the qf.json file which will be overwritten when the CheckerRunner terminates. To facilitate executing the CheckerRunner with Quarterfall object files stored in a different location (for more flexible manual execution), the class CheckerRunner can be started with a command line option which is the filename of the Quarterfall object, stored as a JSON file. If this command line option is provided, the JSON file is not overwritten when the CheckerRunner terminates, but the resulting Quarterfall object is printed to the standard output instead.