|
Medical Imaging Interaction Toolkit
2026.06.00
Medical Imaging Interaction Toolkit
|
Handles all /api/v1/datastorage endpoints. More...
#include <mitkDataStorageController.h>
Public Member Functions | |
| DataStorageController (DataStorageBridge &bridge) | |
| Construct a DataStorageController. More... | |
| void | SetTempDirectory (const std::string &tempDir) |
| Set the temporary directory for data serialization. More... | |
| void | SetFileAccessConfig (FileAccessMode mode, const std::vector< std::string > &allowedDirs, const std::string &tempDirectory) |
| Configure file access restrictions. More... | |
| void | SetMaxActiveTempDirsPerIp (size_t max) |
| Set the maximum number of concurrently active file-reference temp directories per client IP. When a client exceeds the limit its oldest directory is evicted (deleted) to make room. Default: 5. More... | |
| void | HandleGET_nodes (const httplib::Request &req, httplib::Response &res) |
| Handle GET /datastorage/nodes request. More... | |
| void | HandlePOST_nodes (const httplib::Request &req, httplib::Response &res) |
| Handle POST /datastorage/nodes request. More... | |
| void | HandleGET_nodes_uid (const httplib::Request &req, httplib::Response &res) |
| Handle GET /datastorage/nodes/:uid request. More... | |
| void | HandlePATCH_nodes_uid (const httplib::Request &req, httplib::Response &res) |
| Handle PATCH /datastorage/nodes/:uid request. More... | |
| void | HandleDELETE_nodes_uid (const httplib::Request &req, httplib::Response &res) |
| Handle DELETE /datastorage/nodes/:uid request. More... | |
| void | HandleGET_nodes_uid_children (const httplib::Request &req, httplib::Response &res) |
| Handle GET /datastorage/nodes/:uid/children request. More... | |
| void | HandlePOST_nodes_uid_children (const httplib::Request &req, httplib::Response &res) |
| Handle POST /datastorage/nodes/:uid/children request. More... | |
| void | HandleGET_nodes_uid_data (const httplib::Request &req, httplib::Response &res) |
| Handle GET /datastorage/nodes/:uid/data request. More... | |
| void | HandlePUT_nodes_uid_data (const httplib::Request &req, httplib::Response &res) |
| Handle PUT /datastorage/nodes/:uid/data request. More... | |
| void | HandleGET_nodes_uid_properties (const httplib::Request &req, httplib::Response &res) |
| Handle GET /datastorage/nodes/:uid/properties request. More... | |
| void | HandleGET_nodes_uid_properties_key (const httplib::Request &req, httplib::Response &res) |
| Handle GET /datastorage/nodes/:uid/properties/:property_key request. More... | |
| void | HandlePUT_nodes_uid_properties_key (const httplib::Request &req, httplib::Response &res) |
| Handle PUT /datastorage/nodes/:uid/properties/:property_key request. More... | |
| void | HandleDELETE_nodes_uid_properties_key (const httplib::Request &req, httplib::Response &res) |
| Handle DELETE /datastorage/nodes/:uid/properties/:property_key request. More... | |
| void | HandlePUT_nodes_uid_properties (const httplib::Request &req, httplib::Response &res) |
| Handle PUT /datastorage/nodes/:uid/properties request. More... | |
| void | HandlePATCH_nodes_uid_properties (const httplib::Request &req, httplib::Response &res) |
| Handle PATCH /datastorage/nodes/:uid/properties request. More... | |
Handles all /api/v1/datastorage endpoints.
Handler method naming convention: HandleMETHOD_path_segments() The method name directly reflects the route for clarity.
Node endpoints:
Data endpoints (on nodes):
Property endpoints (on nodes):
Definition at line 56 of file mitkDataStorageController.h.
|
explicit |
Construct a DataStorageController.
| bridge | Reference to the DataStorageBridge for data operations. |
| void mitk::DataStorageController::HandleDELETE_nodes_uid | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle DELETE /datastorage/nodes/:uid request.
Deletes a node.
| void mitk::DataStorageController::HandleDELETE_nodes_uid_properties_key | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle DELETE /datastorage/nodes/:uid/properties/:property_key request.
Deletes a property.
| void mitk::DataStorageController::HandleGET_nodes | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle GET /datastorage/nodes request.
Lists all nodes, optionally filtered.
| void mitk::DataStorageController::HandleGET_nodes_uid | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle GET /datastorage/nodes/:uid request.
Gets a single node by UID.
| void mitk::DataStorageController::HandleGET_nodes_uid_children | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle GET /datastorage/nodes/:uid/children request.
Lists child nodes of a given node.
| void mitk::DataStorageController::HandleGET_nodes_uid_data | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle GET /datastorage/nodes/:uid/data request.
Downloads the binary data of a node. Supports direct mode (binary response) and file-reference mode (JSON with path).
| void mitk::DataStorageController::HandleGET_nodes_uid_properties | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle GET /datastorage/nodes/:uid/properties request.
Gets all properties of a node.
| void mitk::DataStorageController::HandleGET_nodes_uid_properties_key | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle GET /datastorage/nodes/:uid/properties/:property_key request.
Gets a single property value.
| void mitk::DataStorageController::HandlePATCH_nodes_uid | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle PATCH /datastorage/nodes/:uid request.
Updates a node (e.g., reparenting).
| void mitk::DataStorageController::HandlePATCH_nodes_uid_properties | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle PATCH /datastorage/nodes/:uid/properties request.
Updates multiple properties (merge semantics).
| void mitk::DataStorageController::HandlePOST_nodes | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle POST /datastorage/nodes request.
Creates a new node.
| void mitk::DataStorageController::HandlePOST_nodes_uid_children | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle POST /datastorage/nodes/:uid/children request.
Creates a new child node.
| void mitk::DataStorageController::HandlePUT_nodes_uid_data | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle PUT /datastorage/nodes/:uid/data request.
Uploads/replaces the binary data of a node. Can also set data on nodes that currently have null data.
| void mitk::DataStorageController::HandlePUT_nodes_uid_properties | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle PUT /datastorage/nodes/:uid/properties request.
Replaces all properties (full replacement).
| void mitk::DataStorageController::HandlePUT_nodes_uid_properties_key | ( | const httplib::Request & | req, |
| httplib::Response & | res | ||
| ) |
Handle PUT /datastorage/nodes/:uid/properties/:property_key request.
Sets a single property value.
| void mitk::DataStorageController::SetFileAccessConfig | ( | FileAccessMode | mode, |
| const std::vector< std::string > & | allowedDirs, | ||
| const std::string & | tempDirectory | ||
| ) |
Configure file access restrictions.
| mode | The file access mode (Unrestricted or AllowedDirectories). |
| allowedDirs | List of allowed directory paths (only used in AllowedDirectories mode). |
| tempDirectory | Path to the temporary directory (always allowed in AllowedDirectories mode). |
| void mitk::DataStorageController::SetMaxActiveTempDirsPerIp | ( | size_t | max | ) |
Set the maximum number of concurrently active file-reference temp directories per client IP. When a client exceeds the limit its oldest directory is evicted (deleted) to make room. Default: 5.
| void mitk::DataStorageController::SetTempDirectory | ( | const std::string & | tempDir | ) |
Set the temporary directory for data serialization.
This directory is used for storing serialized data files when responding to GET /nodes/{uid}/data requests.
| tempDir | Path to the temporary directory. |