summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/Bcfg2/Server/Plugin/helpers.py9
-rw-r--r--src/lib/Bcfg2/Utils.py15
-rw-r--r--src/lib/Bcfg2/version.py2
3 files changed, 24 insertions, 2 deletions
diff --git a/src/lib/Bcfg2/Server/Plugin/helpers.py b/src/lib/Bcfg2/Server/Plugin/helpers.py
index 4bfef89f3..0123d68a1 100644
--- a/src/lib/Bcfg2/Server/Plugin/helpers.py
+++ b/src/lib/Bcfg2/Server/Plugin/helpers.py
@@ -313,6 +313,15 @@ class DirectoryBacked(Debuggable):
def __getitem__(self, key):
return self.entries[key]
+ def __len__(self):
+ return len(self.entries)
+
+ def __delitem__(self, key):
+ del self.entries[key]
+
+ def __setitem__(self, key, val):
+ self.entries[key] = val
+
def __iter__(self):
return iter(list(self.entries.items()))
diff --git a/src/lib/Bcfg2/Utils.py b/src/lib/Bcfg2/Utils.py
index 601217556..ed5c0a377 100644
--- a/src/lib/Bcfg2/Utils.py
+++ b/src/lib/Bcfg2/Utils.py
@@ -22,7 +22,7 @@ class ClassName(object):
return owner.__name__
-class PackedDigitRange(object):
+class PackedDigitRange(object): # pylint: disable=E0012,R0924
""" Representation of a set of integer ranges. A range is
described by a comma-delimited string of integers and ranges,
e.g.::
@@ -145,6 +145,19 @@ class ExecutorResult(object):
returned a tuple of (return value, stdout split by lines). """
return (self.retval, self.stdout.splitlines())[idx]
+ def __len__(self):
+ """ This provides compatibility with the old Executor, which
+ returned a tuple of (return value, stdout split by lines). """
+ return 2
+
+ def __delitem__(self, _):
+ raise TypeError("'%s' object doesn't support item deletion" %
+ self.__class__.__name__)
+
+ def __setitem__(self, idx, val):
+ raise TypeError("'%s' object does not support item assignment" %
+ self.__class__.__name__)
+
def __nonzero__(self):
return self.__bool__()
diff --git a/src/lib/Bcfg2/version.py b/src/lib/Bcfg2/version.py
index 6f3ba3e49..12fc584fe 100644
--- a/src/lib/Bcfg2/version.py
+++ b/src/lib/Bcfg2/version.py
@@ -5,7 +5,7 @@ import re
__version__ = "1.3.1"
-class Bcfg2VersionInfo(tuple):
+class Bcfg2VersionInfo(tuple): # pylint: disable=E0012,R0924
""" object to make granular version operations (particularly
comparisons) easier """