浏览代码

ConfigDict should act like a dictionary

Adam "Cezar" Jenkins 13 年之前
父节点
当前提交
6415734f3c
共有 1 个文件被更改,包括 12 次插入1 次删除
  1. 12 1
      dulwich/config.py

+ 12 - 1
dulwich/config.py

@@ -28,6 +28,8 @@ import errno
 import os
 import re
 
+from UserDict import DictMixin
+
 from dulwich.file import GitFile
 
 
@@ -73,7 +75,7 @@ class Config(object):
         raise NotImplementedError(self.set)
 
 
-class ConfigDict(Config):
+class ConfigDict(Config, DictMixin):
     """Git configuration stored in a dictionary."""
 
     def __init__(self, values=None):
@@ -90,6 +92,15 @@ class ConfigDict(Config):
             isinstance(other, self.__class__) and
             other._values == self._values)
 
+   def __getitem__(self, key):
+      return self._values[key]
+      
+   def __setitem__(self, key, value):
+      self._values[key] = value
+
+   def keys(self):
+      return self._values.keys()
+
     @classmethod
     def _parse_setting(cls, name):
         parts = name.split(".")