Move o.e.dltk.mylyn to Java 8.

Together with various modernizations of the codebase.

Change-Id: Ic9bad10cd06198295f6877e21013d3f9e2014e10
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/.classpath b/mylyn/plugins/org.eclipse.dltk.mylyn/.classpath
index 2a9cf8c..0ba6e7e 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/.classpath
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/.classpath
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8" />
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
 		<accessrules>
 			<accessrule kind="accessible" pattern="org/eclipse/core/internal/resources/Marker"/>
@@ -13,10 +14,5 @@
 		</accessrules>
 	</classpathentry>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
-		<accessrules>
-			<accessrule kind="nonaccessible" pattern="com/sun/**"/>
-		</accessrules>
-	</classpathentry>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/.settings/org.eclipse.jdt.core.prefs b/mylyn/plugins/org.eclipse.dltk.mylyn/.settings/org.eclipse.jdt.core.prefs
index 7b6172c..33f8a10 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/.settings/org.eclipse.jdt.core.prefs
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/.settings/org.eclipse.jdt.core.prefs
@@ -1,4 +1,3 @@
-#Tue May 12 20:42:47 PDT 2009
 eclipse.preferences.version=1
 org.eclipse.jdt.core.codeComplete.argumentPrefixes=
 org.eclipse.jdt.core.codeComplete.argumentSuffixes=
@@ -8,22 +7,34 @@
 org.eclipse.jdt.core.codeComplete.localSuffixes=
 org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
 org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
+org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
+org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
+org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
+org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
+org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.compliance=1.8
 org.eclipse.jdt.core.compiler.debug.lineNumber=generate
 org.eclipse.jdt.core.compiler.debug.localVariable=generate
 org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.deprecation=warning
 org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
 org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
 org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
 org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
@@ -31,51 +42,78 @@
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
 org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
 org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
 org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
 org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
 org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
 org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
 org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
 org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
 org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
 org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
+org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
 org.eclipse.jdt.core.compiler.problem.nullReference=error
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
+org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
 org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
 org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
 org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
 org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
 org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
+org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
+org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
 org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
 org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedImport=warning
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
 org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.compiler.source=1.8
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL
 org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX
@@ -152,10 +190,12 @@
 org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
 org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
 org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
 org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
 org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
 org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
 org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
 org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/META-INF/MANIFEST.MF b/mylyn/plugins/org.eclipse.dltk.mylyn/META-INF/MANIFEST.MF
index fa763e8..6ae7a9f 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/META-INF/MANIFEST.MF
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/META-INF/MANIFEST.MF
@@ -35,4 +35,4 @@
  org.eclipse.dltk.internal.mylyn.actions,
  org.eclipse.dltk.internal.mylyn.editor,
  org.eclipse.dltk.internal.mylyn.search
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/build.properties b/mylyn/plugins/org.eclipse.dltk.mylyn/build.properties
index 87f64a8..279f793 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/build.properties
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/build.properties
@@ -1,5 +1,5 @@
 ###############################################################################
-# Copyright (c) 2005, 2006 Mylyn project committers and others.
+# Copyright (c) 2005, 2017 Mylyn project committers and others.
 # All rights reserved. This program and the accompanying materials
 # are made available under the terms of the Eclipse Public License v1.0
 # which accompanies this distribution, and is available at
@@ -13,5 +13,4 @@
                .
 src.includes = about.html,\
                schema/
-jre.compilation.profile = J2SE-1.5
 source.. = src/
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/ActiveFoldingEditorTracker.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/ActiveFoldingEditorTracker.java
index 738ace2..ebc8741 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/ActiveFoldingEditorTracker.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/ActiveFoldingEditorTracker.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -24,7 +24,7 @@
  */
 public class ActiveFoldingEditorTracker extends AbstractEditorTracker {
 
-	protected Map<ScriptEditor, ActiveFoldingListener> editorListenerMap = new HashMap<ScriptEditor, ActiveFoldingListener>();
+	protected Map<ScriptEditor, ActiveFoldingListener> editorListenerMap = new HashMap<>();
 
 	@Override
 	public void editorOpened(IEditorPart part) {
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKDebugStructureBridge.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKDebugStructureBridge.java
index 8aead99..f22f4b4 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKDebugStructureBridge.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKDebugStructureBridge.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -41,7 +41,7 @@
 	 * Needed due to slowness in resolving type names. We expect the stack frame elements to disappear, they are never
 	 * explicitly removed. TODO: consider clearing on each re-launch
 	 */
-	private final Map<ScriptStackFrame, IModelElement> stackFrameMap = new WeakHashMap<ScriptStackFrame, IModelElement>();
+	private final Map<ScriptStackFrame, IModelElement> stackFrameMap = new WeakHashMap<>();
 
 	@Override
 	public boolean acceptsObject(Object object) {
@@ -69,8 +69,8 @@
 						indexOfCurrentFrame = i;
 					}
 
-					IInteractionElement correspondingElement = ContextCore.getContextManager().getElement(
-							getHandleIdentifier(frame));
+					IInteractionElement correspondingElement = ContextCore.getContextManager()
+							.getElement(getHandleIdentifier(frame));
 					if (correspondingElement != null && correspondingElement.getInterest().isInteresting()) {
 						indexOfInterestingFrame = i;
 					}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKStructureBridge.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKStructureBridge.java
index 7368dcf..9767e7e 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKStructureBridge.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKStructureBridge.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -89,7 +89,7 @@
 				Object[] children;
 				try {
 					children = modelContentProvider.getExtendedChildren(element, parent.getChildren());
-					List<String> childHandles = new ArrayList<String>();
+					List<String> childHandles = new ArrayList<>();
 					for (Object element2 : children) {
 						String childHandle = getHandleIdentifier(element2);
 						if (childHandle != null) {
@@ -97,7 +97,8 @@
 						}
 					}
 					AbstractContextStructureBridge parentBridge = ContextCore.getStructureBridge(parentContentType);
-					if (parentBridge != null && ContextCore.CONTENT_TYPE_RESOURCE.equals(parentBridge.getContentType())) {
+					if (parentBridge != null
+							&& ContextCore.CONTENT_TYPE_RESOURCE.equals(parentBridge.getContentType())) {
 						if (element.getElementType() < IModelElement.TYPE) {
 							List<String> resourceChildren = parentBridge.getChildHandles(handle);
 							if (!resourceChildren.isEmpty()) {
@@ -109,7 +110,8 @@
 					return childHandles;
 				} catch (ModelException e) {
 					// NOTE: it would be better if this was not hard-wired but used the parent/child bridge mapping
-					AbstractContextStructureBridge parentBridge = ContextCore.getStructureBridge(ContextCore.CONTENT_TYPE_RESOURCE);
+					AbstractContextStructureBridge parentBridge = ContextCore
+							.getStructureBridge(ContextCore.CONTENT_TYPE_RESOURCE);
 					return parentBridge.getChildHandles(handle);
 				} catch (Exception e) {
 					StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not get children", //$NON-NLS-1$
@@ -242,8 +244,8 @@
 				WorkingSet workingSet = (WorkingSet) object;
 				IAdaptable[] elements = workingSet.getElements();
 				for (IAdaptable adaptable : elements) {
-					IInteractionElement interactionElement = ContextCore.getContextManager().getElement(
-							getHandleIdentifier(adaptable));
+					IInteractionElement interactionElement = ContextCore.getContextManager()
+							.getElement(getHandleIdentifier(adaptable));
 					if (interactionElement != null && interactionElement.getInterest().isInteresting()) {
 						return false;
 					}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridge.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridge.java
index 85dafea..773e9a3 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridge.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridge.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2009 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -55,7 +55,7 @@
 			IEditorPart part = DLTKUIPlugin.openInEditor(javaElement);
 			EditorUtility.revealInEditor(part, javaElement);
 		} catch (Throwable t) {
-			StatusHandler.fail(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not open editor for: " //$NON-NLS-1$
+			StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not open editor for: " //$NON-NLS-1$
 					+ node, t));
 		}
 	}
@@ -65,11 +65,10 @@
 		try {
 			IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
 			if (page != null) {
-				List<IEditorReference> toClose = new ArrayList<IEditorReference>(4);
+				List<IEditorReference> toClose = new ArrayList<>(4);
 				for (IEditorReference reference : page.getEditorReferences()) {
 					try {
-						IModelElement input = (IModelElement) reference.getEditorInput()
-								.getAdapter(IModelElement.class);
+						IModelElement input = reference.getEditorInput().getAdapter(IModelElement.class);
 						if (input != null && node.getHandleIdentifier().equals(input.getHandleIdentifier())) {
 							toClose.add(reference);
 						}
@@ -82,7 +81,8 @@
 				}
 			}
 		} catch (Throwable t) {
-			StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not auto close editor", t)); //$NON-NLS-1$
+			StatusHandler
+					.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not auto close editor", t)); //$NON-NLS-1$
 		}
 	}
 
@@ -108,7 +108,7 @@
 		if (editorPart == null) {
 			return null;
 		}
-		List<TreeViewer> viewers = new ArrayList<TreeViewer>();
+		List<TreeViewer> viewers = new ArrayList<>();
 		Object out = editorPart.getAdapter(IContentOutlinePage.class);
 		if (out instanceof Page) {
 			Page page = (Page) out;
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridgePlugin.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridgePlugin.java
index 89c2af7..14259bd 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridgePlugin.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiBridgePlugin.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -106,8 +106,8 @@
 		// the Task-Focused category should be disabled if the user reverts to
 		// the default
 		String defaultValue = dltkPrefs.getDefaultString(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES);
-		dltkPrefs.setDefault(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES, defaultValue
-				+ DLTKUiUtil.ASSIST_MYLYN_ALL + DLTKUiUtil.SEPARATOR_CODEASSIST);
+		dltkPrefs.setDefault(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES,
+				defaultValue + DLTKUiUtil.ASSIST_MYLYN_ALL + DLTKUiUtil.SEPARATOR_CODEASSIST);
 	}
 
 	private void lazyStart() {
@@ -194,7 +194,7 @@
 
 	/**
 	 * Returns an image descriptor for the image file at the given plug-in relative path.
-	 * 
+	 *
 	 * @param path
 	 *            the path
 	 * @return the image descriptor
@@ -212,6 +212,7 @@
 
 	public static class DLTKUiBridgeStartup implements IContextUiStartup {
 
+		@Override
 		public void lazyStartup() {
 			DLTKUiBridgePlugin.getDefault().lazyStart();
 		}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiUtil.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiUtil.java
index cceb1fa..e03e51a 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiUtil.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/DLTKUiUtil.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -44,18 +44,14 @@
 	public static boolean isDefaultAssistActive(String computerId) {
 		if (DLTKUiUtil.ASSIST_DLTK_ALL.equals(computerId)) {
 			CompletionProposalCategory category = getProposalCategory(computerId);
-			return (category != null) ? category.isEnabled()
-					&& category.isIncluded() : false;
+			return (category != null) ? category.isEnabled() && category.isIncluded() : false;
 		}
-		Set<String> disabledIds = getDisabledIds(DLTKUIPlugin.getDefault()
-				.getPreferenceStore());
+		Set<String> disabledIds = getDisabledIds(DLTKUIPlugin.getDefault().getPreferenceStore());
 		return !disabledIds.contains(computerId);
 	}
 
-	public static CompletionProposalCategory getProposalCategory(
-			String computerId) {
-		List<?> computers = CompletionProposalComputerRegistry.getDefault()
-				.getProposalCategories();
+	public static CompletionProposalCategory getProposalCategory(String computerId) {
+		List<?> computers = CompletionProposalComputerRegistry.getDefault().getProposalCategories();
 		for (Object object : computers) {
 			CompletionProposalCategory proposalCategory = (CompletionProposalCategory) object;
 			if (computerId.equals((proposalCategory).getId())) {
@@ -65,8 +61,7 @@
 		return null;
 	}
 
-	public static void installContentAssist(IPreferenceStore javaPrefs,
-			boolean mylynContentAssist) {
+	public static void installContentAssist(IPreferenceStore javaPrefs, boolean mylynContentAssist) {
 		Set<String> disabledIds = getDisabledIds(javaPrefs);
 		if (!mylynContentAssist) {
 			disabledIds.remove(ASSIST_DLTK_ALL);
@@ -88,18 +83,15 @@
 			sb.append(id);
 			sb.append(SEPARATOR_CODEASSIST);
 		}
-		javaPrefs.setValue(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES,
-				sb.toString());
+		javaPrefs.setValue(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES, sb.toString());
 
 		CompletionProposalComputerRegistry.getDefault().reload();
 	}
 
 	public static Set<String> getDisabledIds(IPreferenceStore javaPrefs) {
-		String oldValue = javaPrefs
-				.getString(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES);
-		StringTokenizer tokenizer = new StringTokenizer(oldValue,
-				SEPARATOR_CODEASSIST);
-		Set<String> disabledIds = new HashSet<String>();
+		String oldValue = javaPrefs.getString(PreferenceConstants.CODEASSIST_EXCLUDED_CATEGORIES);
+		StringTokenizer tokenizer = new StringTokenizer(oldValue, SEPARATOR_CODEASSIST);
+		Set<String> disabledIds = new HashSet<>();
 		while (tokenizer.hasMoreTokens()) {
 			disabledIds.add((String) tokenizer.nextElement());
 		}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/InterestUpdateDeltaListener.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/InterestUpdateDeltaListener.java
index 7e92f69..534a687 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/InterestUpdateDeltaListener.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/InterestUpdateDeltaListener.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -11,6 +11,9 @@
 
 package org.eclipse.dltk.internal.mylyn;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Status;
 import org.eclipse.dltk.core.ElementChangedEvent;
@@ -31,6 +34,7 @@
 
 	private static boolean asyncExecMode = true;
 
+	@Override
 	public void elementChanged(ElementChangedEvent event) {
 		IModelElementDelta delta = event.getDelta();
 		handleDelta(delta.getAffectedChildren());
@@ -86,26 +90,21 @@
 		} else {
 			IWorkbench workbench = PlatformUI.getWorkbench();
 			if (workbench != null) {
-				workbench.getDisplay().asyncExec(new Runnable() {
-					public void run() {
-						ContextCore.getContextManager().updateHandle(element, newHandle);
-					}
-				});
+				workbench.getDisplay()
+						.asyncExec(() -> ContextCore.getContextManager().updateHandle(element, newHandle));
 			}
 		}
 	}
 
 	private void delete(final IInteractionElement element) {
+		List<IInteractionElement> elements = new ArrayList<>();
+		elements.add(element);
 		if (!asyncExecMode) {
-			ContextCore.getContextManager().deleteElement(element);
+			ContextCore.getContextManager().deleteElements(elements);
 		} else {
 			IWorkbench workbench = PlatformUI.getWorkbench();
 			if (workbench != null) {
-				workbench.getDisplay().asyncExec(new Runnable() {
-					public void run() {
-						ContextCore.getContextManager().deleteElement(element);
-					}
-				});
+				workbench.getDisplay().asyncExec(() -> ContextCore.getContextManager().deleteElements(elements));
 			}
 		}
 	}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/LandmarkMarkerManager.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/LandmarkMarkerManager.java
index 8904126..dd999ff 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/LandmarkMarkerManager.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/LandmarkMarkerManager.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -19,7 +19,6 @@
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.resources.IWorkspaceRunnable;
 import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Status;
 import org.eclipse.dltk.core.DLTKCore;
@@ -41,7 +40,7 @@
 
 	private static final String ID_MARKER_LANDMARK = "org.eclipse.mylyn.context.ui.markers.landmark"; //$NON-NLS-1$
 
-	private final Map<IInteractionElement, Long> markerMap = new HashMap<IInteractionElement, Long>();
+	private final Map<IInteractionElement, Long> markerMap = new HashMap<>();
 
 	public LandmarkMarkerManager() {
 		super();
@@ -83,8 +82,8 @@
 				addLandmarkMarker(node);
 			}
 		} catch (Throwable t) {
-			StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
-					"Could not update landmark markers", t)); //$NON-NLS-1$
+			StatusHandler.log(
+					new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not update landmark markers", t)); //$NON-NLS-1$
 		}
 	}
 
@@ -102,26 +101,24 @@
 					final ISourceRange range = ((IMember) element).getNameRange();
 					final IResource resource = element.getUnderlyingResource();
 					if (resource instanceof IFile) {
-						IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-							public void run(IProgressMonitor monitor) throws CoreException {
-								IMarker marker = resource.createMarker(ID_MARKER_LANDMARK);
-								if (marker != null && range != null) {
-									marker.setAttribute(IMarker.CHAR_START, range.getOffset());
-									marker.setAttribute(IMarker.CHAR_END, range.getOffset() + range.getLength());
-									marker.setAttribute(IMarker.MESSAGE, "Mylyn Landmark"); //$NON-NLS-1$
-									marker.setAttribute(IMarker.SEVERITY, IMarker.SEVERITY_INFO);
-									markerMap.put(node, marker.getId());
-								}
+						IWorkspaceRunnable runnable = monitor -> {
+							IMarker marker = resource.createMarker(ID_MARKER_LANDMARK);
+							if (marker != null && range != null) {
+								marker.setAttribute(IMarker.CHAR_START, range.getOffset());
+								marker.setAttribute(IMarker.CHAR_END, range.getOffset() + range.getLength());
+								marker.setAttribute(IMarker.MESSAGE, "Mylyn Landmark"); //$NON-NLS-1$
+								marker.setAttribute(IMarker.SEVERITY, IMarker.SEVERITY_INFO);
+								markerMap.put(node, marker.getId());
 							}
 						};
 						resource.getWorkspace().run(runnable, null);
 					}
 				} catch (ModelException e) {
-					StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
-							"Could not update marker", e)); //$NON-NLS-1$
+					StatusHandler
+							.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not update marker", e)); //$NON-NLS-1$
 				} catch (CoreException e) {
-					StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
-							"Could not update marker", e)); //$NON-NLS-1$
+					StatusHandler
+							.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not update marker", e)); //$NON-NLS-1$
 				}
 			}
 		}
@@ -141,22 +138,20 @@
 					&& element instanceof ISourceReference) {
 				try {
 					final IResource resource = element.getUnderlyingResource();
-					IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-						public void run(IProgressMonitor monitor) throws CoreException {
-							if (resource != null) {
-								try {
-									if (markerMap.containsKey(node)) {
-										long id = markerMap.get(node);
-										IMarker marker = resource.getMarker(id);
-										if (marker != null) {
-											marker.delete();
-										}
+					IWorkspaceRunnable runnable = monitor -> {
+						if (resource != null) {
+							try {
+								if (markerMap.containsKey(node)) {
+									long id = markerMap.get(node);
+									IMarker marker = resource.getMarker(id);
+									if (marker != null) {
+										marker.delete();
 									}
-								} catch (NullPointerException e) {
-									// FIXME avoid NPE
-									StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
-											"Could not update marker", e)); //$NON-NLS-1$
 								}
+							} catch (NullPointerException e) {
+								// FIXME avoid NPE
+								StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
+										"Could not update marker", e)); //$NON-NLS-1$
 							}
 						}
 					};
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FilterMembersAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FilterMembersAction.java
index 1622270..5ba79c1 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FilterMembersAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FilterMembersAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -36,10 +36,11 @@
 		// ContextCore.getPreferenceStore().getBoolean(PREF_ID);
 		// valueChanged(true, true);
 		// } catch (Exception e) {
-		//            
+		//
 		// }
 	}
 
+	@Override
 	public void run(IAction action) {
 		valueChanged(isChecked(), true);
 
@@ -47,13 +48,11 @@
 
 	private void valueChanged(final boolean on, boolean store) {
 		if (store) {
-			DLTKUiBridgePlugin.getDefault().getPreferenceStore().setValue(
-					PREF_ID, on);
+			DLTKUiBridgePlugin.getDefault().getPreferenceStore().setValue(PREF_ID, on);
 		}
 
 		setChecked(true);
-		ScriptExplorerPart packageExplorer = ScriptExplorerPart
-				.getFromActivePerspective();
+		ScriptExplorerPart packageExplorer = ScriptExplorerPart.getFromActivePerspective();
 		ViewerFilter existingFilter = null;
 		for (int i = 0; i < packageExplorer.getTreeViewer().getFilters().length; i++) {
 			ViewerFilter filter = packageExplorer.getTreeViewer().getFilters()[i];
@@ -64,15 +63,16 @@
 		if (existingFilter != null) {
 			packageExplorer.getTreeViewer().removeFilter(existingFilter);
 		} else {
-			packageExplorer.getTreeViewer().addFilter(
-					new DLTKDeclarationsFilter());
+			packageExplorer.getTreeViewer().addFilter(new DLTKDeclarationsFilter());
 		}
 	}
 
+	@Override
 	public void init(IViewPart view) {
 		// don't need to do anything on init
 	}
 
+	@Override
 	public void selectionChanged(IAction action, ISelection selection) {
 		// don't care when the selection changes
 	}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBreakpointsViewAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBreakpointsViewAction.java
index 9456d55..4caaf9b 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBreakpointsViewAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBreakpointsViewAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -32,13 +32,12 @@
 
 	@Override
 	public final List<StructuredViewer> getViewers() {
-		List<StructuredViewer> viewers = new ArrayList<StructuredViewer>();
+		List<StructuredViewer> viewers = new ArrayList<>();
 		IViewPart viewPart = super.getPartForAction();
 		if (viewPart instanceof IDebugView) {
 			IDebugView view = (IDebugView) viewPart;
 			Viewer viewer = view.getViewer();
 			if (viewer instanceof StructuredViewer) {
-				updateMarkerViewLabelProvider((StructuredViewer) viewer);
 				viewers.add((StructuredViewer) viewer);
 			}
 		}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBrowsingPerspectiveAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBrowsingPerspectiveAction.java
index 2bceb0d..0e01db7 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBrowsingPerspectiveAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusBrowsingPerspectiveAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2009 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -16,8 +16,8 @@
 import java.util.List;
 
 import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
 import org.eclipse.core.runtime.Preferences.PropertyChangeEvent;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.dltk.internal.mylyn.DLTKUiBridgePlugin;
 import org.eclipse.jface.viewers.ISelectionProvider;
 import org.eclipse.jface.viewers.StructuredViewer;
@@ -32,7 +32,7 @@
 
 /**
  * This class is a bit weird since it doesn't obey the same contract as the other subclasses
- * 
+ *
  * @author Shawn Minto
  * @author Mik Kersten
  */
@@ -51,6 +51,7 @@
 		globalPrefId = PREF_ID_PREFIX + "javaBrowsing"; //$NON-NLS-1$
 	}
 
+	@Override
 	public void init(IWorkbenchWindow window) {
 		initWindow = window;
 		IWorkbenchPage activePage = initWindow.getActivePage();
@@ -59,7 +60,7 @@
 
 	@Override
 	public List<StructuredViewer> getViewers() {
-		List<StructuredViewer> viewers = new ArrayList<StructuredViewer>();
+		List<StructuredViewer> viewers = new ArrayList<>();
 		for (int i = 0; i < viewNames.length; i++) {
 			StructuredViewer viewer = getBrowsingViewerFromActivePerspective(viewNames[i], classNames[i]);
 			if (viewer != null) {
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusDebugViewAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusDebugViewAction.java
index 30863a1..9680d75 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusDebugViewAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusDebugViewAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -31,7 +31,7 @@
 
 	@Override
 	public List<StructuredViewer> getViewers() {
-		List<StructuredViewer> viewers = new ArrayList<StructuredViewer>();
+		List<StructuredViewer> viewers = new ArrayList<>();
 		IViewPart view = super.getPartForAction();
 		if (view instanceof LaunchView) {
 			LaunchView launchView = (LaunchView) view;
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusPackageExplorerAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusPackageExplorerAction.java
index 2d7bead..95a190e 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusPackageExplorerAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/FocusPackageExplorerAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -112,7 +112,7 @@
 				// NOTE: turning off dynamically contributed filter items is not currently feasible
 //				else if (item instanceof ContributionItem) {
 //					ContributionItem contributionItem = (ContributionItem) item;
-//					
+//
 //					if (contributionItem.getClass().getSimpleName().equals("FilterActionMenuContributionItem")) {
 //						try {
 //							Class<?> clazz = contributionItem.getClass();
@@ -151,7 +151,7 @@
 
 	@Override
 	public List<StructuredViewer> getViewers() {
-		List<StructuredViewer> viewers = new ArrayList<StructuredViewer>();
+		List<StructuredViewer> viewers = new ArrayList<>();
 		// TODO: get from super
 		IViewPart part = super.getPartForAction();
 		if (part instanceof ScriptExplorerPart) {
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ShowFilteredChildrenAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ShowFilteredChildrenAction.java
index 4ca4796..d2c5783 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ShowFilteredChildrenAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ShowFilteredChildrenAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -27,8 +27,7 @@
  * @author Mik Kersten
  */
 @Deprecated
-public class ShowFilteredChildrenAction extends Action implements
-		IObjectActionDelegate, IViewActionDelegate {
+public class ShowFilteredChildrenAction extends Action implements IObjectActionDelegate, IViewActionDelegate {
 
 	private BrowseFilteredListener browseFilteredListener;
 
@@ -36,6 +35,7 @@
 
 	private IStructuredSelection selection;
 
+	@Override
 	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
 		if (targetPart instanceof ScriptExplorerPart) {
 			treeViewer = ((ScriptExplorerPart) targetPart).getTreeViewer();
@@ -43,6 +43,7 @@
 		}
 	}
 
+	@Override
 	public void init(IViewPart targetPart) {
 		if (targetPart instanceof ScriptExplorerPart) {
 			treeViewer = ((ScriptExplorerPart) targetPart).getTreeViewer();
@@ -50,12 +51,14 @@
 		}
 	}
 
+	@Override
 	public void run(IAction action) {
 		if (selection != null) {
 			browseFilteredListener.unfilterSelection(treeViewer, selection);
 		}
 	}
 
+	@Override
 	public void selectionChanged(IAction action, ISelection selection) {
 		if (selection instanceof IStructuredSelection) {
 			this.selection = (IStructuredSelection) selection;
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ToggleActiveFoldingAction.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ToggleActiveFoldingAction.java
index e8cf55c..187399b 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ToggleActiveFoldingAction.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/actions/ToggleActiveFoldingAction.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -49,6 +49,7 @@
 		}
 	}
 
+	@Override
 	public void run(IAction action) {
 		valueChanged(action, action.isChecked());
 	}
@@ -62,8 +63,8 @@
 			action.setChecked(on);
 			DLTKUiBridgePlugin.getDefault().getPreferenceStore().setValue(DLTKUiBridgePlugin.AUTO_FOLDING_ENABLED, on);
 		} catch (Throwable t) {
-			StatusHandler.fail(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
-					"Could not enable editor management", t)); //$NON-NLS-1$
+			StatusHandler.log(
+					new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not enable editor management", t)); //$NON-NLS-1$
 		}
 	}
 
@@ -71,25 +72,30 @@
 		// don't care when the active editor changes
 	}
 
+	@Override
 	public void selectionChanged(IAction action, ISelection selection) {
 		// don't care when the selection changes
 	}
 
+	@Override
 	public void init(IAction action) {
 		this.parentAction = action;
 		valueChanged(action, DLTKUiBridgePlugin.getDefault().getPreferenceStore().getBoolean(
 				DLTKUiBridgePlugin.AUTO_FOLDING_ENABLED));
 	}
 
+	@Override
 	public void dispose() {
 		// don't need to do anything
 
 	}
 
+	@Override
 	public void runWithEvent(IAction action, Event event) {
 		run(action);
 	}
 
+	@Override
 	public void init(IWorkbenchWindow window) {
 	}
 }
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AbstractEditorHyperlinkDetector.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AbstractEditorHyperlinkDetector.java
index 63975b6..79103e2 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AbstractEditorHyperlinkDetector.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AbstractEditorHyperlinkDetector.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -24,6 +24,7 @@
 
 	private ITextEditor editor;
 
+	@Override
 	public abstract IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region,
 			boolean canShowMultipleHyperlinks);
 
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/ActiveFoldingListener.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/ActiveFoldingListener.java
index 3b0804f..a6b85dc 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/ActiveFoldingListener.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/ActiveFoldingListener.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -15,9 +15,8 @@
 import java.util.List;
 
 import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
 import org.eclipse.core.runtime.Preferences.IPropertyChangeListener;
-import org.eclipse.core.runtime.Preferences.PropertyChangeEvent;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.dltk.core.IMember;
 import org.eclipse.dltk.core.IModelElement;
 import org.eclipse.dltk.core.IParent;
@@ -45,20 +44,19 @@
 
 	private IFoldingStructureProviderExtension updater;
 
-	private static DLTKStructureBridge bridge = (DLTKStructureBridge) ContextCore.getStructureBridge(DLTKStructureBridge.CONTENT_TYPE);
+	private static DLTKStructureBridge bridge = (DLTKStructureBridge) ContextCore
+			.getStructureBridge(DLTKStructureBridge.CONTENT_TYPE);
 
 	private boolean enabled = false;
 
-	private final IPropertyChangeListener PREFERENCE_LISTENER = new IPropertyChangeListener() {
-		public void propertyChange(PropertyChangeEvent event) {
-			if (event.getProperty().equals(DLTKUiBridgePlugin.AUTO_FOLDING_ENABLED)) {
-				if (event.getNewValue().equals(Boolean.TRUE.toString())) {
-					enabled = true;
-				} else {
-					enabled = false;
-				}
-				updateFolding();
+	private final IPropertyChangeListener PREFERENCE_LISTENER = event -> {
+		if (event.getProperty().equals(DLTKUiBridgePlugin.AUTO_FOLDING_ENABLED)) {
+			if (event.getNewValue().equals(Boolean.TRUE.toString())) {
+				enabled = true;
+			} else {
+				enabled = false;
 			}
+			updateFolding();
 		}
 	};
 
@@ -103,16 +101,16 @@
 			return;
 		} else {
 			try {
-				List<IModelElement> toExpand = new ArrayList<IModelElement>();
-				List<IModelElement> toCollapse = new ArrayList<IModelElement>();
+				List<IModelElement> toExpand = new ArrayList<>();
+				List<IModelElement> toCollapse = new ArrayList<>();
 
 				IModelElement element = DLTKUIPlugin.getEditorInputModelElement(editor.getEditorInput());
 				if (element instanceof ISourceModule) {
 					ISourceModule compilationUnit = (ISourceModule) element;
 					List<IModelElement> allChildren = getAllChildren(compilationUnit);
 					for (IModelElement child : allChildren) {
-						IInteractionElement interactionElement = ContextCore.getContextManager().getElement(
-								bridge.getHandleIdentifier(child));
+						IInteractionElement interactionElement = ContextCore.getContextManager()
+								.getElement(bridge.getHandleIdentifier(child));
 						if (interactionElement != null && interactionElement.getInterest().isInteresting()) {
 							toExpand.add(child);
 						} else {
@@ -126,13 +124,14 @@
 					updater.expandElements(toExpand.toArray(new IModelElement[toExpand.size()]));
 				}
 			} catch (Exception e) {
-				StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not update folding", e)); //$NON-NLS-1$
+				StatusHandler
+						.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Could not update folding", e)); //$NON-NLS-1$
 			}
 		}
 	}
 
 	private static List<IModelElement> getAllChildren(IParent parentElement) {
-		List<IModelElement> allChildren = new ArrayList<IModelElement>();
+		List<IModelElement> allChildren = new ArrayList<>();
 		try {
 			for (IModelElement child : parentElement.getChildren()) {
 				allChildren.add(child);
@@ -184,9 +183,8 @@
 		switch (event.getEventKind()) {
 		case ACTIVATED:
 		case DEACTIVATED:
-			if (DLTKUiBridgePlugin.getDefault()
-					.getPreferenceStore()
-					.getBoolean(DLTKUiBridgePlugin.AUTO_FOLDING_ENABLED)) {
+			if (DLTKUiBridgePlugin.getDefault().getPreferenceStore().getBoolean(
+					DLTKUiBridgePlugin.AUTO_FOLDING_ENABLED)) {
 				updateFolding();
 			}
 			break;
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AutoFoldPreferenceBlock.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AutoFoldPreferenceBlock.java
index d01148f..802be3e 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AutoFoldPreferenceBlock.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/AutoFoldPreferenceBlock.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -37,6 +37,7 @@
 		// never used
 	}
 
+	@Override
 	public Control createControl(Composite parent) {
 		try {
 			Composite inner = new Composite(parent, SWT.NONE);
@@ -59,7 +60,7 @@
 			// FoldingKeys.COLLAPSE_INNER_TYPES, 0); //$NON-NLS-1$
 			// addCheckBox(inner, "collapse.static_initializers",
 			// FoldingKeys.COLLAPSE_STATICS, 0); //$NON-NLS-1$
-			//				
+			//
 			// addCheckBox(inner, "collapse.comment_blocks",
 			// FoldingKeys.COLLAPSE_COMMENT_BLOCKS, 0); //$NON-NLS-1$
 			// addCheckBox(inner, "collapse.javadocs",
@@ -67,7 +68,7 @@
 
 			// Label label2 = new Label(inner, SWT.LEFT);
 			// label2.setText( "minSize.title");
-			//		
+			//
 			// minimumLines = new Text(inner, SWT.BORDER | SWT.SINGLE);
 			// GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
 			// gd.horizontalSpan= 1;
@@ -76,17 +77,13 @@
 
 			return inner;
 		} catch (Throwable t) {
-			StatusHandler.fail(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
+			StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN,
 					"Could not create folding preferences page", t)); //$NON-NLS-1$
 		}
 		return null;
 	}
 
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.ui.text.folding.IJavaFoldingPreferenceBlock#initialize()
-	 */
+	@Override
 	public void initialize() {
 
 		// Iterator it= checkBoxes.keySet().iterator();
@@ -100,11 +97,7 @@
 
 	}
 
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.ui.text.folding.IJavaFoldingPreferenceBlock#performOk()
-	 */
+	@Override
 	public void performOk() {
 		// Iterator it = checkBoxes.keySet().iterator();
 		// while(it.hasNext()) {
@@ -112,7 +105,7 @@
 		// String key = (String) checkBoxes.get(b);
 		// preferences.setValue(key, b.getSelection());
 		// }
-		//		
+		//
 		// int minLines = Integer.parseInt(minimumLines.getText());
 		// preferences.setValue(FoldingKeys.MINIMUM_SIZE, minLines);
 
@@ -122,22 +115,24 @@
 	// int indentation) {
 	// Button checkBox= new Button(parent, SWT.CHECK);
 	// checkBox.setText(label);
-	//		
+	//
 	// GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
 	// gd.horizontalIndent= indentation;
 	// gd.horizontalSpan= 1;
 	// gd.grabExcessVerticalSpace= false;
 	// checkBox.setLayoutData(gd);
-	//				
+	//
 	// checkBoxes.put(checkBox, key);
-	//		
+	//
 	// return checkBox;
 	// }
 
+	@Override
 	public void performDefaults() {
 		initialize();
 	}
 
+	@Override
 	public void dispose() {
 		// don't care if we are disposed
 
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKAllProposalComputer.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKAllProposalComputer.java
index 2b13bad..29a23da 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKAllProposalComputer.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKAllProposalComputer.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2008, 2009 IBM Corporation and others.
+ * Copyright (c) 2008, 2017 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -24,11 +24,12 @@
 import org.eclipse.dltk.ui.text.completion.ScriptCompletionProposalCollector;
 import org.eclipse.dltk.ui.text.completion.ScriptCompletionProposalComputer;
 import org.eclipse.dltk.ui.text.completion.ScriptContentAssistInvocationContext;
+import org.eclipse.jface.text.contentassist.ICompletionProposal;
 import org.eclipse.jface.text.templates.TemplateCompletionProcessor;
 
 /**
  * Based on org.eclipse.jdt.internal.ui.text.java.JavaAllCompletionProposalComputer.
- * 
+ *
  * @author Mik Kersten
  * @author Steffen Pingel
  */
@@ -63,11 +64,11 @@
 		FocusedDLTKProposalProcessor.getDefault().addMonitoredComputer(this);
 	}
 
-	@SuppressWarnings("unchecked")
 	@Override
-	public List computeCompletionProposals(ContentAssistInvocationContext context, IProgressMonitor monitor) {
+	public List<ICompletionProposal> computeCompletionProposals(ContentAssistInvocationContext context,
+			IProgressMonitor monitor) {
 		if (shouldReturnResults()) {
-			List proposals = super.computeCompletionProposals(context, monitor);
+			List<ICompletionProposal> proposals = super.computeCompletionProposals(context, monitor);
 			return FocusedDLTKProposalProcessor.getDefault().projectInterestModel(this, proposals);
 		} else {
 			return Collections.emptyList();
@@ -80,16 +81,14 @@
 			return false;
 		}
 		Set<String> disabledIds = DLTKUiUtil.getDisabledIds(DLTKUIPlugin.getDefault().getPreferenceStore());
-		if (!disabledIds.contains(DLTKUiUtil.ASSIST_DLTK_NOTYPE) && !disabledIds.contains(DLTKUiUtil.ASSIST_DLTK_TYPE)) {
+		if (!disabledIds.contains(DLTKUiUtil.ASSIST_DLTK_NOTYPE)
+				&& !disabledIds.contains(DLTKUiUtil.ASSIST_DLTK_TYPE)) {
 			// do not return duplicates if the default JDT processors are already enabled on on Eclipse 3.3 and 3.4
 			return false;
 		}
 		return true;
 	}
 
-	/**
-	 * @see org.eclipse.jdt.internal.ui.text.java.JavaAllCompletionProposalComputer#createCollector(JavaContentAssistInvocationContext)
-	 */
 	@Override
 	protected ScriptCompletionProposalCollector createCollector(ScriptContentAssistInvocationContext context) {
 		ScriptCompletionProposalCollector collector = null;
@@ -133,9 +132,6 @@
 		return collector;
 	}
 
-	/**
-	 * @see org.eclipse.jdt.internal.ui.text.java.JavaAllCompletionProposalComputer#guessContextInformationPosition(ContentAssistInvocationContext)
-	 */
 	@Override
 	protected int guessContextInformationPosition(ContentAssistInvocationContext context) {
 		int invocationOffset = context.getInvocationOffset();
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKProposalProcessor.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKProposalProcessor.java
index 9e97dfc..b63449b 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKProposalProcessor.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/editor/FocusedDLTKProposalProcessor.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -21,6 +21,7 @@
 import org.eclipse.dltk.ui.text.completion.AbstractScriptCompletionProposal;
 import org.eclipse.dltk.ui.text.completion.IScriptCompletionProposalComputer;
 import org.eclipse.dltk.ui.text.completion.ScriptCompletionProposal;
+import org.eclipse.jface.text.contentassist.ICompletionProposal;
 import org.eclipse.mylyn.commons.core.StatusHandler;
 import org.eclipse.mylyn.commons.ui.CommonImages;
 import org.eclipse.mylyn.context.core.ContextCore;
@@ -28,7 +29,7 @@
 
 /**
  * TODO: parametrize relevance levels (requires JDT changes, bug 119063)
- * 
+ *
  * @author Mik Kersten
  */
 public class FocusedDLTKProposalProcessor {
@@ -59,13 +60,13 @@
 
 	public static final FocusedProposalSeparator PROPOSAL_SEPARATOR = new FocusedProposalSeparator();
 
-	private final List<IScriptCompletionProposalComputer> monitoredProposalComputers = new ArrayList<IScriptCompletionProposalComputer>();
+	private final List<IScriptCompletionProposalComputer> monitoredProposalComputers = new ArrayList<>();
 
-	private final List<IScriptCompletionProposalComputer> alreadyComputedProposals = new ArrayList<IScriptCompletionProposalComputer>();
+	private final List<IScriptCompletionProposalComputer> alreadyComputedProposals = new ArrayList<>();
 
-	private final List<IScriptCompletionProposalComputer> alreadyContainSeparator = new ArrayList<IScriptCompletionProposalComputer>();
+	private final List<IScriptCompletionProposalComputer> alreadyContainSeparator = new ArrayList<>();
 
-	private final List<IScriptCompletionProposalComputer> containsSingleInterestingProposal = new ArrayList<IScriptCompletionProposalComputer>();
+	private final List<IScriptCompletionProposalComputer> containsSingleInterestingProposal = new ArrayList<>();
 
 	private static FocusedDLTKProposalProcessor INSTANCE = new FocusedDLTKProposalProcessor();
 
@@ -80,8 +81,8 @@
 		monitoredProposalComputers.add(proposalComputer);
 	}
 
-	@SuppressWarnings("unchecked")
-	public List projectInterestModel(IScriptCompletionProposalComputer proposalComputer, List proposals) {
+	public List<ICompletionProposal> projectInterestModel(IScriptCompletionProposalComputer proposalComputer,
+			List<ICompletionProposal> proposals) {
 		try {
 			if (!ContextCore.getContextManager().isContextActive()) {
 				return proposals;
@@ -89,7 +90,8 @@
 				boolean hasInterestingProposals = false;
 				for (Object object : proposals) {
 					if (object instanceof AbstractScriptCompletionProposal) {
-						boolean foundInteresting = boostRelevanceWithInterest((AbstractScriptCompletionProposal) object);
+						boolean foundInteresting = boostRelevanceWithInterest(
+								(AbstractScriptCompletionProposal) object);
 						if (!hasInterestingProposals && foundInteresting) {
 							hasInterestingProposals = true;
 						}
@@ -131,8 +133,8 @@
 		boolean hasInteresting = false;
 		IModelElement javaElement = proposal.getModelElement();
 		if (javaElement != null) {
-			IInteractionElement interactionElement = ContextCore.getContextManager().getElement(
-					javaElement.getHandleIdentifier());
+			IInteractionElement interactionElement = ContextCore.getContextManager()
+					.getElement(javaElement.getHandleIdentifier());
 			float interest = interactionElement.getInterest().getValue();
 			if (interest > ContextCore.getCommonContextScaling().getInteresting()) {
 				// TODO: losing precision here, only going to one decimal place
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/AbstractJavaRelationProvider.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/AbstractJavaRelationProvider.java
index a20b76e..cea547d 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/AbstractJavaRelationProvider.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/AbstractJavaRelationProvider.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -56,8 +56,7 @@
 /**
  * @author Mik Kersten
  */
-public abstract class AbstractJavaRelationProvider extends
-		AbstractRelationProvider {
+public abstract class AbstractJavaRelationProvider extends AbstractRelationProvider {
 
 	public static final String ID_GENERIC = "org.eclipse.mylyn.java.relation"; //$NON-NLS-1$
 
@@ -65,7 +64,7 @@
 
 	private static final int DEFAULT_DEGREE = 2;
 
-	private static final List<Job> runningJobs = new ArrayList<Job>();
+	private static final List<Job> runningJobs = new ArrayList<>();
 
 	@Override
 	public String getGenericId() {
@@ -78,7 +77,7 @@
 
 	@Override
 	public List<IDegreeOfSeparation> getDegreesOfSeparation() {
-		List<IDegreeOfSeparation> separations = new ArrayList<IDegreeOfSeparation>();
+		List<IDegreeOfSeparation> separations = new ArrayList<>();
 		separations.add(new DegreeOfSeparation(DOS_0_LABEL, 0));
 		separations.add(new DegreeOfSeparation(DOS_1_LABEL, 1));
 		separations.add(new DegreeOfSeparation(DOS_2_LABEL, 2));
@@ -89,15 +88,13 @@
 	}
 
 	@Override
-	protected void findRelated(final IInteractionElement node,
-			int degreeOfSeparation) {
+	protected void findRelated(final IInteractionElement node, int degreeOfSeparation) {
 		if (node == null) {
 			return;
 		}
 		if (node.getContentType() == null) {
-			StatusHandler.log(new Status(IStatus.WARNING,
-					DLTKUiBridgePlugin.ID_PLUGIN, "Null content type for: " //$NON-NLS-1$
-							+ node));
+			StatusHandler.log(new Status(IStatus.WARNING, DLTKUiBridgePlugin.ID_PLUGIN, "Null content type for: " //$NON-NLS-1$
+					+ node));
 			return;
 		}
 		if (!node.getContentType().equals(DLTKStructureBridge.CONTENT_TYPE)) {
@@ -113,36 +110,30 @@
 			return;
 		}
 
-		IDLTKSearchScope scope = createJavaSearchScope(javaElement,
-				degreeOfSeparation);
+		IDLTKSearchScope scope = createJavaSearchScope(javaElement, degreeOfSeparation);
 		if (scope != null) {
 			runJob(node, degreeOfSeparation, getId());
 		}
 	}
 
-	private IDLTKSearchScope createJavaSearchScope(IModelElement element,
-			int degreeOfSeparation) {
-		Set<IInteractionElement> landmarks = ContextCore.getContextManager()
-				.getActiveLandmarks();
-		List<IInteractionElement> interestingElements = ContextCore
-				.getContextManager().getActiveContext().getInteresting();
+	private IDLTKSearchScope createJavaSearchScope(IModelElement element, int degreeOfSeparation) {
+		Set<IInteractionElement> landmarks = ContextCore.getContextManager().getActiveLandmarks();
+		List<IInteractionElement> interestingElements = ContextCore.getContextManager()
+				.getActiveContext()
+				.getInteresting();
 
-		Set<IModelElement> searchElements = new HashSet<IModelElement>();
+		Set<IModelElement> searchElements = new HashSet<>();
 		int includeMask = IDLTKSearchScope.SOURCES;
 		if (degreeOfSeparation == 1) {
 			for (IInteractionElement landmark : landmarks) {
-				AbstractContextStructureBridge bridge = ContextCore
-						.getStructureBridge(landmark.getContentType());
+				AbstractContextStructureBridge bridge = ContextCore.getStructureBridge(landmark.getContentType());
 				if (includeNodeInScope(landmark, bridge)) {
-					Object o = bridge.getObjectForHandle(landmark
-							.getHandleIdentifier());
+					Object o = bridge.getObjectForHandle(landmark.getHandleIdentifier());
 					if (o instanceof IModelElement) {
 						IModelElement landmarkElement = (IModelElement) o;
 						if (landmarkElement.exists()) {
-							if (landmarkElement instanceof IMember
-									&& !landmark.getInterest().isPropagated()) {
-								searchElements.add(((IMember) landmarkElement)
-										.getSourceModule());
+							if (landmarkElement instanceof IMember && !landmark.getInterest().isPropagated()) {
+								searchElements.add(((IMember) landmarkElement).getSourceModule());
 							} else if (landmarkElement instanceof ISourceModule) {
 								searchElements.add(landmarkElement);
 							}
@@ -152,20 +143,14 @@
 			}
 		} else if (degreeOfSeparation == 2) {
 			for (IInteractionElement interesting : interestingElements) {
-				AbstractContextStructureBridge bridge = ContextCore
-						.getStructureBridge(interesting.getContentType());
+				AbstractContextStructureBridge bridge = ContextCore.getStructureBridge(interesting.getContentType());
 				if (includeNodeInScope(interesting, bridge)) {
-					Object object = bridge.getObjectForHandle(interesting
-							.getHandleIdentifier());
+					Object object = bridge.getObjectForHandle(interesting.getHandleIdentifier());
 					if (object instanceof IModelElement) {
 						IModelElement interestingElement = (IModelElement) object;
 						if (interestingElement.exists()) {
-							if (interestingElement instanceof IMember
-									&& !interesting.getInterest()
-											.isPropagated()) {
-								searchElements
-										.add(((IMember) interestingElement)
-												.getSourceModule());
+							if (interestingElement instanceof IMember && !interesting.getInterest().isPropagated()) {
+								searchElements.add(((IMember) interestingElement).getSourceModule());
 							} else if (interestingElement instanceof ISourceModule) {
 								searchElements.add(interestingElement);
 							}
@@ -175,20 +160,15 @@
 			}
 		} else if (degreeOfSeparation == 3 || degreeOfSeparation == 4) {
 			for (IInteractionElement interesting : interestingElements) {
-				AbstractContextStructureBridge bridge = ContextCore
-						.getStructureBridge(interesting.getContentType());
+				AbstractContextStructureBridge bridge = ContextCore.getStructureBridge(interesting.getContentType());
 				if (includeNodeInScope(interesting, bridge)) {
 					// TODO what to do when the element is not a java element,
 					// how determine if a javaProject?
-					IResource resource = ResourcesUiBridgePlugin.getDefault()
-							.getResourceForElement(interesting, true);
+					IResource resource = ResourcesUiBridgePlugin.getDefault().getResourceForElement(interesting, true);
 					if (resource != null) {
 						IProject project = resource.getProject();
-						if (project != null
-								&& ScriptProject.hasScriptNature(project)
-								&& project.exists()) {
-							IScriptProject javaProject = DLTKCore
-									.create(project);// ((IModelElement)o).getJavaProject();
+						if (project != null && ScriptProject.hasScriptNature(project) && project.exists()) {
+							IScriptProject javaProject = DLTKCore.create(project);// ((IModelElement)o).getJavaProject();
 							if (javaProject != null && javaProject.exists()) {
 								searchElements.add(javaProject);
 							}
@@ -198,13 +178,11 @@
 			}
 			if (degreeOfSeparation == 4) {
 
-				includeMask = IDLTKSearchScope.SOURCES
-						| IDLTKSearchScope.APPLICATION_LIBRARIES
+				includeMask = IDLTKSearchScope.SOURCES | IDLTKSearchScope.APPLICATION_LIBRARIES
 						| IDLTKSearchScope.SYSTEM_LIBRARIES;
 			}
 		} else if (degreeOfSeparation == 5) {
-			return SearchEngine.createWorkspaceScope(DLTKLanguageManager
-					.getLanguageToolkit(element));
+			return SearchEngine.createWorkspaceScope(DLTKLanguageManager.getLanguageToolkit(element));
 		}
 
 		if (searchElements.size() == 0) {
@@ -224,20 +202,17 @@
 	/**
 	 * Only include Java elements and files.
 	 */
-	private boolean includeNodeInScope(IInteractionElement interesting,
-			AbstractContextStructureBridge bridge) {
+	private boolean includeNodeInScope(IInteractionElement interesting, AbstractContextStructureBridge bridge) {
 		if (interesting == null || bridge == null) {
 			return false;
 		} else {
 			if (interesting.getContentType() == null) {
 				// TODO: remove
-				StatusHandler.log(new Status(IStatus.WARNING,
-						DLTKUiBridgePlugin.ID_PLUGIN, "Null content type for: " //$NON-NLS-1$
-								+ interesting.getHandleIdentifier()));
+				StatusHandler.log(new Status(IStatus.WARNING, DLTKUiBridgePlugin.ID_PLUGIN, "Null content type for: " //$NON-NLS-1$
+						+ interesting.getHandleIdentifier()));
 				return false;
 			} else {
-				return interesting.getContentType().equals(
-						DLTKStructureBridge.CONTENT_TYPE)
+				return interesting.getContentType().equals(DLTKStructureBridge.CONTENT_TYPE)
 						|| bridge.isDocument(interesting.getHandleIdentifier());
 			}
 		}
@@ -248,12 +223,10 @@
 	}
 
 	protected boolean acceptElement(IModelElement javaElement) {
-		return javaElement != null
-				&& (javaElement instanceof IMember || javaElement instanceof IType);
+		return javaElement != null && (javaElement instanceof IMember || javaElement instanceof IType);
 	}
 
-	private void runJob(final IInteractionElement node,
-			final int degreeOfSeparation, final String kind) {
+	private void runJob(final IInteractionElement node, final int degreeOfSeparation, final String kind) {
 
 		int limitTo = 0;
 		if (kind.equals(DLTKReferencesProvider.ID)) {
@@ -268,8 +241,7 @@
 			limitTo = IDLTKSearchConstants.REFERENCES;
 		}
 
-		final JavaSearchOperation query = (JavaSearchOperation) getSearchOperation(
-				node, limitTo, degreeOfSeparation);
+		final JavaSearchOperation query = (JavaSearchOperation) getSearchOperation(node, limitTo, degreeOfSeparation);
 		if (query == null) {
 			return;
 		}
@@ -279,16 +251,17 @@
 
 			private boolean gathered = false;
 
+			@Override
 			public boolean resultsGathered() {
 				return gathered;
 			}
 
-			@SuppressWarnings("unchecked")
-			public void searchCompleted(List l) {
+			@Override
+			public void searchCompleted(List<?> l) {
 				if (l == null) {
 					return;
 				}
-				List<IModelElement> relatedHandles = new ArrayList<IModelElement>();
+				List<IModelElement> relatedHandles = new ArrayList<>();
 				Object[] elements = l.toArray();
 				for (Object element : elements) {
 					if (element instanceof IModelElement) {
@@ -300,8 +273,8 @@
 					if (!acceptResultElement(element)) {
 						continue;
 					}
-					incrementInterest(node, DLTKStructureBridge.CONTENT_TYPE,
-							element.getHandleIdentifier(), degreeOfSeparation);
+					incrementInterest(node, DLTKStructureBridge.CONTENT_TYPE, element.getHandleIdentifier(),
+							degreeOfSeparation);
 				}
 				gathered = true;
 				AbstractJavaRelationProvider.this.searchCompleted(node);
@@ -316,26 +289,20 @@
 	}
 
 	@Override
-	public IActiveSearchOperation getSearchOperation(IInteractionElement node,
-			int limitTo, int degreeOfSeparation) {
+	public IActiveSearchOperation getSearchOperation(IInteractionElement node, int limitTo, int degreeOfSeparation) {
 		IModelElement javaElement = DLTKCore.create(node.getHandleIdentifier());
 		if (javaElement == null || !javaElement.exists()) {
 			return null;
 		}
 
-		IDLTKSearchScope scope = createJavaSearchScope(javaElement,
-				degreeOfSeparation);
+		IDLTKSearchScope scope = createJavaSearchScope(javaElement, degreeOfSeparation);
 
 		if (scope == null) {
 			return null;
 		}
 
-		QuerySpecification specs = new ElementQuerySpecification(
-				javaElement,
-				limitTo,
-				scope,
-				Messages.AbstractJavaRelationProvider_Mylyn_degree_of_separation
-						+ degreeOfSeparation);
+		QuerySpecification specs = new ElementQuerySpecification(javaElement, limitTo, scope,
+				Messages.AbstractJavaRelationProvider_Mylyn_degree_of_separation + degreeOfSeparation);
 
 		return new JavaSearchOperation(specs);
 	}
@@ -359,8 +326,7 @@
 
 	}
 
-	protected static class JavaSearchOperation extends DLTKSearchQuery
-			implements IActiveSearchOperation {
+	protected static class JavaSearchOperation extends DLTKSearchQuery implements IActiveSearchOperation {
 		private ISearchResult result = null;
 
 		@Override
@@ -383,7 +349,7 @@
 					if (objs == null) {
 						notifySearchCompleted(null);
 					} else {
-						List<Object> l = new ArrayList<Object>();
+						List<Object> l = new ArrayList<>();
 						for (Object obj : objs) {
 							l.add(obj);
 						}
@@ -392,23 +358,18 @@
 				}
 				return runStatus;
 			} catch (Throwable t) {
-				StatusHandler.log(new Status(IStatus.ERROR,
-						DLTKUiBridgePlugin.ID_PLUGIN, "Java search failed", t)); //$NON-NLS-1$
+				StatusHandler.log(new Status(IStatus.ERROR, DLTKUiBridgePlugin.ID_PLUGIN, "Java search failed", t)); //$NON-NLS-1$
 			}
 
-			IStatus status = new Status(
-					IStatus.WARNING,
-					ContextCorePlugin.ID_PLUGIN,
-					IStatus.OK,
-					Messages.AbstractJavaRelationProvider_could_not_run_Java_search,
-					null);
+			IStatus status = new Status(IStatus.WARNING, ContextCorePlugin.ID_PLUGIN, IStatus.OK,
+					Messages.AbstractJavaRelationProvider_could_not_run_Java_search, null);
 			notifySearchCompleted(null);
 			return status;
 		}
 
 		/**
 		 * Constructor
-		 * 
+		 *
 		 * @param data
 		 */
 		public JavaSearchOperation(QuerySpecification data) {
@@ -417,14 +378,15 @@
 		}
 
 		/** List of listeners wanting to know about the searches */
-		private final List<IActiveSearchListener> listeners = new ArrayList<IActiveSearchListener>();
+		private final List<IActiveSearchListener> listeners = new ArrayList<>();
 
 		/**
 		 * Add a listener for when the bugzilla search is completed
-		 * 
+		 *
 		 * @param l
 		 *            The listener to add
 		 */
+		@Override
 		public void addListener(IActiveSearchListener l) {
 			// add the listener to the list
 			listeners.add(l);
@@ -432,10 +394,11 @@
 
 		/**
 		 * Remove a listener for when the bugzilla search is completed
-		 * 
+		 *
 		 * @param l
 		 *            The listener to remove
 		 */
+		@Override
 		public void removeListener(IActiveSearchListener l) {
 			// remove the listener from the list
 			listeners.remove(l);
@@ -443,7 +406,7 @@
 
 		/**
 		 * Notify all of the listeners that the bugzilla search is completed
-		 * 
+		 *
 		 * @param doiList
 		 *            A list of BugzillaSearchHitDoiInfo
 		 * @param member
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/DLTKActiveSearchResultUpdater.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/DLTKActiveSearchResultUpdater.java
index 07ce8b7..8c0bfbc 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/DLTKActiveSearchResultUpdater.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/DLTKActiveSearchResultUpdater.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -12,11 +12,11 @@
 package org.eclipse.dltk.internal.mylyn.search;
 
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.Set;
 
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.runtime.IAdaptable;
 import org.eclipse.dltk.core.DLTKCore;
 import org.eclipse.dltk.core.ElementChangedEvent;
 import org.eclipse.dltk.core.IElementChangedListener;
@@ -30,16 +30,15 @@
 
 /**
  * COPIED FROM: org.eclipse.jdt.internal.ui.search.SearchResultUpdater
- * 
+ *
  * @author Shawn Minto
  */
-@SuppressWarnings("unchecked")
 public class DLTKActiveSearchResultUpdater implements IElementChangedListener, IQueryListener {
 
 	private final DLTKSearchResult fResult;
 
-	private static final int REMOVED_FLAGS = IModelElementDelta.F_MOVED_TO
-			| IModelElementDelta.F_REMOVED_FROM_BUILDPATH | IModelElementDelta.F_CLOSED | IModelElementDelta.F_CONTENT;
+	private static final int REMOVED_FLAGS = IModelElementDelta.F_MOVED_TO | IModelElementDelta.F_REMOVED_FROM_BUILDPATH
+			| IModelElementDelta.F_CLOSED | IModelElementDelta.F_CONTENT;
 
 	public DLTKActiveSearchResultUpdater(DLTKSearchResult result) {
 		fResult = result;
@@ -48,11 +47,12 @@
 		// TODO make this work with resources
 	}
 
+	@Override
 	public void elementChanged(ElementChangedEvent event) {
 		// long t0= System.currentTimeMillis();
 		IModelElementDelta delta = event.getDelta();
-		Set removedElements = new HashSet();
-		Set potentiallyRemovedElements = new HashSet();
+		Set<IAdaptable> removedElements = new HashSet<>();
+		Set<IAdaptable> potentiallyRemovedElements = new HashSet<>();
 		collectRemoved(potentiallyRemovedElements, removedElements, delta);
 		if (removedElements.size() > 0) {
 			handleRemoved(removedElements);
@@ -62,7 +62,7 @@
 		}
 	}
 
-	private void handleRemoved(Set removedElements) {
+	private void handleRemoved(Set<IAdaptable> removedElements) {
 		Object[] elements = fResult.getElements();
 		for (Object element : elements) {
 			if (isContainedInRemoved(removedElements, element)) {
@@ -90,9 +90,9 @@
 		}
 	}
 
-	private boolean isContainedInRemoved(Set removedElements, Object object) {
-		for (Iterator elements = removedElements.iterator(); elements.hasNext();) {
-			if (isParentOf(elements.next(), object)) {
+	private boolean isContainedInRemoved(Set<IAdaptable> removedElements, Object object) {
+		for (IAdaptable iAdaptable : removedElements) {
+			if (isParentOf(iAdaptable, object)) {
 				return true;
 			}
 		}
@@ -115,7 +115,8 @@
 		return null;
 	}
 
-	private void collectRemoved(Set potentiallyRemovedSet, Set removedElements, IModelElementDelta delta) {
+	private void collectRemoved(Set<IAdaptable> potentiallyRemovedSet, Set<IAdaptable> removedElements,
+			IModelElementDelta delta) {
 		if (delta.getKind() == IModelElementDelta.REMOVED) {
 			removedElements.add(delta.getElement());
 		} else if (delta.getKind() == IModelElementDelta.CHANGED) {
@@ -137,10 +138,12 @@
 		}
 	}
 
+	@Override
 	public void queryAdded(ISearchQuery query) {
 		// don't care
 	}
 
+	@Override
 	public void queryRemoved(ISearchQuery query) {
 		if (fResult.equals(query.getSearchResult())) {
 			DLTKCore.removeElementChangedListener(this);
@@ -148,7 +151,7 @@
 		}
 	}
 
-	private void collectRemovals(Set removals, IResourceDelta delta) {
+	private void collectRemovals(Set<IAdaptable> removals, IResourceDelta delta) {
 		if (delta.getKind() == IResourceDelta.REMOVED) {
 			removals.add(delta.getResource());
 		} else {
@@ -159,10 +162,12 @@
 		}
 	}
 
+	@Override
 	public void queryStarting(ISearchQuery query) {
 		// not interested
 	}
 
+	@Override
 	public void queryFinished(ISearchQuery query) {
 		// not interested
 	}
diff --git a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/XmlActiveSearchUpdater.java b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/XmlActiveSearchUpdater.java
index dd9e80b..27104d8 100644
--- a/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/XmlActiveSearchUpdater.java
+++ b/mylyn/plugins/org.eclipse.dltk.mylyn/src/org/eclipse/dltk/internal/mylyn/search/XmlActiveSearchUpdater.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
+ * Copyright (c) 2004, 2017 Tasktop Technologies and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -16,7 +16,6 @@
 import org.eclipse.core.resources.IResourceChangeEvent;
 import org.eclipse.core.resources.IResourceChangeListener;
 import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.mylyn.commons.core.StatusHandler;
@@ -28,9 +27,8 @@
 
 /**
  * COPIED FROM: org.eclipse.search.internal.ui.text.SearchResultUpdater
- * 
+ *
  * @author Shawn Minto
- * 
  */
 public class XmlActiveSearchUpdater implements IResourceChangeListener, IQueryListener {
 	private final FileSearchResult fResult;
@@ -41,6 +39,7 @@
 		ResourcesPlugin.getWorkspace().addResourceChangeListener(this);
 	}
 
+	@Override
 	public void resourceChanged(IResourceChangeEvent event) {
 		IResourceDelta delta = event.getDelta();
 		if (delta != null) {
@@ -50,16 +49,15 @@
 
 	private void handleDelta(IResourceDelta d) {
 		try {
-			d.accept(new IResourceDeltaVisitor() {
-				public boolean visit(IResourceDelta delta) throws CoreException {
-					switch (delta.getKind()) {
-					case IResourceDelta.ADDED:
-						return false;
-					case IResourceDelta.REMOVED:
-						IResource res = delta.getResource();
-						if (res instanceof IFile) {
-							Match[] matches = fResult.getMatches(res);
-							fResult.removeMatches(matches);
+			d.accept(delta -> {
+				switch (delta.getKind()) {
+				case IResourceDelta.ADDED:
+					return false;
+				case IResourceDelta.REMOVED:
+					IResource res = delta.getResource();
+					if (res instanceof IFile) {
+						Match[] matches = fResult.getMatches(res);
+						fResult.removeMatches(matches);
 
 //							for (Match matche : matches) {
 //							 Match m = matches[j];
@@ -69,25 +67,26 @@
 //							 xnode.getHandle());
 //							 System.out.println(XmlJavaReferencesProvider.nodeMap);
 //							}
-						}
-						break;
-					case IResourceDelta.CHANGED:
-						// TODO want to do something on chages to invalidate
-						// handle changed resource
-						break;
 					}
-					return true;
+					break;
+				case IResourceDelta.CHANGED:
+					// TODO want to do something on chages to invalidate
+					// handle changed resource
+					break;
 				}
+				return true;
 			});
 		} catch (CoreException e) {
 			StatusHandler.log(e.getStatus());
 		}
 	}
 
+	@Override
 	public void queryAdded(ISearchQuery query) {
 		// don't care
 	}
 
+	@Override
 	public void queryRemoved(ISearchQuery query) {
 		if (fResult.equals(query.getSearchResult())) {
 			ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
@@ -95,10 +94,12 @@
 		}
 	}
 
+	@Override
 	public void queryStarting(ISearchQuery query) {
 		// don't care
 	}
 
+	@Override
 	public void queryFinished(ISearchQuery query) {
 		// don't care
 	}