command:serve_commands: new command for running a command server.
[be.git] / be
diff --git a/be b/be
index 11e8c5cb3c2a896b0906121f384ea453daf36457..b9b638b1981e7d83b3468f476bd5eb1ac1abcb4b 100755 (executable)
--- a/be
+++ b/be
@@ -1,52 +1,26 @@
 #!/usr/bin/env python
-"""Bugs Everywhere - Distributed bug tracking
+# Copyright (C) 2005-2012 Aaron Bentley <abentley@panoramicfeedback.com>
+#                         Chris Ball <cjb@laptop.org>
+#                         Gianluca Montecchi <gian@grys.it>
+#                         Oleg Romanyshyn <oromanyshyn@panoramicfeedback.com>
+#                         W. Trevor King <wking@drexel.edu>
+#
+# This file is part of Bugs Everywhere.
+#
+# Bugs Everywhere is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the Free
+# Software Foundation, either version 2 of the License, or (at your option) any
+# later version.
+#
+# Bugs Everywhere is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Bugs Everywhere.  If not, see <http://www.gnu.org/licenses/>.
 
-be list: list bugs
-be status: view or set the status of a bug
-be comment: append a comment to a bug
-be set-root: assign the root directory for bug tracking
-"""
-from libbe.cmdutil import *
-from libbe.bugdir import tree_root
 import sys
-import os
+import libbe.ui.command_line
 
-def list_bugs(args):
-    active = True
-    status = ("minor", "serious", "critical", "fatal")
-    def filter(bug):
-        if active is not None:
-            if bug.active != active:
-                return False
-        if bug.status not in status:
-            return False
-        return True
-        
-    bugs = [b for b in tree_root(os.getcwd()).list() ]
-    if len(bugs) == 0:
-        print "No matching bugs found"
-    for bug in bugs:
-        target = bug.target
-        if target is None:
-            target = ""
-        else:
-            target = " target: %s" % target
-        print "id: %s severity: %s%s\n%s\n" % (unique_name(bug, bugs), 
-                                             bug.severity, target, bug.summary)
-
-    
-
-if len(sys.argv) == 1:
-    print __doc__
-else:
-    try:
-        try:
-            cmd = {
-                "list": list_bugs
-            }[sys.argv[1]]
-        except KeyError, e:
-            raise UserError("Unknown command \"%s\"" % e.args[0])
-        cmd(sys.argv[2:])
-    except UserError, e:
-        print e
-        sys.exit(1)
+sys.exit(libbe.ui.command_line.main())