[svn] commit: r3723 - in /branches/trac405/src: bin/bindctl/bindcmd.py bin/bindctl/bindctl-source.py.in lib/python/isc/config/ccsession.py lib/python/isc/config/tests/ccsession_test.py

BIND 10 source code commits bind10-changes at lists.isc.org
Sun Dec 5 22:08:14 UTC 2010


Author: jelte
Date: Sun Dec  5 22:08:14 2010
New Revision: 3723

Log:
replaced workaround (identifier/value switch) by more fundamental solution (making the value optional)

Modified:
    branches/trac405/src/bin/bindctl/bindcmd.py
    branches/trac405/src/bin/bindctl/bindctl-source.py.in
    branches/trac405/src/lib/python/isc/config/ccsession.py
    branches/trac405/src/lib/python/isc/config/tests/ccsession_test.py

Modified: branches/trac405/src/bin/bindctl/bindcmd.py
==============================================================================
--- branches/trac405/src/bin/bindctl/bindcmd.py (original)
+++ branches/trac405/src/bin/bindctl/bindcmd.py Sun Dec  5 22:08:14 2010
@@ -569,7 +569,10 @@
             elif cmd.command == "add":
                 self.config_data.add_value(identifier, cmd.params['value'])
             elif cmd.command == "remove":
-                self.config_data.remove_value(identifier, cmd.params['value'])
+                if 'value' in cmd.params:
+                    self.config_data.remove_value(identifier, cmd.params['value'])
+                else:
+                    self.config_data.remove_value(identifier, None)
             elif cmd.command == "set":
                 if 'identifier' not in cmd.params:
                     print("Error: missing identifier or value")

Modified: branches/trac405/src/bin/bindctl/bindctl-source.py.in
==============================================================================
--- branches/trac405/src/bin/bindctl/bindctl-source.py.in (original)
+++ branches/trac405/src/bin/bindctl/bindctl-source.py.in Sun Dec  5 22:08:14 2010
@@ -48,7 +48,7 @@
     cmd = CommandInfo(name = "remove", desc = "Remove entry from configuration list")
     param = ParamInfo(name = "identifier", type = "string", optional=True)
     cmd.add_param(param)
-    param = ParamInfo(name = "value", type = "string", optional=False)
+    param = ParamInfo(name = "value", type = "string", optional=True)
     cmd.add_param(param)
     module.add_command(cmd)
 

Modified: branches/trac405/src/lib/python/isc/config/ccsession.py
==============================================================================
--- branches/trac405/src/lib/python/isc/config/ccsession.py (original)
+++ branches/trac405/src/lib/python/isc/config/ccsession.py Sun Dec  5 22:08:14 2010
@@ -395,9 +395,6 @@
            a DataTypeError if the value at the identifier is not a list,
            or if the given value_str does not match the list_item_spec
            """
-        if identifier == "":
-            identifier = value_str
-            value_str = None
         module_spec = self.find_spec_part(identifier)
         if (type(module_spec) != dict or "list_item_spec" not in module_spec):
             raise isc.cc.data.DataNotFoundError(str(identifier) + " is not a list")

Modified: branches/trac405/src/lib/python/isc/config/tests/ccsession_test.py
==============================================================================
--- branches/trac405/src/lib/python/isc/config/tests/ccsession_test.py (original)
+++ branches/trac405/src/lib/python/isc/config/tests/ccsession_test.py Sun Dec  5 22:08:14 2010
@@ -639,8 +639,6 @@
         self.assertEqual({'Spec2': {'item5': ['foo']}}, uccs._local_changes)
         uccs.remove_value("Spec2/item5[0]", None)
         self.assertEqual({'Spec2': {'item5': []}}, uccs._local_changes)
-        uccs.remove_value("", "Spec2/item5[0]")
-        self.assertEqual({'Spec2': {'item5': []}}, uccs._local_changes)
 
     def test_commit(self):
         fake_conn = fakeUIConn()




More information about the bind10-changes mailing list