aboutsummaryrefslogtreecommitdiffstats
path: root/src/structs.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/structs.rs')
-rw-r--r--src/structs.rs16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/structs.rs b/src/structs.rs
index b33da2e..885d6cd 100644
--- a/src/structs.rs
+++ b/src/structs.rs
@@ -5,7 +5,7 @@ use reqwest;
use rss::{self, Channel, Item};
use serde_json;
use std::collections::BTreeSet;
-use std::fs::{self, DirBuilder, File};
+use std::fs::{self, remove_dir_all, remove_file, DirBuilder, File};
use std::io::{self, BufReader, Read, Write};
use utils::*;
use yaml_rust::YamlLoader;
@@ -185,6 +185,20 @@ impl Podcast {
}
}
+ pub fn delete(title: &str) -> io::Result<()> {
+ let mut path = get_xml_dir();
+ let mut filename = String::from(title);
+ filename.push_str(".xml");
+ path.push(filename);
+
+ return remove_file(path);
+ }
+
+ pub fn delete_all() -> io::Result<()> {
+ let path = get_xml_dir();
+ return remove_dir_all(path);
+ }
+
pub fn episodes(&self) -> Vec<Episode> {
let mut result = Vec::new();