diff options
author | Eike Stepper | 2008-08-02 09:25:48 +0000 |
---|---|---|
committer | Eike Stepper | 2008-08-02 09:25:48 +0000 |
commit | ff0a4c7ec6b1e6bcd57a0bfa4f80da256deed1a0 (patch) | |
tree | df5b6a4870c2e9479e0be63c21da17a24d9d1c42 /plugins/org.eclipse.net4j.util.ui/src/org | |
parent | fbd6765453d74f2e95b0738bf017c698a596ace1 (diff) | |
download | cdo-ff0a4c7ec6b1e6bcd57a0bfa4f80da256deed1a0.tar.gz cdo-ff0a4c7ec6b1e6bcd57a0bfa4f80da256deed1a0.tar.xz cdo-ff0a4c7ec6b1e6bcd57a0bfa4f80da256deed1a0.zip |
[241121] Develop POP Process Tooling
https://bugs.eclipse.org/bugs/show_bug.cgi?id=241121
Diffstat (limited to 'plugins/org.eclipse.net4j.util.ui/src/org')
-rw-r--r-- | plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/UIActivator.java | 72 | ||||
-rw-r--r-- | plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/views/ContainerView.java | 28 |
2 files changed, 73 insertions, 27 deletions
diff --git a/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/UIActivator.java b/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/UIActivator.java index a4a0d6b52c..d3f167e60d 100644 --- a/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/UIActivator.java +++ b/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/UIActivator.java @@ -24,6 +24,11 @@ public class UIActivator extends AbstractUIPlugin { private OMBundle omBundle; + /** + * @since 2.0 + */ + protected BundleContext bundleContext; + public UIActivator(OMBundle omBundle) { this.omBundle = omBundle; @@ -35,16 +40,71 @@ public class UIActivator extends AbstractUIPlugin } @Override - public void start(BundleContext context) throws Exception + public final void start(BundleContext context) throws Exception { - OSGiActivator.startBundle(context, getOMBundle()); - super.start(context); + bundleContext = context; + OSGiActivator.traceStart(context); + if (omBundle == null) + { + throw new IllegalStateException("bundle == null"); + } + + try + { + super.start(context); + omBundle.setBundleContext(context); + doStart(); + } + catch (Error error) + { + omBundle.logger().error(error); + throw error; + } + catch (Exception ex) + { + omBundle.logger().error(ex); + throw ex; + } } @Override - public void stop(BundleContext context) throws Exception + public final void stop(BundleContext context) throws Exception + { + OSGiActivator.traceStop(context); + if (omBundle == null) + { + throw new IllegalStateException("bundle == null"); + } + + try + { + doStop(); + omBundle.setBundleContext(null); + super.stop(context); + } + catch (Error error) + { + omBundle.logger().error(error); + throw error; + } + catch (Exception ex) + { + omBundle.logger().error(ex); + throw ex; + } + } + + /** + * @since 2.0 + */ + protected void doStart() throws Exception + { + } + + /** + * @since 2.0 + */ + protected void doStop() throws Exception { - super.stop(context); - OSGiActivator.stopBundle(context, getOMBundle()); } } diff --git a/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/views/ContainerView.java b/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/views/ContainerView.java index 59fb769c8f..a9dc8c34e6 100644 --- a/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/views/ContainerView.java +++ b/plugins/org.eclipse.net4j.util.ui/src/org/eclipse/net4j/util/ui/views/ContainerView.java @@ -13,7 +13,6 @@ package org.eclipse.net4j.util.ui.views; import org.eclipse.net4j.util.container.IContainer; import org.eclipse.net4j.util.internal.ui.SharedIcons; import org.eclipse.net4j.util.internal.ui.actions.IntrospectAction; -import org.eclipse.net4j.util.internal.ui.bundle.OM; import org.eclipse.net4j.util.ui.UIUtil; import org.eclipse.net4j.util.ui.actions.SafeAction; @@ -126,28 +125,15 @@ public abstract class ContainerView extends ViewPart implements ISetSelectionTar @Override public final void createPartControl(Composite parent) { - try - { - shell = parent.getShell(); - Composite composite = UIUtil.createGridComposite(parent, 1); + shell = parent.getShell(); + Composite composite = UIUtil.createGridComposite(parent, 1); - Control control = createUI(composite); - control.setLayoutData(UIUtil.createGridData()); + Control control = createUI(composite); + control.setLayoutData(UIUtil.createGridData()); - hookContextMenu(); - hookDoubleClick(); - contributeToActionBars(); - } - catch (Error ex) - { - OM.LOG.error(ex); - throw ex; - } - catch (RuntimeException ex) - { - OM.LOG.error(ex); - throw ex; - } + hookContextMenu(); + hookDoubleClick(); + contributeToActionBars(); } protected Control createUI(Composite parent) |