Class BuildProforma

java.lang.Object
de.hsh.graja.devasgmt.BuildProforma

public class BuildProforma extends Object
This class provides methods, that performs the conversion of a task.xml with macros to a ProFormA task zip file.
  • Constructor Details

    • BuildProforma

      public BuildProforma()
  • Method Details

    • resolveExternalResources

      public static Map<String,String> resolveExternalResources(Properties assignmentProperties)
    • buildProforma

      public static void buildProforma(Logging log, String id, File projectDir, File assignmentBaseDir, File pathToAsgmtDescription, File pathToDefaultDescription, File pathToGraderJar, File pathToTplJar, File pathToGradingHints, File pathToRegressionTestingRecordedBehavior, File pathToSampleSolutions, File destDir, File copyTmpDir, boolean descriptionsUseJavascript, String descriptionsDivContainerClass, boolean descriptionsIncludeGradingScheme, boolean internalDescriptionIncludesSampleSolutions, String proformaGrajaVersionCompatibility, String proformaJavaVersion, String proformaLanguage, String outputFileBasename) throws Exception

      This method creates a ProFormA task.zip file from various data in a task.xml and additional files. It depends on a Graja installation on the local computer. This method performs various validations and therefore it loads classes from the pathToJar and maybe from the attachments specified in the task.xml.

      If the task.xml defines <external-resource> elements, this method will consult a local Graja resource database to resolve such dependencies test-wise. The created ProFormA zip file will contain dependencies as external resource ref elements.

      Parameters:
      log - used for log messages
      id - the "assignment token" identifying the assignment. This equals the assignmentId of the AssignmentMetaDataTO object.
      pathToAsgmtDescription - the HTML file with the assignment's description
      pathToDefaultDescription - additional HTML default description
      pathToGraderJar - The path to the assignment's jar file with compiled JUnit tests.
      pathToTplJar - The path to the jar file with the Variability Provider (may be null).
      pathToGradingHints - Path to HTML file with grading hints#
      pathToRegressionTestingRecordedBehavior - Path to the directory containing the recorded behavior for the regression testing mechanism
      pathToSampleSolutions - Path to the directory containing sample solutions
      destDir - The path to the output directory.
      copyTmpDir - a temporary directory that will be used to copy temporary files into it
      descriptionsUseJavascript - true or false
      descriptionsDivContainerClass - CSS class name or null
      descriptionsIncludeGradingScheme - true or false
      internalDescriptionIncludesSampleSolutions - true or false
      proformaGrajaVersionCompatibility -
      proformaJavaVersion -
      proformaLanguage -
      outputFileBasename - The basename of the output file, i. e. the name without the zip extension.
      Throws:
      Exception