From 3a89607922d9218fd930a747e0ecb66676e4cc2f Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Sun, 10 Apr 2016 17:51:17 +0200 Subject: [PATCH] Add implementation for add_external_link() --- libimaglink/src/external.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/libimaglink/src/external.rs b/libimaglink/src/external.rs index 82ebdbfa..e091c70d 100644 --- a/libimaglink/src/external.rs +++ b/libimaglink/src/external.rs @@ -103,7 +103,7 @@ pub trait ExternalLinker : InternalLinker { fn set_external_links(&mut self, store: &Store, links: Vec) -> Result<()>; /// Add an external link to the implementor object - fn add_external_link(&mut self, link: Url) -> Result<()>; + fn add_external_link(&mut self, store: &Store, link: Url) -> Result<()>; /// Remove an external link from the implementor object fn remove_external_link(&mut self, link: Url) -> Result<()>; @@ -203,9 +203,13 @@ impl ExternalLinker for Entry { } /// Add an external link to the implementor object - fn add_external_link(&mut self, link: Url) -> Result<()> { + fn add_external_link(&mut self, store: &Store, link: Url) -> Result<()> { // get external links, add this one, save them - unimplemented!() + self.get_external_links(store) + .and_then(|mut links| { + links.push(link); + self.set_external_links(store, links) + }) } /// Remove an external link from the implementor object