submarine 0.1.0

A library for connecting with a subsonic server
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::data::{ResponseType, ScanStatus};
use crate::{Client, SubsonicError};

impl Client {
    /// reference: http://www.subsonic.org/pages/api.jsp#startScan
    pub async fn start_scan(&self) -> Result<ScanStatus, SubsonicError> {
        let body = self.request("startScan", None, None).await?;
        if let ResponseType::ScanStatus { scan_status } = body.data {
            Ok(scan_status)
        } else {
            Err(SubsonicError::Submarine(String::from(
                "expected type ScanStatus but found wrong type",
            )))
        }
    }
}

//TODO add test