26 super(E5Application, self).__init__(argv) |
26 super(E5Application, self).__init__(argv) |
27 |
27 |
28 self.__objectRegistry = {} |
28 self.__objectRegistry = {} |
29 self.__pluginObjectRegistry = {} |
29 self.__pluginObjectRegistry = {} |
30 |
30 |
31 def registerObject(self, name, object): |
31 def registerObject(self, name, objectRef): |
32 """ |
32 """ |
33 Public method to register an object in the object registry. |
33 Public method to register an object in the object registry. |
34 |
34 |
35 @param name name of the object (string) |
35 @param name name of the object (string) |
36 @param object reference to the object |
36 @param objectRef reference to the object |
37 @exception KeyError raised when the given name is already in use |
37 @exception KeyError raised when the given name is already in use |
38 """ |
38 """ |
39 if name in self.__objectRegistry: |
39 if name in self.__objectRegistry: |
40 raise KeyError('Object "{0}" already registered.'.format(name)) |
40 raise KeyError('Object "{0}" already registered.'.format(name)) |
41 else: |
41 else: |
42 self.__objectRegistry[name] = object |
42 self.__objectRegistry[name] = objectRef |
43 |
43 |
44 def getObject(self, name): |
44 def getObject(self, name): |
45 """ |
45 """ |
46 Public method to get a reference to a registered object. |
46 Public method to get a reference to a registered object. |
47 |
47 |
52 if name in self.__objectRegistry: |
52 if name in self.__objectRegistry: |
53 return self.__objectRegistry[name] |
53 return self.__objectRegistry[name] |
54 else: |
54 else: |
55 raise KeyError('Object "{0}" is not registered.'.format(name)) |
55 raise KeyError('Object "{0}" is not registered.'.format(name)) |
56 |
56 |
57 def registerPluginObject(self, name, object, pluginType=None): |
57 def registerPluginObject(self, name, objectRef, pluginType=None): |
58 """ |
58 """ |
59 Public method to register a plugin object in the object registry. |
59 Public method to register a plugin object in the object registry. |
60 |
60 |
61 @param name name of the plugin object (string) |
61 @param name name of the plugin object (string) |
62 @param object reference to the plugin object |
62 @param objectRef reference to the plugin object |
63 @keyparam pluginType type of the plugin object (string) |
63 @keyparam pluginType type of the plugin object (string) |
64 @exception KeyError raised when the given name is already in use |
64 @exception KeyError raised when the given name is already in use |
65 """ |
65 """ |
66 if name in self.__pluginObjectRegistry: |
66 if name in self.__pluginObjectRegistry: |
67 raise KeyError( |
67 raise KeyError( |
68 'Pluginobject "{0}" already registered.'.format(name)) |
68 'Pluginobject "{0}" already registered.'.format(name)) |
69 else: |
69 else: |
70 self.__pluginObjectRegistry[name] = (object, pluginType) |
70 self.__pluginObjectRegistry[name] = (objectRef, pluginType) |
71 |
71 |
72 def unregisterPluginObject(self, name): |
72 def unregisterPluginObject(self, name): |
73 """ |
73 """ |
74 Public method to unregister a plugin object in the object registry. |
74 Public method to unregister a plugin object in the object registry. |
75 |
75 |