holochain_conductor_api/
storage_info.rs

1use holochain_types::prelude::*;
2
3/// Storage info for DNA used by one or more hApps.
4#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize, SerializedBytes)]
5pub struct DnaStorageInfo {
6    pub authored_data_size: usize,
7    pub authored_data_size_on_disk: usize,
8    pub dht_data_size: usize,
9    pub dht_data_size_on_disk: usize,
10    pub cache_data_size: usize,
11    pub cache_data_size_on_disk: usize,
12    pub used_by: Vec<InstalledAppId>,
13}
14
15/// The type of storage blob
16#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize, SerializedBytes)]
17#[serde(tag = "type", content = "value", rename_all = "snake_case")]
18pub enum StorageBlob {
19    /// Storage blob used by hApps to store data
20    Dna(DnaStorageInfo),
21}
22
23/// Response type for storage used by holochain and applications
24#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize, SerializedBytes)]
25pub struct StorageInfo {
26    pub blobs: Vec<StorageBlob>,
27}