Trees | Index | Help |
---|
|
1 2 from baseObjects import ObjectStore 3 from configParser import C3Object 4 from recordStore import BdbRecordStore 5 from utils import getFirstData, elementType 6 import dynamic 7 from c3errors import ConfigFileException 810 # Store XML records in RecordStore 11 # Retrieve and instantiate 12 13 # NB Use create_record() to store configurations6215 # Need to implement object -> config xml for all objects! 16 # Check doesn't exist, then call store_object 17 raise(NotImplementedError)18 2123 rec = self.fetch_record(session, id) 24 if (not rec): 25 return None 26 27 dom = rec.get_dom() 28 for d in dom.childNodes: 29 if d.nodeType == elementType: 30 topNode = d 31 break 32 # Need to import stuff first, possibly 33 for child in topNode.childNodes: 34 if child.nodeType == elementType: 35 if (child.localName == "imports"): 36 # Do this now so we can reference 37 for mod in child.childNodes: 38 if mod.nodeType == elementType and mod.localName == "module": 39 name, objects, withname = ('', [], None) 40 for n in mod.childNodes: 41 if (n.nodeType == elementType): 42 if (n.localName == 'name'): 43 name = getFirstData(n) 44 elif (n.localName == 'object'): 45 objects.append(getFirstData(n)) 46 elif (n.localName == 'withName'): 47 withname = getFirstData(n) 48 if (name): 49 dynamic.globalImport(name, objects, withname) 50 else: 51 raise(ConfigFileException('No name given for module to import in configFile for %s' % (self.id))) 52 53 object = dynamic.makeObjectFromDom(session, topNode, self) 54 return object5557 # Scan like interface? 58 raise(NotImplementedError)5961 raise(NotImplementedError)
Trees | Index | Help |
---|
Generated by Epydoc 3.0alpha2 on Wed Aug 9 18:10:52 2006 | http://epydoc.sf.net |