DataConservancy / dcs-packaging-tool-cli

0 stars 2 forks source link

Implementation of the Automated PackageTool #6

Closed Trumbore closed 6 years ago

Trumbore commented 7 years ago

This submission connects the command line interface (CLI) in the initial version of the AutomatePackageTool class (APT) to the functionality in the RulesEngine, RdfContentProvider and IpmPackager classes.

The arguments and options in the CLI were reconciled with the requirment documents for the APT. The code for the arguments was reordered to correspond to that document.

The code from the run() method on (from line 250) represents a refactoring of existing code to process parameters and metadata and new code to work with the RulesEngine and invoke the IpmPackager. It would be reasonable to ignore the code changes here and look at the new version only.

In order to implement the -d option to turn debugging output on, a change was made to use the logger from ch.quos.logback rather than the one from org.springframework. This was suggested on several web sites, as the former provides a method to dynamically specify the message level for the logger to use. Separate pull requests will be needed to allow logging in other classes to participate in this level control.

The code was modified to pass the requirements of CheckStyle. Numerous tab characters were removed, which explains some lines that show up in the diff but look the same.

A snapshot of the eloka narwhal web site is included as test data, and is used by the modified RdfContentProviderTest. A tree of files for the APT distributable was also added to the resources.

The "package" target now produces a set of output that is close to being a distributable. It includes an executable jar file and the tree of auxiliar files, but they still need to be combined by hand to produce the final zipped distributable.