Modularize Registrator
For future deployments beyond PRISM it is necessary to beef up the registrator.
Here is an outline of the planned components
# Registration context
Objects to be passed around to the components. Shall include the following properties:
- identifier
- metadata
- file paths
# Source abstractions
This should abstract the object storage access to
- List files (with filter?)
- Download files (metadata file)
- Convert to VSI path
The following backends shall be supported:
- S3
- Swift
- Local path
# Registration configuration handler
Configures and ties together the various components
- select files for Registration
- fetch metadata files and extract metadata
- detect product type/level
# Registration backend
Shall create the necessary models, tables, configs, whatever. Only EOxServer planned for now
Rollbacks should be supported as well?
# Pre-handler
Some setup steps not related to actual registration
# Post-handler
Configurable post-registration steps. e.g: reporting
issue