diff --git a/data-model/src/store.rs b/data-model/src/store.rs index 956afa2..36212a7 100644 --- a/data-model/src/store.rs +++ b/data-model/src/store.rs @@ -4,7 +4,7 @@ use ufotofu::nb::BulkProducer; use crate::{ entry::AuthorisedEntry, - grouping::AreaOfInterest, + grouping::{Area, AreaOfInterest}, parameters::{AuthorisationToken, NamespaceId, PayloadDigest, SubspaceId}, LengthyEntry, Path, }; @@ -210,21 +210,14 @@ where /// Locally forget all [`AuthorisedEntry`] [included](https://willowprotocol.org/specs/grouping-entries/index.html#area_include) by a given [`AreaOfInterest`], returning all forgotten entries /// - /// If the `traceless` parameter is `true`, the store will keep no record of ever having had the forgotten entries. If `false`, it *may* persist what was forgetten for an arbitrary amount of time. - /// - /// Forgetting is not the same as [pruning](https://willowprotocol.org/specs/data-model/index.html#prefix_pruning)! Subsequent joins with other [`Store`]s may bring the forgotten entries back. - fn forget_area( - area: &AreaOfInterest, - traceless: bool, - ) -> impl Future>>; - - /// Locally forget all [`AuthorisedEntry`] **not** [included](https://willowprotocol.org/specs/grouping-entries/index.html#area_include) by a given [`AreaOfInterest`], returning all forgotten entries + /// If `protected` is `Some`, then all entries [included](https://willowprotocol.org/specs/grouping-entries/index.html#area_include) by that [`Area`] will be prevented from being forgotten, even though they are included by `area`. /// /// If the `traceless` parameter is `true`, the store will keep no record of ever having had the forgotten entries. If `false`, it *may* persist what was forgetten for an arbitrary amount of time. /// /// Forgetting is not the same as [pruning](https://willowprotocol.org/specs/data-model/index.html#prefix_pruning)! Subsequent joins with other [`Store`]s may bring the forgotten entries back. - fn forget_everything_but_area( + fn forget_area( area: &AreaOfInterest, + protected: Option>, traceless: bool, ) -> impl Future>>;