/** * Subscribe/unsubscribe container. */ @Override public void onPluginEvent(PluginEvent event) { ElementPlugin plugin = event.getPlugin(); switch (event.getAction()) { case SUBSCRIBE: init(); plugins.add(plugin); plugin.setDisabled(isDisabled()); break; case UNSUBSCRIBE: plugins.remove(plugin); plugin.setDisabled(false); break; } }
/** * Listen for plugin lifecycle events. * * @see org.carewebframework.shell.plugins.IPluginEventListener#onPluginEvent(org.carewebframework.shell.plugins.PluginEvent) */ @Override public void onPluginEvent(PluginEvent event) { switch (event.getAction()) { case SUBSCRIBE: // Upon initial subscription, begin listening for specified generic events. plugin = event.getPlugin(); doSubscribe(true); break; case LOAD: // Stop listening once loaded. plugin.unregisterListener(this); break; case UNSUBSCRIBE: // Stop listening for generic events once unsubscribed from plugin events. doSubscribe(false); break; } }