pub trait FilterProxyInterface: Send + Sync {
    type EnableInterfaceResponseFut: Future<Output = Result<FilterEnableInterfaceResult, Error>> + Send;
    type DisableInterfaceResponseFut: Future<Output = Result<FilterDisableInterfaceResult, Error>> + Send;
    type GetRulesResponseFut: Future<Output = Result<(Vec<Rule>, u32), Error>> + Send;
    type UpdateRulesResponseFut: Future<Output = Result<FilterUpdateRulesResult, Error>> + Send;
    type GetNatRulesResponseFut: Future<Output = Result<(Vec<Nat>, u32), Error>> + Send;
    type UpdateNatRulesResponseFut: Future<Output = Result<FilterUpdateNatRulesResult, Error>> + Send;
    type GetRdrRulesResponseFut: Future<Output = Result<(Vec<Rdr>, u32), Error>> + Send;
    type UpdateRdrRulesResponseFut: Future<Output = Result<FilterUpdateRdrRulesResult, Error>> + Send;
    type CheckPresenceResponseFut: Future<Output = Result<(), Error>> + Send;

    // Required methods
    fn enable_interface(&self, id: u64) -> Self::EnableInterfaceResponseFut;
    fn disable_interface(&self, id: u64) -> Self::DisableInterfaceResponseFut;
    fn get_rules(&self) -> Self::GetRulesResponseFut;
    fn update_rules(
        &self,
        rules: &[Rule],
        generation: u32
    ) -> Self::UpdateRulesResponseFut;
    fn get_nat_rules(&self) -> Self::GetNatRulesResponseFut;
    fn update_nat_rules(
        &self,
        rules: &[Nat],
        generation: u32
    ) -> Self::UpdateNatRulesResponseFut;
    fn get_rdr_rules(&self) -> Self::GetRdrRulesResponseFut;
    fn update_rdr_rules(
        &self,
        rules: &[Rdr],
        generation: u32
    ) -> Self::UpdateRdrRulesResponseFut;
    fn check_presence(&self) -> Self::CheckPresenceResponseFut;
}

Required Associated Types§

Required Methods§

Implementors§