canic_core/domain/policy/pool/
mod.rs1pub mod admissibility;
2pub mod authority;
3
4use crate::{Error, ThisError, cdk::candid::Principal, domain::policy::PolicyError};
5
6#[derive(Clone, Debug, Eq, PartialEq, ThisError)]
17pub enum PoolPolicyError {
18 #[error("pool entry blocked for {0}: canister is still registered in subnet registry")]
20 RegisteredInSubnet(Principal),
21
22 #[error("pool entry blocked for {pid}: local non-importable: {details}")]
23 NonImportableOnLocal { pid: Principal, details: String },
24
25 #[error("pool entry blocked for {0}: canister not registered in subnet registry")]
27 NotRegisteredInSubnet(Principal),
28
29 #[error("caller is not authorized to perform pool operation")]
31 NotAuthorized,
32}
33
34impl From<PoolPolicyError> for Error {
35 fn from(err: PoolPolicyError) -> Self {
36 PolicyError::from(err).into()
37 }
38}