From 271a9ce970238f9a727be807d590ab543cb1dae4 Mon Sep 17 00:00:00 2001 From: Alan Orth Date: Mon, 10 Aug 2020 15:55:11 +0300 Subject: [PATCH] Adjust README.md files --- README.md | 6 ++ .../io/github/ilri/cgspace/ctasks/README.md | 72 +++++++++++++++++++ .../io/github/ilri/cgspace/scripts/README.md | 41 +++++++++++ 3 files changed, 119 insertions(+) create mode 100644 src/main/java/io/github/ilri/cgspace/ctasks/README.md create mode 100644 src/main/java/io/github/ilri/cgspace/scripts/README.md diff --git a/README.md b/README.md index c951808..b846a2d 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,12 @@ $ cp target/cgspace-java-helpers-6.0.jar ~/dspace/lib/ ``` ## Configuration +Please refer to the appropriate README.md file: + +- Curation Tasks: [src/main/java/io/github/ilri/cgspace/ctasks/README.md](https://github.com/ilri/cgspace-java-helpers/blob/dspace6/src/main/java/io/github/ilri/cgspace/ctasks/README.md) +- Scripts: [src/main/java/io/github/ilri/cgspace/scripts/README.md](https://github.com/ilri/cgspace-java-helpers/blob/dspace6/src/main/java/io/github/ilri/cgspace/scripts/README.md) + + Add the curation task to DSpace's `config/modules/curate.cfg`: ``` diff --git a/src/main/java/io/github/ilri/cgspace/ctasks/README.md b/src/main/java/io/github/ilri/cgspace/ctasks/README.md new file mode 100644 index 0000000..05c1379 --- /dev/null +++ b/src/main/java/io/github/ilri/cgspace/ctasks/README.md @@ -0,0 +1,72 @@ +# Curation Tasks +DSpace curation tasks used on the [CGSpace](https://cgspace.cgiar.org) institutional repository: + +- **CountryCodeTagger**: add ISO 3166-1 Alpha2 country codes to items based on their existing country metadata + +Tested on DSpace 6.3. Read more about the [DSpace curation system](https://wiki.lyrasis.org/display/DSDOC5x/Curation+System). + +## Build and Install + +### Integrate into DSpace Build +To use these curation tasks in a DSpace project add the following dependency to `dspace/modules/additions/pom.xml`: + +``` + + io.github.ilri.cgspace + cgspace-java-helpers + 6.0 + +``` + +The jar will be copied to all DSpace applications. + +### Manual Build and Install +To build the standalone jar: + +``` +$ mvn package +``` + +Copy the resulting jar to the DSpace `lib` directory: + +``` +$ cp target/cgspace-java-helpers-6.0.jar ~/dspace/lib/ +``` + +## Configuration +Add the curation task to DSpace's `config/modules/curate.cfg`: + +``` +plugin.named.org.dspace.curate.CurationTask = io.github.ilri.cgspace.ctasks.CountryCodeTagger = countrycodetagger +plugin.named.org.dspace.curate.CurationTask = io.github.ilri.cgspace.ctasks.CountryCodeTagger = countrycodetagger.force +``` + +And then add the following variables to your `local.cfg` or some other [configuration file that is included](https://wiki.lyrasis.org/display/DSDOC6x/Configuration+Reference#ConfigurationReference-IncludingotherPropertyFiles): + +``` +# name of the field containing ISO 3166-1 country names +countrycodetagger.iso3166.field = cg.coverage.country + +# name of the field containing ISO 3166-1 Alpha2 country codes +countrycodetagger.iso3166-alpha2.field = cg.coverage.iso3166-alpha2 + +# only add country codes if an item doesn't have any (default false) +#countrycodetagger.forceupdate = false +``` + +*Note*: DSpace's curation system supports "profiles" where you can use the same task with different options, for example above I have a normal country code tagger task and a "force" variant. The "force" variant is the same task, but it looks for configuration variables using the `countrycodetagger.force` instead. To use the "force" variant you simply need to add these new variables with the `forceupdate` parameter overridden to the same configuration file where you put the other variables. The "force" profile clears all existing country codes and updates everything. + +## Invocation +Once the jar is installed and you have added appropriate configuration in `~/dspace/config/modules`: + +``` +$ ~/dspace/bin/dspace curate -t countrycodetagger -i 10568/3 -r - -l 500 -s object +``` + +*Note*: it is very important to set the cache limit (`-l`) and the database transaction scope to something sensible (`object`) if you're curating a community or collection with more than a few hundred items. + +## TODO + +- Make sure this doesn't work on items in the workflow +- Check for existence of metadata field before trying to add metadata +- Add tests diff --git a/src/main/java/io/github/ilri/cgspace/scripts/README.md b/src/main/java/io/github/ilri/cgspace/scripts/README.md new file mode 100644 index 0000000..81b3999 --- /dev/null +++ b/src/main/java/io/github/ilri/cgspace/scripts/README.md @@ -0,0 +1,41 @@ +# Scripts +Java-based helpers used on the [CGSpace](https://cgspace.cgiar.org) institutional repository: + +- **FixJpgJpgThumbnails**: Fix low-quality ".jpg.jpg" thumbnails by replacing them with their originals + +Tested on DSpace 6.3. Read more about the [DSpace curation system](https://wiki.lyrasis.org/display/DSDOC5x/Curation+System). + +## Build and Install + +### Integrate into DSpace Build +To use these curation tasks in a DSpace project add the following dependency to `dspace/modules/additions/pom.xml`: + +``` + + io.github.ilri.cgspace + cgspace-java-helpers + 6.0 + +``` + +The jar will be copied to all DSpace applications. + +### Manual Build and Install +To build the standalone jar: + +``` +$ mvn package +``` + +Copy the resulting jar to the DSpace `lib` directory: + +``` +$ cp target/cgspace-java-helpers-6.0.jar ~/dspace/lib/ +``` + +## Invocation +The script only takes one argument, which is a community, collection, or item: + +``` +$ dspace dsrun io.github.ilri.cgspace.scripts.FixJpgJpgThumbnails 10568/83389 +```