┌─┐ ┌─┐ ,.-^^-._ ║"│ ║"│ |-.____.-| └┬┘ └┬┘ | | ┌┼┐ ┌┼┐ | | │ │ ┌────────────────┐ ┌─────────────┐ | | ┌┴┐ ┌┴┐ │JSF (PrimeFaces)│ │IngestService│ '-.____.-' Garbage User └────────┬───────┘ └──────┬──────┘ File Storage Collector │ HTTP Upload ┌┴┐ │ │ │ │────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ Store upload │ ,.-^^-._ │ │ │ │ ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────> |-.____.-| │ │ │ │ │ │ | | │ │ │ │ │ │ | | │ │ │ │ │ │ | | │ │ │ │ │ │ '-.____.-' │ │ │ │ │ │ domain/generated │ │ │ │ │ │ /jsp/dataverse │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ ┌┴┐ │ │ │ │ createDataFiles() ┌────────┐ │ │ │ │ │ │ │ │ ─────────────────>│FileUtil│ │ │ │ │ │ │ │ │ └────┬───┘ │ │ │ │ │ │ │ │ │ │ Copy file(s) │ │ │ │ │ │ │ ────────────────────────────────────────────────────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ Paste file(s) │ ,.-^^-._ │ │ │ │ │ │ ┌┴┐───────────────────────────────────────────────────────────────> |-.____.-| │ │ │ │ │ │ │ │ │ │ | | │ │ │ │ │ │ │ │ │ │ | | │ │ │ │ │ │ │ │ │ │ | | │ │ │ │ │ │ │ │ │ │ '-.____.-' │ │ │ │ │ │ │ │ │ │ dataverse.files/temp │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ Process, unzip, ...│ ┌┴┐ │ │ │ │ │ │ │ │ ────────────────────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ \ / │ │ │ │ │ │ │ │ │ │ │X│ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ /┬\ │ │ │ │ │ │ │ │ │ │ Return file list │ │ │ │ │ │ │ │ │ │ │ <──────────────────────│ │ │ │ │ │ │ │ │ └┬┘ │ │ │ │ │ │ │ │ │Show upload complete │ │ │ │ │ │ │ │ │ │<─────────────────────│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ╔══════════════════════╧════════════╗ │ │ │ │ │ ════════╪══════════════════════╪═════════════════════════╪══════════════════════╪═╣ == After all files done by user ==╠══════════════╪═╪════════════════════════════╪═╪═══════════════════════╪══════════ │ │ │ │ ╚══════════════════════╤════════════╝ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │Saves Dataset/Files ┌┴┐ │ │ │ │ │ │ │ │ │────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ saveAndAddFilesToDataset() ┌┴┐ │ │ │ │ │ │ │ │ │ ────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ Copy all files │ │ │ │ │ │ │ │ │ │ │ ─────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ "Paste to storage │ │ │ │ │ │ │ │ │ │ │ │ using StorageIO" │ │ │ │ │ │ │ │ │ │ │ │ ─────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ \ / │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │X│ │ │ │ │ │ │ │ │ │ │ /┬\ │ │ │ │ │ │ │ │ │ Delete │ │ │ │ │ │ │ │ │ │ ──────────────────────────────────────────────────>│ │ │ │ │ │ │ │ └┬┘ │ │ │ │ │ │ │ │ Return status │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │ │ └┬┘ │ │ │ │ │ │ │ │ Show status │ │ │ │ │ \ / │ │<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │X│ │ │ │ │ │ │ │ /┬\ │ │ │ │ │ │ │ │ Close Stream & Delete │ │ │ │ │ │ │ │ <─────────────────────── User ┌────────┴───────┐ ┌────┴───┐ ┌──────┴──────┐ File Storage dataverse.files/temp domain/generated Garbage ┌─┐ │JSF (PrimeFaces)│ │FileUtil│ │IngestService│ ,.-^^-._ ,.-^^-._ /jsp ,.-^^-._e Col┌─┐tor ║"│ └────────────────┘ └────────┘ └─────────────┘ |-.____.-| |-.____.-| |-.____.-| ║"│ └┬┘ | | | | | | └┬┘ ┌┼┐ | | | | | | ┌┼┐ │ | | | | | | │ ┌┴┐ '-.____.-' '-.____.-' '-.____.-' ┌┴┐