Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


  • DataWolf will use Medici 2 as Dataset storage.
    • But, the design/refactoring will allow for DataWolf to store workflow workflows in Medici 2
  • Medici 2 will use IRODS as file storage
    • Medici 2 currently has two implementation for file storage: MongoDB GridFS and local file system
    • It is possible for us to store the part of the meatadata of datasets/files to IRODS, too. But it is a low priority and can be done later

Implementing IROD data storage in Medici 2

Medici 2 has the file storage API. It has two implementations: local file system and mongoDB GridFS. We need to have an implementation for IRODS. Current Since DataWolf already has the an IRODS implementation for file storage by using the IRODS java client library, jargon, already. We could utilize the DataWolf implementation Jargon, this can be leveraged for the Medici implementation.  

Refactoring DataWolf to use Medici 2 as dataset storage

In order for DataWolf to use Medici 2 as dataset stroagestorage, the following tasks needs to be done


  • Remove current JPA annotation from beans (separating spring data specifics)
    • workflow, workflow step
    • workflowtool
    • dataset
    • file
  • Defining service API as abstract supporting (DAO -> service and implementation)
    • CRUD and extra capability (save, load, remove, update etc)
  • Implementation layer for each service
    • JPA  (without annotation in the bean but with xml definition)
    • Mongo
    • Medici 2