modified: outdb
modified: src/main.rs modified: src/xobjects.rs
This commit is contained in:
parent
96a1210461
commit
de2c8bb1be
16
src/main.rs
16
src/main.rs
@ -33,6 +33,20 @@ fn main() {
|
|||||||
let unique_id = rand::thread_rng().gen_range(10..999);
|
let unique_id = rand::thread_rng().gen_range(10..999);
|
||||||
|
|
||||||
if let XSomeList::TrackList(tracks) = &mut xdb.find_dataset(1).child {
|
if let XSomeList::TrackList(tracks) = &mut xdb.find_dataset(1).child {
|
||||||
|
let mut item = (*tracks.last().unwrap()).clone();
|
||||||
|
let mut xargs = Vec::new();
|
||||||
|
xargs.push(XArgument { arg_type: 1, val: String::from("They beat you") });
|
||||||
|
xargs.push(XArgument { arg_type: 6, val: String::from("MPEG audio file")});
|
||||||
|
xargs.push(XArgument { arg_type: 2, val: String::from(":iPod_Control:Music:F38:ZXXX.mp3") });
|
||||||
|
item.args = xargs;
|
||||||
|
item.data.number_of_strings = 3;
|
||||||
|
item.data.unique_id = unique_id;
|
||||||
|
item.data.dbid = rand::thread_rng().gen_range(10000..100000);
|
||||||
|
item.data.dbid2 = item.data.dbid;
|
||||||
|
xdb.add_track(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*if let XSomeList::TrackList(tracks) = &mut xdb.find_dataset(1).child {
|
||||||
let mut item = (*tracks.last().unwrap()).clone();
|
let mut item = (*tracks.last().unwrap()).clone();
|
||||||
let mut xargs = Vec::new();
|
let mut xargs = Vec::new();
|
||||||
xargs.push(XArgument { arg_type: 1, val: String::from("They beat you") });
|
xargs.push(XArgument { arg_type: 1, val: String::from("They beat you") });
|
||||||
@ -75,7 +89,7 @@ fn main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
playlist.elems.push((pl_item, args));
|
playlist.elems.push((pl_item, args));
|
||||||
}
|
}*/
|
||||||
|
|
||||||
let mut op = File::create("outdb").unwrap();
|
let mut op = File::create("outdb").unwrap();
|
||||||
info!("Write res: {:?}", op.write(&serializer::to_bytes(xdb)));
|
info!("Write res: {:?}", op.write(&serializer::to_bytes(xdb)));
|
||||||
|
@ -77,6 +77,24 @@ impl XDatabase {
|
|||||||
self.children.iter_mut().find(|d| d.data.data_type == data_type).unwrap()
|
self.children.iter_mut().find(|d| d.data.data_type == data_type).unwrap()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn remove_track(&mut self, unique_id: u32) {
|
||||||
|
if let XSomeList::TrackList(tracks) = &mut self.find_dataset(1).child {
|
||||||
|
tracks.retain_mut(|t| t.data.unique_id != unique_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
if let XSomeList::Playlists(playlists) = &mut self.find_dataset(2).child {
|
||||||
|
for playlist in playlists.iter_mut() {
|
||||||
|
playlist.elems.retain_mut(|t| t.0.track_id != unique_id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if let XSomeList::Playlists(playlists) = &mut self.find_dataset(3).child {
|
||||||
|
for playlist in playlists.iter_mut() {
|
||||||
|
playlist.elems.retain_mut(|t| t.0.track_id != unique_id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn add_track(&mut self, track: XTrackItem) {
|
pub fn add_track(&mut self, track: XTrackItem) {
|
||||||
self.add_track_to_playlists(2, &track);
|
self.add_track_to_playlists(2, &track);
|
||||||
self.add_track_to_playlists(3, &track);
|
self.add_track_to_playlists(3, &track);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user