Bug 568029 - Replace activator with settings class

Change-Id: Iad08bbf575d5de507c24361dbee055c773167639
Signed-off-by: Lars Vogel <Lars.Vogel@vogella.com>
diff --git a/bundles/org.eclipse.compare.core/META-INF/MANIFEST.MF b/bundles/org.eclipse.compare.core/META-INF/MANIFEST.MF
index 750221f..7ae79e0 100644
--- a/bundles/org.eclipse.compare.core/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.compare.core/META-INF/MANIFEST.MF
@@ -3,7 +3,6 @@
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.compare.core
 Bundle-Version: 3.6.1000.qualifier
-Bundle-Activator: org.eclipse.compare.internal.core.ComparePlugin
 Bundle-Vendor: %providerName
 Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)"
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/ComparePlugin.java b/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/CompareSettings.java
similarity index 69%
rename from bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/ComparePlugin.java
rename to bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/CompareSettings.java
index 7785601..444b322 100644
--- a/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/ComparePlugin.java
+++ b/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/CompareSettings.java
@@ -13,48 +13,36 @@
  *******************************************************************************/
 package org.eclipse.compare.internal.core;
 
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleContext;
-
 /**
  * The activator class controls the plug-in life cycle
  */
-public class ComparePlugin extends Plugin {
+public class CompareSettings {
 
 	// The plug-in ID
 	public static final String PLUGIN_ID = "org.eclipse.compare.core"; //$NON-NLS-1$
 
 	// The shared instance
-	private static ComparePlugin plugin;
+	private static CompareSettings compareSettings;
 
 	private boolean cappingDisabled;
 
 	/**
 	 * The constructor
 	 */
-	public ComparePlugin() {
+	private CompareSettings() {
 		// nothing to do
 	}
 
-	@Override
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		plugin = this;
-	}
-
-	@Override
-	public void stop(BundleContext context) throws Exception {
-		plugin = null;
-		super.stop(context);
-	}
-
 	/**
 	 * Returns the shared instance
 	 *
 	 * @return the shared instance
 	 */
-	public static ComparePlugin getDefault() {
-		return plugin;
+	public static CompareSettings getDefault() {
+		if (compareSettings == null) {
+			compareSettings = new CompareSettings();
+		}
+		return compareSettings;
 	}
 
 	public void setCappingDisabled(boolean disable) {
diff --git a/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/LCS.java b/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/LCS.java
index c528589..d8090cb 100644
--- a/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/LCS.java
+++ b/bundles/org.eclipse.compare.core/src/org/eclipse/compare/internal/core/LCS.java
@@ -98,7 +98,7 @@
 	}
 
 	private boolean isCappingDisabled() {
-		return ComparePlugin.getDefault().isCappingDisabled();
+		return CompareSettings.getDefault().isCappingDisabled();
 	}
 
 	/**
diff --git a/bundles/org.eclipse.compare.core/src/org/eclipse/compare/patch/PatchParser.java b/bundles/org.eclipse.compare.core/src/org/eclipse/compare/patch/PatchParser.java
index c648b56..f342fa5 100644
--- a/bundles/org.eclipse.compare.core/src/org/eclipse/compare/patch/PatchParser.java
+++ b/bundles/org.eclipse.compare.core/src/org/eclipse/compare/patch/PatchParser.java
@@ -16,7 +16,7 @@
 import java.io.BufferedReader;
 import java.io.IOException;
 
-import org.eclipse.compare.internal.core.ComparePlugin;
+import org.eclipse.compare.internal.core.CompareSettings;
 import org.eclipse.compare.internal.core.patch.PatchReader;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IStatus;
@@ -48,7 +48,7 @@
 			return patchReader.getAdjustedDiffs();
 		} catch (IOException e) {
 			throw new CoreException(new Status(IStatus.ERROR,
-					ComparePlugin.PLUGIN_ID, 0, e.getMessage(), e));
+					CompareSettings.PLUGIN_ID, 0, e.getMessage(), e));
 		} finally {
 			try {
 				reader.close();
diff --git a/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareContentViewerSwitchingPane.java b/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareContentViewerSwitchingPane.java
index 684f1d5..66b55ea 100644
--- a/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareContentViewerSwitchingPane.java
+++ b/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareContentViewerSwitchingPane.java
@@ -22,7 +22,7 @@
 import org.eclipse.compare.CompareEditorInput;
 import org.eclipse.compare.CompareViewerSwitchingPane;
 import org.eclipse.compare.Splitter;
-import org.eclipse.compare.internal.core.ComparePlugin;
+import org.eclipse.compare.internal.core.CompareSettings;
 import org.eclipse.compare.structuremergeviewer.ICompareInput;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.viewers.Viewer;
@@ -161,13 +161,13 @@
 				 */
 				IPreferenceStore preferenceStore = CompareUIPlugin.getDefault().getPreferenceStore();
 				boolean wasDisabled = preferenceStore.getBoolean(ComparePreferencePage.CAPPING_DISABLED);
-				ComparePlugin.getDefault().setCappingDisabled(true);
+				CompareSettings.getDefault().setCappingDisabled(true);
 				preferenceStore.setValue(ComparePreferencePage.CAPPING_DISABLED, true);
 				try {
 					getCompareConfiguration().setProperty(DISABLE_CAPPING_TEMPORARILY, Boolean.TRUE);
 				} finally {
 					if (!wasDisabled) {
-						ComparePlugin.getDefault().setCappingDisabled(false);
+						CompareSettings.getDefault().setCappingDisabled(false);
 						preferenceStore.setValue(ComparePreferencePage.CAPPING_DISABLED, false);
 					}
 				}
diff --git a/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ComparePreferencePage.java b/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ComparePreferencePage.java
index caa454e..a0e0e94 100644
--- a/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ComparePreferencePage.java
+++ b/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ComparePreferencePage.java
@@ -27,7 +27,7 @@
 import org.eclipse.compare.IEncodedStreamContentAccessor;
 import org.eclipse.compare.ITypedElement;
 import org.eclipse.compare.contentmergeviewer.TextMergeViewer;
-import org.eclipse.compare.internal.core.ComparePlugin;
+import org.eclipse.compare.internal.core.CompareSettings;
 import org.eclipse.compare.structuremergeviewer.DiffNode;
 import org.eclipse.compare.structuremergeviewer.Differencer;
 import org.eclipse.jface.dialogs.Dialog;
@@ -207,7 +207,7 @@
 		editors.forEach(FieldEditor::store);
 		fOverlayStore.propagate();
 
-		ComparePlugin.getDefault().setCappingDisabled(
+		CompareSettings.getDefault().setCappingDisabled(
 				getPreferenceStore().getBoolean(
 						ComparePreferencePage.CAPPING_DISABLED));
 		return true;
diff --git a/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareUIPlugin.java b/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareUIPlugin.java
index 384504d..3456ad1 100644
--- a/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareUIPlugin.java
+++ b/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/CompareUIPlugin.java
@@ -42,7 +42,7 @@
 import org.eclipse.compare.IStreamContentAccessor;
 import org.eclipse.compare.IStreamMerger;
 import org.eclipse.compare.ITypedElement;
-import org.eclipse.compare.internal.core.ComparePlugin;
+import org.eclipse.compare.internal.core.CompareSettings;
 import org.eclipse.compare.structuremergeviewer.ICompareInput;
 import org.eclipse.compare.structuremergeviewer.IStructureCreator;
 import org.eclipse.compare.structuremergeviewer.StructureDiffViewer;
@@ -285,7 +285,7 @@
 		debugRegistration = context.registerService(DebugOptionsListener.class, Policy.DEBUG_OPTIONS_LISTENER,
 				properties);
 
-		ComparePlugin.getDefault().setCappingDisabled(
+		CompareSettings.getDefault().setCappingDisabled(
 				getPreferenceStore().getBoolean(
 						ComparePreferencePage.CAPPING_DISABLED));
 	}