Revert "Work around plugins being garbage collected once enabled twice."

This reverts commit 2f71ef4264.
This commit is contained in:
Pedro Algarvio 2011-06-06 18:16:05 +01:00
parent 221dea1f1a
commit 59f9d4e5cc
3 changed files with 5 additions and 25 deletions

View File

@ -97,11 +97,10 @@ class Component(object):
self._component_starting_deferred = None self._component_starting_deferred = None
self._component_stopping_deferred = None self._component_stopping_deferred = None
_ComponentRegistry.register(self) _ComponentRegistry.register(self)
log.debug("Component '%s' initialized", self._component_name)
def __del__(self): def __del__(self):
_ComponentRegistry.deregister(self._component_name) _ComponentRegistry.deregister(self._component_name)
def _component_start_timer(self): def _component_start_timer(self):
if hasattr(self, "update"): if hasattr(self, "update"):
self._component_timer = LoopingCall(self.update) self._component_timer = LoopingCall(self.update)
@ -150,7 +149,7 @@ class Component(object):
self._component_stopping_deferred = None self._component_stopping_deferred = None
log.error(result) log.error(result)
return result return result
if self._component_state != "Stopped" and self._component_state != "Stopping": if self._component_state != "Stopped" and self._component_state != "Stopping":
if hasattr(self, "stop"): if hasattr(self, "stop"):
self._component_state = "Stopping" self._component_state = "Stopping"
@ -251,18 +250,6 @@ class ComponentRegistry(object):
else: else:
return succeed(None) return succeed(None)
def registered(self, name):
"""
Check if a component is registered with the us
:param name: the Component name to check
:type name: string
:returns: True or False
:rtype: bolean
"""
return name in self.components
def start(self, names=[]): def start(self, names=[]):
""" """
Starts Components that are currently in a Stopped state and their Starts Components that are currently in a Stopped state and their
@ -405,9 +392,7 @@ class ComponentRegistry(object):
_ComponentRegistry = ComponentRegistry() _ComponentRegistry = ComponentRegistry()
register = _ComponentRegistry.register
deregister = _ComponentRegistry.deregister deregister = _ComponentRegistry.deregister
registered = _ComponentRegistry.registered
start = _ComponentRegistry.start start = _ComponentRegistry.start
stop = _ComponentRegistry.stop stop = _ComponentRegistry.stop
pause = _ComponentRegistry.pause pause = _ComponentRegistry.pause

View File

@ -166,13 +166,8 @@ class PluginManagerBase:
DeprecationWarning, DeprecationWarning,
instance.__module__, 0 instance.__module__, 0
) )
if not component.registered(instance.plugin._component_name):
component.register(instance.plugin)
if self._component_state == "Started": if self._component_state == "Started":
component.start([instance.plugin._component_name]) component.start([instance.plugin._component_name])
plugin_name = plugin_name.replace("-", " ") plugin_name = plugin_name.replace("-", " ")
self.plugins[plugin_name] = instance self.plugins[plugin_name] = instance
if plugin_name not in self.config["enabled_plugins"]: if plugin_name not in self.config["enabled_plugins"]:

View File

@ -56,12 +56,12 @@ class CorePluginBase(PluginBase):
super(CorePluginBase, self).__init__("CorePlugin." + plugin_name) super(CorePluginBase, self).__init__("CorePlugin." + plugin_name)
# Register RPC methods # Register RPC methods
component.get("RPCServer").register_object(self, plugin_name.lower()) component.get("RPCServer").register_object(self, plugin_name.lower())
log.debug("CorePlugin '%s' initialized..", plugin_name) log.debug("CorePlugin initialized..")
class GtkPluginBase(PluginBase): class GtkPluginBase(PluginBase):
def __init__(self, plugin_name): def __init__(self, plugin_name):
super(GtkPluginBase, self).__init__("GtkPlugin." + plugin_name) super(GtkPluginBase, self).__init__("GtkPlugin." + plugin_name)
log.debug("GtkPlugin '%s' initialized..", plugin_name) log.debug("GtkPlugin initialized..")
class WebPluginBase(PluginBase): class WebPluginBase(PluginBase):
@ -76,7 +76,7 @@ class WebPluginBase(PluginBase):
# Register JSON rpc methods # Register JSON rpc methods
component.get("JSON").register_object(self, plugin_name.lower()) component.get("JSON").register_object(self, plugin_name.lower())
log.debug("WebPlugin '%s' initialized..", plugin_name) log.debug("WebPlugin initialized..")
def enable(self): def enable(self):
pass pass