summaryrefslogtreecommitdiffstats
path: root/bin/domain/imag-wiki
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2018-04-14 20:28:08 +0200
committerMatthias Beyer <mail@beyermatthias.de>2018-04-18 14:32:23 +0200
commitcc9e7c89d0b658aa0801357a3c9193030fbcd302 (patch)
tree764b24928f3ea5e7c3696a2f06ab280f4cfe7b09 /bin/domain/imag-wiki
parentcaf0e63b352449c2b3ba538df6103d89af7c3227 (diff)
Remove grep functionality
Diffstat (limited to 'bin/domain/imag-wiki')
-rw-r--r--bin/domain/imag-wiki/src/main.rs47
-rw-r--r--bin/domain/imag-wiki/src/ui.rs13
2 files changed, 0 insertions, 60 deletions
diff --git a/bin/domain/imag-wiki/src/main.rs b/bin/domain/imag-wiki/src/main.rs
index f2d5a66c..8690e467 100644
--- a/bin/domain/imag-wiki/src/main.rs
+++ b/bin/domain/imag-wiki/src/main.rs
@@ -63,7 +63,6 @@ fn main() {
Some("create") => create(&rt, wiki_name),
Some("create-wiki") => create_wiki(&rt, wiki_name),
Some("delete") => delete(&rt, wiki_name),
- Some("grep") => grep(&rt, wiki_name),
Some(other) => {
debug!("Unknown command");
let _ = rt.handle_unknown_subcommand("imag-wiki", other, rt.cli())
@@ -228,49 +227,3 @@ fn delete(rt: &Runtime, wiki_name: &str) {
.map_err_trace_exit_unwrap(1);
}
-fn grep(rt: &Runtime, wiki_name: &str) {
- use libimagstore::iter::get::StoreIdGetIteratorExtension;
- use filters::filter::Filter;
-
- let scmd = rt.cli().subcommand_matches("grep").unwrap(); // safed by clap
- let grep = scmd
- .value_of("grep-pattern")
- .map(Regex::new)
- .unwrap() // safed by clap
- .unwrap_or_else(|e| {
- error!("Regex building error: {:?}", e);
- ::std::process::exit(1)
- });
-
- let filter = |e: &FileLockEntry| -> bool {
- grep.is_match(e.get_content())
- };
-
- let wiki = rt
- .store()
- .get_wiki(&wiki_name)
- .map_err_trace_exit_unwrap(1)
- .unwrap_or_else(|| {
- error!("No wiki '{}' found", wiki_name);
- ::std::process::exit(1)
- });
-
- let out = rt.stdout();
- let mut outlock = out.lock();
-
- wiki.all_ids()
- .map_err_trace_exit_unwrap(1)
- .into_get_iter(rt.store())
- .filter_map(Result::ok)
- .map(|e| e.unwrap_or_else(|| {
- error!("Failed to fetch entry");
- ::std::process::exit(1)
- }))
- .filter(|e| filter.filter(e))
- .for_each(|entry| {
- let _ = writeln!(outlock, "{}", entry.get_location())
- .to_exit_code()
- .unwrap_or_exit();
- });
-}
-
diff --git a/bin/domain/imag-wiki/src/ui.rs b/bin/domain/imag-wiki/src/ui.rs
index fcb06d77..ade0bb7f 100644
--- a/bin/domain/imag-wiki/src/ui.rs
+++ b/bin/domain/imag-wiki/src/ui.rs
@@ -162,17 +162,4 @@ pub fn build_ui<'a>(app: App<'a, 'a>) -> App<'a, 'a> {
.help("Do not remote links. WARNING: This leaves the store in an inconsistent state."))
)
- .subcommand(SubCommand::with_name("grep")
- .about("Grep though wiki entries.")
- .version("0.1")
- .arg(Arg::with_name("grep-pattern")
- .index(1)
- .takes_value(true)
- .required(false)
- .multiple(true)
- .value_name("PATTERN")
- .value_names(&["PATTERNS"])
- .help("List only entries where the content matches the pattern. Regex allowed."))
- )
-
}