54 def add(self, configurable, package, module, lib):
55 """Method to populate the Db.
56 It is called from the auto-generated Xyz_confDb.py files (genconf.cpp)
57 @param configurable: the name of the configurable being added
58 @param package: the name of the package which holds this Configurable
59 @param module: the name of the python module holding the Configurable
60 @param lib: the name of the library holding the component(s) (ie: the
61 C++ Gaudi component which is mapped by the Configurable)
62 """
63 cfg = {"package": package, "module": module, "lib": lib}
64 if configurable in self:
65
66 if cfg["lib"] != self[configurable]["lib"]:
67 log.debug(
68 "dup!! [%s] p=%s m=%s lib=%s", configurable, package, module, lib
69 )
70 if configurable in self._duplicates:
71 self._duplicates[configurable] += [cfg]
72 else:
73 self._duplicates[configurable] = [cfg]
74 else:
75 log.debug("added [%s] p=%s m=%s lib=%s", configurable, package, module, lib)
76 self[configurable] = cfg
77