[][src]Trait basws_client::ClientLogic

pub trait ClientLogic: Send + Sync {
    type Request: Serialize + DeserializeOwned + Sync + Send + Clone + Debug;
    type Response: Serialize + DeserializeOwned + Sync + Send + Clone + Debug;
    fn server_url(&self) -> Url;
fn protocol_version(&self) -> Version;
#[must_use] fn state_changed<'life0, 'life1, 'async_trait>(
        &'life0 self,
        state: &'life1 LoginState,
        client: Client<Self>
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        'life1: 'async_trait,
        Self: 'async_trait
;
#[must_use] fn stored_installation_config<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Option<InstallationConfig>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
;
#[must_use] fn store_installation_config<'life0, 'async_trait>(
        &'life0 self,
        config: InstallationConfig
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
;
#[must_use] fn response_received<'life0, 'async_trait>(
        &'life0 self,
        response: Self::Response,
        original_request_id: Option<u64>,
        client: Client<Self>
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
;
#[must_use] fn handle_server_error<'life0, 'async_trait>(
        &'life0 self,
        error: ServerError,
        client: Client<Self>
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; }

Associated Types

Loading content...

Required methods

fn server_url(&self) -> Url

fn protocol_version(&self) -> Version

#[must_use]fn state_changed<'life0, 'life1, 'async_trait>(
    &'life0 self,
    state: &'life1 LoginState,
    client: Client<Self>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    'life1: 'async_trait,
    Self: 'async_trait, 

#[must_use]fn stored_installation_config<'life0, 'async_trait>(
    &'life0 self
) -> Pin<Box<dyn Future<Output = Option<InstallationConfig>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, 

#[must_use]fn store_installation_config<'life0, 'async_trait>(
    &'life0 self,
    config: InstallationConfig
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, 

#[must_use]fn response_received<'life0, 'async_trait>(
    &'life0 self,
    response: Self::Response,
    original_request_id: Option<u64>,
    client: Client<Self>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, 

#[must_use]fn handle_server_error<'life0, 'async_trait>(
    &'life0 self,
    error: ServerError,
    client: Client<Self>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, 

Loading content...

Implementors

Loading content...