commands: split response tokenizer into separate file
This commit is contained in:
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::AudioOutputId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct DisableOutput;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::AudioOutputId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct EnableOutput;
|
||||
|
||||
@@ -3,11 +3,9 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct Outputs;
|
||||
@@ -38,7 +36,7 @@ impl Command for Outputs {
|
||||
}
|
||||
|
||||
fn parse_response(
|
||||
_parts: ResponseAttributes<'_>,
|
||||
parts: ResponseAttributes<'_>,
|
||||
) -> Result<Self::Response, ResponseParserError<'_>> {
|
||||
let mut outputs = Vec::new();
|
||||
|
||||
@@ -48,7 +46,7 @@ impl Command for Outputs {
|
||||
let mut enabled: Option<bool> = None;
|
||||
let mut attributes: HashMap<String, String> = HashMap::new();
|
||||
|
||||
for (k, v) in _parts.0.into_iter() {
|
||||
for (k, v) in Vec::from(parts).into_iter() {
|
||||
match k {
|
||||
"outputid" => {
|
||||
// Reset and store the previous output if all fields are present
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::AudioOutputId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct OutputSet;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::AudioOutputId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ToggleOutput;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
expect_property_type,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::ChannelName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct Channels;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
expect_property_type,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::ChannelName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct ReadMessages;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::ChannelName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct SendMessage;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::ChannelName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Subscribe;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::ChannelName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Unsubscribe;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct BinaryLimit;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Close;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Kill;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Password;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Ping;
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserResult, ResponseAttributes, ResponseParserError, expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct Protocol;
|
||||
@@ -27,12 +26,12 @@ impl Command for Protocol {
|
||||
fn parse_response(
|
||||
parts: ResponseAttributes<'_>,
|
||||
) -> Result<Self::Response, ResponseParserError<'_>> {
|
||||
if let Some((k, _)) = parts.0.iter().find(|(k, _)| *k != "feature") {
|
||||
let parts_: Vec<_> = parts.into();
|
||||
if let Some((k, _)) = parts_.iter().find(|(k, _)| *k != "feature") {
|
||||
return Err(ResponseParserError::UnexpectedProperty(k));
|
||||
}
|
||||
|
||||
let list = parts
|
||||
.0
|
||||
let list = parts_
|
||||
.into_iter()
|
||||
.map(|(k, v)| Ok(expect_property_type!(Some(v), k, Text).to_string()))
|
||||
.collect::<Result<Vec<_>, ResponseParserError>>()?;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ProtocolAll;
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserResult, ResponseAttributes, ResponseParserError, expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct ProtocolAvailable;
|
||||
@@ -27,12 +26,12 @@ impl Command for ProtocolAvailable {
|
||||
fn parse_response(
|
||||
parts: ResponseAttributes<'_>,
|
||||
) -> Result<Self::Response, ResponseParserError<'_>> {
|
||||
if let Some((k, _)) = parts.0.iter().find(|(k, _)| *k != "feature") {
|
||||
let parts_: Vec<_> = parts.into();
|
||||
if let Some((k, _)) = parts_.iter().find(|(k, _)| *k != "feature") {
|
||||
return Err(ResponseParserError::UnexpectedProperty(k));
|
||||
}
|
||||
|
||||
let list = parts
|
||||
.0
|
||||
let list = parts_
|
||||
.into_iter()
|
||||
.map(|(k, v)| Ok(expect_property_type!(Some(v), k, Text).to_string()))
|
||||
.collect::<Result<Vec<_>, ResponseParserError>>()?;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ProtocolClear;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Feature,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ProtocolDisable;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Feature,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ProtocolEnable;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct TagTypes;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct TagTypesAll;
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserResult, ResponseAttributes, ResponseParserError, expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct TagTypesAvailable;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct TagTypesClear;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::TagName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct TagTypesDisable;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::TagName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct TagTypesEnable;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::TagName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct TagTypesReset;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Next;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Pause;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::SongPosition,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Play;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::SongId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlayId;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Previous;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongPosition, TimeWithFractions},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Seek;
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
common::{SeekMode, TimeWithFractions},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
};
|
||||
|
||||
pub struct SeekCur;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongId, TimeWithFractions},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct SeekId;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Stop;
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserResult, ResponseAttributes, ResponseParserError, expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct ListMounts;
|
||||
|
||||
@@ -2,10 +2,9 @@ use std::collections::HashMap;
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserResult, ResponseAttributes, ResponseParserError, expect_property_type,
|
||||
},
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct ListNeighbors;
|
||||
|
||||
@@ -2,10 +2,9 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Mount;
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Unmount;
|
||||
|
||||
@@ -3,12 +3,10 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_and_parse_property, get_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Offset, Uri},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property, get_property},
|
||||
};
|
||||
|
||||
pub struct AlbumArt;
|
||||
|
||||
@@ -3,13 +3,11 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::GroupType,
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct Count;
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Find;
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongPosition, Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct FindAdd;
|
||||
|
||||
@@ -3,12 +3,10 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct GetFingerprint;
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, expect_property_type,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{GroupType, TagName},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct List;
|
||||
@@ -67,13 +65,13 @@ impl Command for List {
|
||||
fn parse_response(
|
||||
parts: ResponseAttributes<'_>,
|
||||
) -> Result<Self::Response, ResponseParserError<'_>> {
|
||||
let parts_: Vec<_> = parts.into();
|
||||
debug_assert!({
|
||||
let key = parts.0.first().map(|(k, _)| k);
|
||||
parts.0.iter().all(|(k, _)| k == key.unwrap())
|
||||
let key = parts_.first().map(|(k, _)| k);
|
||||
parts_.iter().all(|(k, _)| k == key.unwrap())
|
||||
});
|
||||
|
||||
let list = parts
|
||||
.0
|
||||
let list = parts_
|
||||
.into_iter()
|
||||
.map(|(k, v)| Ok(expect_property_type!(Some(v), k, Text).to_string()))
|
||||
.collect::<Result<Vec<_>, ResponseParserError>>()?;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ListAll;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ListAllInfo;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ListFiles;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, expect_property_type,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct LsInfo;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::collections::HashMap;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, GenericResponseValue, Request, RequestParserError, RequestParserResult,
|
||||
ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{GenericResponseValue, ResponseAttributes},
|
||||
};
|
||||
|
||||
pub struct ReadComments;
|
||||
|
||||
@@ -3,12 +3,12 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_and_parse_property, get_optional_property, get_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Offset, Uri},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{
|
||||
ResponseAttributes, get_and_parse_property, get_optional_property, get_property,
|
||||
},
|
||||
};
|
||||
|
||||
pub struct ReadPicture;
|
||||
|
||||
@@ -3,12 +3,10 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
get_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct Rescan;
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Search;
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
common::{SongPosition, Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
};
|
||||
|
||||
pub struct SearchAdd;
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
common::{PlaylistName, SongPosition, Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
};
|
||||
|
||||
pub struct SearchAddPl;
|
||||
|
||||
@@ -3,13 +3,11 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::GroupType,
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct SearchCount;
|
||||
|
||||
@@ -3,12 +3,10 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
get_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::Uri,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct Update;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::PartitionName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct DelPartition;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
expect_property_type,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::PartitionName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, expect_property_type},
|
||||
};
|
||||
|
||||
pub struct ListPartitions;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct MoveOutput;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::PartitionName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct NewPartition;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::PartitionName,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Partition;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::BoolOrOneshot,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Consume;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Seconds,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Crossfade;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::collections::HashMap;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
get_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::VolumeValue,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct GetVol;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct MixRampDb;
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::Seconds,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct MixRampDelay;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Random;
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Repeat;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::ReplayGainModeMode,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ReplayGainMode;
|
||||
|
||||
@@ -3,12 +3,10 @@ use std::{collections::HashMap, str::FromStr};
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
get_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::ReplayGainModeMode,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_property},
|
||||
};
|
||||
|
||||
pub struct ReplayGainStatus;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::VolumeValue,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct SetVol;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::BoolOrOneshot,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Single;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::VolumeValue,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Volume;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
/// Clears the current error message in status (this is also accomplished by any command that starts playback)
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
/// Displays the song info of the current song (same song that is identified in status)
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use crate::request_tokenizer::RequestTokenizer;
|
||||
use crate::common::SubSystem;
|
||||
|
||||
use crate::commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::SubSystem,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Idle;
|
||||
|
||||
@@ -3,10 +3,10 @@ use std::collections::HashMap;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
get_and_parse_optional_property, get_and_parse_property,
|
||||
response_tokenizer::{
|
||||
ResponseAttributes, get_and_parse_optional_property, get_and_parse_property,
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@@ -3,13 +3,14 @@ use std::str::FromStr;
|
||||
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::request_tokenizer::RequestTokenizer;
|
||||
use crate::common::{Audio, BoolOrOneshot, SongId, SongPosition};
|
||||
|
||||
use crate::commands::{
|
||||
Command, GenericResponseValue, Request, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_and_parse_optional_property, get_and_parse_property,
|
||||
get_optional_property, get_property,
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
common::{Audio, BoolOrOneshot, SongId, SongPosition},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{
|
||||
GenericResponseValue, ResponseAttributes, get_and_parse_optional_property,
|
||||
get_and_parse_property, get_optional_property, get_property,
|
||||
},
|
||||
};
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongPosition, Uri},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Add;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, Request, RequestParserError, RequestParserResult, ResponseAttributes,
|
||||
ResponseParserError, get_next_and_parse_property,
|
||||
},
|
||||
commands::{Command, Request, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongId, SongPosition, Uri},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::{ResponseAttributes, get_next_and_parse_property},
|
||||
};
|
||||
|
||||
pub struct AddId;
|
||||
|
||||
@@ -2,11 +2,11 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
common::{SongId, TagName, TagValue},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
};
|
||||
|
||||
pub struct AddTagId;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::{
|
||||
commands::{Command, Request, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, Request, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Clear;
|
||||
|
||||
@@ -2,11 +2,10 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongId, TagName},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct ClearTagId;
|
||||
|
||||
@@ -2,11 +2,10 @@ use std::str::FromStr;
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::OneOrRange,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Delete;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::SongId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct DeleteId;
|
||||
|
||||
@@ -2,11 +2,11 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
common::{AbsouluteRelativeSongPosition, OneOrRange},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
};
|
||||
|
||||
pub struct Move;
|
||||
|
||||
@@ -2,11 +2,11 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
common::{AbsouluteRelativeSongPosition, SongId},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
};
|
||||
|
||||
pub struct MoveId;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
use crate::{
|
||||
Request,
|
||||
commands::{Command, RequestParserResult, ResponseParserError},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{Command, RequestParserResult, ResponseAttributes, ResponseParserError},
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Playlist;
|
||||
|
||||
@@ -2,12 +2,11 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlaylistFind;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::SongId,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlaylistId;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::OneOrRange,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlaylistInfo;
|
||||
|
||||
@@ -2,12 +2,11 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Sort, WindowRange},
|
||||
filter::Filter,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlaylistSearch;
|
||||
|
||||
@@ -2,11 +2,10 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Version, WindowRange},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlChanges;
|
||||
|
||||
@@ -2,11 +2,10 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Version, WindowRange},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PlChangesPosId;
|
||||
|
||||
@@ -2,11 +2,10 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Priority, WindowRange},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct Prio;
|
||||
|
||||
@@ -2,11 +2,10 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{Priority, SongId},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct PrioId;
|
||||
|
||||
@@ -2,11 +2,10 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{
|
||||
Request,
|
||||
request_tokenizer::RequestTokenizer,
|
||||
commands::{
|
||||
Command, RequestParserError, RequestParserResult, ResponseAttributes, ResponseParserError,
|
||||
},
|
||||
commands::{Command, RequestParserError, RequestParserResult, ResponseParserError},
|
||||
common::{SongId, TimeInterval},
|
||||
request_tokenizer::RequestTokenizer,
|
||||
response_tokenizer::ResponseAttributes,
|
||||
};
|
||||
|
||||
pub struct RangeId;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user