Using the Hub and Spoke Tools
These usage instructions assume you have correctly installed the Hub and Spoke Tool Suite as per the installation instructions, and that the LRCRUD Web Service is currently running (either on localhost or remotely).
Throughout these instructions we we will use the following conventions:
- the location of your Hub and Spoke installation (e.g., /usr/local/hubandspoke) will be referred to as [HS_HOME]
- the base URL of the LRCRUD Web Service will be referred to as: http://my.server.edu:8080/dspace-lrcrud
- the command-line scripts located in [HS_HOME]/bin/ will be referred to without file extension. In Windows, these commands resolve to batch files (.bat); in Unix, they resolve to shell scripts (.sh).
To launch the GUI interface goto [HS_HOME]/bin/workflowmanagergui
Submitting Packages to a Repository – PUT
The process for submitting packages is by using the 'PUT' tab in [HS_HOME]/bin/workflowmanagergui.
What will happen:
The application will begin by queuing up EchoDep METS files for processing, as indicated by the the source location. For each EchoDep METS file, the Hub and Spoke core application will validate the METS file and create a Submission Information Package (SIP). Technical metadata for each of the constituent files will then be generated using the JSTOR/Harvard Object Validation Environment (JHOVE), and the results inserted into the METS object. If the MIME type detected by JHOVE differs from the one stated in the METS file, a message will be generated noting the conflict, and inserted into the METS object as a PREMIS validation event. Similar messages will be generated and inserted if the MIME type of a file is not supported by Hub and Spoke (e.g., application/octet-stream).
Once the technical metadata processing is completed, a call will be made to the LRCRUD service specified, to perform a CREATE operation at the location in the repository indicated by Collection ID or Handle, and retrieve a new repository ID or handle corresponding to the newly created record. The files will then be packaged by the Hub and Spoke packager class specified and wrapped in a ZIP archive, which will be stored on the user's local disk if indicated at the location indicated. [If the destination for the user's local disk is left empty, the default will be the application's working directory.] The ZIP file will then be transferred over HTTP to the LRCRUD service, which will perform an UPDATE operation on the newly created repository record. The Hub and Spoke client will receive an HTTP status code from the LRCRUD service, and return the code to the user along with a confirmation that the update was successful.
Disseminating Packages from a Repository – GET
The process for disseminating packages is by using the 'GET' tab in [HS_HOME]/bin/workflowmanagergui.
What will happen:
The application will begin by retrieving the repository package indicated by the item ID. A new sub-directory will be created in the local destination directory indicated. The new sub-directory will be named according to its repository ID or handle (e.g., if the repository handle for the item was 123456789/3, the new export directory will be named 123456789_3). If a directory with that name already exists, the user will be prompted to overwrite the old directory or skip the export. Once the exported ZIP file has been saved to the new sub-directory, its contents will be extracted with their original file names. If an EchoDep METS file is not present in the archive, a new one will be created. This work is done by the ToHubPackager specified by the To-Hub Packager class. Lastly, the exported ZIP file is deleted and the user is notified that the dissemination was successful.
Migrating Packages from one Repository to another Repository – MIGRATE
The process for migrating packages is by using the 'MIGRATE' tab in [HS_HOME]/bin/workflowmanagergui.
Running Demos
In order to give first-time users an idea of how the Hub and Spoke Tool Suite works, we have included two sample EchoDep METS information packages for demonstration and practice. The demonstration files can be found in the following directory: [HS_HOME]/demo/.
Before beginning with the demonstration packages, make sure you have correctly installed the Hub and Spoke Tool Suite as per the installation instructions, and that the LRCRUD Web Service is currently running on the same server as your target repository. Once you are set up, begin by "submitting" one or both of the demo packages to the repository by following the usage instructions above for Submitting Packages. The demos can be loaded individually or all at once, depending on the command line options. Complete the round trip by retrieving the packages, or "disseminating" them from the repository to your local file system, by following the usage instructions above for Disseminating Packages.


