backbone-mail 0.2.32

Odoo mail core port — message/notification/followers/activity/alias/sms queue (schema: messaging)
//! Domain policy for MailNotification aggregate
//!
//! Generated by metaphor-schema. Do not edit manually.
//!
//! `DomainPolicy` enforces pure business invariants (state-based rules).
//! Identity-based rules live in `backbone_auth::ResourcePolicy`.

use async_trait::async_trait;
use backbone_core::{DomainPolicy, PolicyDecision};
use crate::domain::entity::MailNotification;

/// Domain policy for MailNotification — enforces business invariants.
pub struct MailNotificationDomainPolicy;

#[async_trait]
impl DomainPolicy<MailNotification> for MailNotificationDomainPolicy {
    // <<< CUSTOM
    // Add entity-specific invariant checks here.
    // Example:
    // async fn can_delete(&self, entity: &MailNotification) -> PolicyDecision {
    //     if entity.is_locked {
    //         Err("locked mail_notification cannot be deleted".into())
    //     } else { Ok(true) }
    // }
    // END CUSTOM
}