Rev 5777: Allow daughter classes to use different Section classes if/when needed. in file:///home/vila/src/bzr/experimental/config/

Vincent Ladeuil v.ladeuil+lp at free.fr
Tue Apr 12 08:53:25 UTC 2011


At file:///home/vila/src/bzr/experimental/config/

------------------------------------------------------------
revno: 5777
revision-id: v.ladeuil+lp at free.fr-20110412085324-dq847htbdg2rb2ks
parent: v.ladeuil+lp at free.fr-20110412083317-l3b3yyhls0fu4fvn
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: config-abstract-store
timestamp: Tue 2011-04-12 10:53:24 +0200
message:
  Allow daughter classes to use different Section classes if/when needed.
-------------- next part --------------
=== modified file 'bzrlib/config.py'
--- a/bzrlib/config.py	2011-04-12 08:33:17 +0000
+++ b/bzrlib/config.py	2011-04-12 08:53:24 +0000
@@ -2138,8 +2138,8 @@
 class Store(object):
     """Abstract interface to persistent storage for configuration options."""
 
-    readonly_section_class = None
-    mutable_section_class = None
+    readonly_section_class = ReadOnlySection
+    mutable_section_class = MutableSection
 
     @property
     def loaded(self):
@@ -2245,12 +2245,9 @@
         self.load()
         cobj = self._config_obj
         if cobj.scalars:
-
-# use self.readonly_section_kls
-
-            yield ReadOnlySection(None, cobj)
+            yield self.readonly_section_class(None, cobj)
         for section_name in cobj.sections:
-            yield ReadOnlySection(section_name, cobj[section_name])
+            yield self.readonly_section_class(section_name, cobj[section_name])
 
     def get_mutable_section(self, section_name=None):
         # We need a loaded store
@@ -2263,10 +2260,7 @@
             section = self._config_obj
         else:
             section = self._config_obj.setdefault(section_name, {})
-
-# use self.mutable_section_kls
-
-        return MutableSection(section_name, section)
+        return self.mutable_section_class(section_name, section)
 
 
 # Note that LockableConfigObjStore inherits from ConfigObjStore because we need



More information about the bazaar-commits mailing list