valorant_api 0.0.4

A library for interacting with the ingame Valorant-API.
Documentation
use crate::utils::network::tlsstream_client::TLSStreamClient;
use std::io;

#[derive(Debug)]
pub enum XMPPReadError {
    Parse,
    Timeout,
    TlsRead(io::Error),
}

pub struct XMPPClient<T: TLSStreamClient> {
    pub tls_stream: T,
}

impl<T: TLSStreamClient> XMPPClient<T> {
    pub fn send_data<D: ToString>(&mut self, data: D) -> Result<(), io::Error> {
        self.tls_stream.write(data.to_string())
    }

    pub fn read_data(&mut self) -> Result<String, XMPPReadError> {
        self.tls_stream.read().map_err(XMPPReadError::TlsRead)
    }
}