Modularized commands into files
authorAaron Bentley <abentley@panoramicfeedback.com>
Fri, 11 Mar 2005 18:39:26 +0000 (18:39 +0000)
committerAaron Bentley <abentley@panoramicfeedback.com>
Fri, 11 Mar 2005 18:39:26 +0000 (18:39 +0000)
be
becommands/__init__.py [moved from commands/__init__.py with 100% similarity]
becommands/close.py [new file with mode: 0644]
becommands/list.py [new file with mode: 0644]
becommands/new.py [new file with mode: 0644]
becommands/open.py [new file with mode: 0644]
becommands/set_root.py [new file with mode: 0644]
becommands/severity.py [moved from commands/severity.py with 100% similarity]
becommands/show.py [new file with mode: 0644]

diff --git a/be b/be
index 5c0490614c31c64d25a8fa4b8ed6cd2c35e201fa..3aa8d383061a8bce85502ed56b8c365c23cbcec9 100755 (executable)
--- a/be
+++ b/be
@@ -4,11 +4,16 @@ from libbe.bugdir import tree_root, create_bug_dir
 from libbe import names
 import sys
 import os
-import commands
-import commands.severity
+import becommands.severity
+import becommands.list
+import becommands.show
+import becommands.set_root
+import becommands.new
+import becommands.close
+import becommands.open
 __doc__ = """Bugs Everywhere - Distributed bug tracking
 
-Supported commands
+Supported becommands
  set-root: assign the root directory for bug tracking
       new: Create a new bug
      list: list bugs
@@ -17,56 +22,11 @@ Supported commands
      open: re-open a bug
  severity: %s
 
-Unimplemented commands
+Unimplemented becommands
   comment: append a comment to a bug
-""" % commands.severity.__desc__
+""" % becommands.severity.__desc__
 
-def list_bugs(args):
-    active = True
-    severity = ("minor", "serious", "critical", "fatal")
-    def filter(bug):
-        if active is not None:
-            if bug.active != active:
-                return False
-        if bug.severity not in severity:
-            return False
-        return True
-    all_bugs = list(tree_root(os.getcwd()).list())
-    bugs = [b for b in all_bugs if filter(b) ]
-    if len(bugs) == 0:
-        print "No matching bugs found"
-    for bug in bugs:
-        print bug_summary(bug, all_bugs)
 
-def show_bug(args):
-    bug_dir = tree_root(os.getcwd())
-    if len(args) !=1:
-        raise UserError("Please specify a bug id.")
-    print bug_summary(get_bug(args[0], bug_dir), list(bug_dir.list()))
-
-def set_root(args):
-    if len(args) != 1:
-        raise UserError("Please supply a directory path")
-    create_bug_dir(args[0])
-
-def new_bug(args):
-    if len(args) != 1:
-        raise UserError("Please supply a summary message")
-    dir = tree_root(".")
-    bugs = (dir.list())
-    bug = dir.new_bug()
-    bug.creator = names.creator()
-    bug.severity = "minor"
-    bug.status = "open"
-    bug.summary = args[0]
-
-def close_bug(args):
-    assert(len(args) == 1)
-    get_bug(args[0], tree_root('.')).status = "closed"
-
-def open_bug(args):
-    assert(len(args) == 1)
-    get_bug(args[0], tree_root('.')).status = "open"
 
 if len(sys.argv) == 1:
     print __doc__
@@ -74,13 +34,13 @@ else:
     try:
         try:
             cmd = {
-                "list": list_bugs,
-                "show": show_bug,
-                "set-root": set_root,
-                "new": new_bug,
-                "close": close_bug,
-                "open": open_bug,
-                "severity": commands.severity.execute,
+                "list": becommands.list.execute,
+                "show": becommands.show.execute,
+                "set-root": becommands.set_root.execute,
+                "new": becommands.new.execute,
+                "close": becommands.close.execute,
+                "open": becommands.open.execute,
+                "severity": becommands.severity.execute,
             }[sys.argv[1]]
         except KeyError, e:
             raise UserError("Unknown command \"%s\"" % e.args[0])
similarity index 100%
rename from commands/__init__.py
rename to becommands/__init__.py
diff --git a/becommands/close.py b/becommands/close.py
new file mode 100644 (file)
index 0000000..184e2e1
--- /dev/null
@@ -0,0 +1,4 @@
+from libbe import cmdutil
+def execute(args):
+    assert(len(args) == 1)
+    cmdutil.get_bug(args[0]).status = "closed"
diff --git a/becommands/list.py b/becommands/list.py
new file mode 100644 (file)
index 0000000..b608629
--- /dev/null
@@ -0,0 +1,18 @@
+from libbe import bugdir, cmdutil
+import os
+def execute(args):
+    active = True
+    severity = ("minor", "serious", "critical", "fatal")
+    def filter(bug):
+        if active is not None:
+            if bug.active != active:
+                return False
+        if bug.severity not in severity:
+            return False
+        return True
+    all_bugs = list(bugdir.tree_root(os.getcwd()).list())
+    bugs = [b for b in all_bugs if filter(b) ]
+    if len(bugs) == 0:
+        print "No matching bugs found"
+    for bug in bugs:
+        print cmdutil.bug_summary(bug, all_bugs)
diff --git a/becommands/new.py b/becommands/new.py
new file mode 100644 (file)
index 0000000..2e78524
--- /dev/null
@@ -0,0 +1,13 @@
+from libbe import bugdir, cmdutil, names
+def execute(args):
+    if len(args) != 1:
+        raise cmdutil.UserError("Please supply a summary message")
+    dir = bugdir.tree_root(".")
+    bugs = (dir.list())
+    bug = dir.new_bug()
+    bug.creator = names.creator()
+    bug.severity = "minor"
+    bug.status = "open"
+    bug.summary = args[0]
+
+
diff --git a/becommands/open.py b/becommands/open.py
new file mode 100644 (file)
index 0000000..db89035
--- /dev/null
@@ -0,0 +1,4 @@
+from libbe import cmdutil
+def execute(args):
+    assert(len(args) == 1)
+    cmdutil.get_bug(args[0]).status = "open"
diff --git a/becommands/set_root.py b/becommands/set_root.py
new file mode 100644 (file)
index 0000000..bf1d495
--- /dev/null
@@ -0,0 +1,6 @@
+from libbe import bugdir, cmdutil
+
+def execute(args):
+    if len(args) != 1:
+        raise cmdutil.UserError("Please supply a directory path")
+    bugdir.create_bug_dir(args[0])
similarity index 100%
rename from commands/severity.py
rename to becommands/severity.py
diff --git a/becommands/show.py b/becommands/show.py
new file mode 100644 (file)
index 0000000..8b38386
--- /dev/null
@@ -0,0 +1,9 @@
+from libbe import bugdir, cmdutil
+import os
+
+def execute(args):
+    bug_dir = bugdir.tree_root(os.getcwd())
+    if len(args) !=1:
+        raise cmdutil.UserError("Please specify a bug id.")
+    print cmdutil.bug_summary(cmdutil.get_bug(args[0], bug_dir), 
+                              list(bug_dir.list()))