diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2018-04-16 10:47:44 +0200 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2018-04-18 14:32:23 +0200 |
commit | adede7bf26e4abe8dfe4fcca1d0dfa81712ef406 (patch) | |
tree | 2711653f147e94d7020bfe25116b0d8fcf9214e0 /lib | |
parent | 8ea3f62fbc7f36a79d69d2fb67d5fba95cc0ad91 (diff) |
Remove notion of "main page"
Diffstat (limited to 'lib')
-rw-r--r-- | lib/domain/libimagwiki/src/store.rs | 26 |
1 files changed, 9 insertions, 17 deletions
diff --git a/lib/domain/libimagwiki/src/store.rs b/lib/domain/libimagwiki/src/store.rs index 36106761..7113aa17 100644 --- a/lib/domain/libimagwiki/src/store.rs +++ b/lib/domain/libimagwiki/src/store.rs @@ -29,10 +29,10 @@ pub trait WikiStore { fn get_wiki<'a, 'b>(&'a self, name: &'b str) -> Result<Option<Wiki<'a, 'b>>>; - fn create_wiki<'a, 'b>(&'a self, name: &'b str, mainpagename: Option<&str>) + fn create_wiki<'a, 'b>(&'a self, name: &'b str) -> Result<Wiki<'a, 'b>>; - fn retrieve_wiki<'a, 'b>(&'a self, name: &'b str, mainpagename: Option<&str>) + fn retrieve_wiki<'a, 'b>(&'a self, name: &'b str) -> Result<Wiki<'a, 'b>>; } @@ -56,31 +56,23 @@ impl WikiStore for Store { /// /// Returns the Wiki object. /// - /// Ob success, an empty Wiki entry with the name `mainpagename` (or "main" if none is passed) - /// is created inside the wiki. + /// Ob success, an empty Wiki entry with the name `index` is created inside the wiki. Later, new + /// entries are automatically linked to this entry. /// - fn create_wiki<'a, 'b>(&'a self, name: &'b str, mainpagename: Option<&str>) - -> Result<Wiki<'a, 'b>> - { + fn create_wiki<'a, 'b>(&'a self, name: &'b str) -> Result<Wiki<'a, 'b>> { debug!("Trying to get wiki '{}'", name); - debug!("Trying to create wiki '{}' with mainpage: '{:?}'", name, mainpagename); let wiki = Wiki::new(self, name); let _ = wiki.create_index_page()?; - - wiki.create_entry(mainpagename.unwrap_or("main")) - .map(|_| wiki) + Ok(wiki) } - fn retrieve_wiki<'a, 'b>(&'a self, name: &'b str, mainpagename: Option<&str>) + fn retrieve_wiki<'a, 'b>(&'a self, name: &'b str) -> Result<Wiki<'a, 'b>> { match self.get_wiki(name)? { - None => self.create_wiki(name, mainpagename), - Some(wiki) => { - let _ = wiki.retrieve_entry(mainpagename.unwrap_or("main"))?; // to make sure the page exists - Ok(wiki) - } + None => self.create_wiki(name), + Some(wiki) => Ok(wiki), } } |