pub trait Configuration: Send + Sync + Sized + 'static {
    // Required methods
    fn identifier(&self) -> String;
    fn apply_delta(
        &self,
        resource_type: &str,
        resources: Vec<Resource>,
        removed_resources: &[String],
        remote_addr: Option<SocketAddr>
    ) -> Result<()>;
    fn allow_request_processing(&self, resource_type: &str) -> bool;
    fn delta_discovery_request(
        &self,
        client_state: &ClientState
    ) -> Result<DeltaDiscoveryRes>;
    fn on_changed(
        &self,
        subscribed: ControlPlane<Self>
    ) -> impl Future<Output = ()> + Send + 'static;
    fn interested_resources(
        &self
    ) -> impl Iterator<Item = (&'static str, Vec<String>)>;
}

Required Methods§

source

fn identifier(&self) -> String

source

fn apply_delta( &self, resource_type: &str, resources: Vec<Resource>, removed_resources: &[String], remote_addr: Option<SocketAddr> ) -> Result<()>

source

fn allow_request_processing(&self, resource_type: &str) -> bool

source

fn delta_discovery_request( &self, client_state: &ClientState ) -> Result<DeltaDiscoveryRes>

source

fn on_changed( &self, subscribed: ControlPlane<Self> ) -> impl Future<Output = ()> + Send + 'static

source

fn interested_resources( &self ) -> impl Iterator<Item = (&'static str, Vec<String>)>

Object Safety§

This trait is not object safe.

Implementors§