From d9553a2ff591872cabd7318e36f5cd1484d6239b Mon Sep 17 00:00:00 2001 From: "adrian.sampson" Date: Mon, 7 Jul 2008 22:47:28 +0000 Subject: [PATCH] added remove, delete, read, and set commands --HG-- extra : convert_revision : svn%3A41726ec3-264d-0410-9c23-a9f1637257cc/trunk%4077 --- bts.py | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/bts.py b/bts.py index fb3ad8b13..39a574ae3 100755 --- a/bts.py +++ b/bts.py @@ -19,6 +19,38 @@ def imp(lib, paths): lib.add(path, copy=True) lib.save() +def option(lib, options): + (key, value) = options + lib.options[key] = value + lib.save() + +def remove(lib, criteria): + q = ' '.join(criteria) + if not q.strip(): + raise ValueError('must provide some criteria for removing') + for item in lib.get(q): + print "removing " + item.path + item.remove() + lib.save() + +def delete(lib, criteria): + q = ' '.join(criteria) + if not q.strip(): + raise ValueError('must provide some criteria for deleting') + for item in lib.get(q): + print "deleting " + item.path + item.delete() + lib.save() + +def read(lib, criteria): + q = ' '.join(criteria) + if not q.strip(): + q = None + for item in lib.get(q): + item.read() + item.store() + lib.save() + if __name__ == "__main__": # parse options usage = """usage: %prog [options] command @@ -44,10 +76,12 @@ command is one of: add, remove, update, write, list, help""" avail_commands = [ (add, ['add']), (imp, ['import', 'im', 'imp']), - #(remove, ['remove', 'rm']), - #(update, ['update', 'up']), + (remove, ['remove', 'rm']), + (delete, ['delete', 'del']), + (read, ['read', 'r']), #(write, ['write', 'wr', 'w']), (ls, ['list', 'ls']), + (option, ['set']), (help, ['help', 'h']), ] for test_command in avail_commands: