Bug 486347 - Move org.eclipse.core.variables to Java 1.7

Change-Id: Id4cde788757d16d1d62771280e62e902f37b90df
diff --git a/org.eclipse.core.variables/.classpath b/org.eclipse.core.variables/.classpath
index ad32c83..098194c 100644
--- a/org.eclipse.core.variables/.classpath
+++ b/org.eclipse.core.variables/.classpath
@@ -1,6 +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.6"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs
index a627d36..6cf5440 100644
--- a/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs
@@ -11,13 +11,17 @@
 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.6
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.7
 org.eclipse.jdt.core.compiler.debug.lineNumber=generate
 org.eclipse.jdt.core.compiler.debug.localVariable=generate
 org.eclipse.jdt.core.compiler.debug.sourceFile=generate
@@ -34,7 +38,7 @@
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
 org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
+org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=error
 org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
@@ -109,6 +113,7 @@
 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=error
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
@@ -121,7 +126,7 @@
 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.6
+org.eclipse.jdt.core.compiler.source=1.7
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL,HIGH,HIGH
 org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX,EXPERIMENTAL,CONTEXTLAUNCHING
diff --git a/org.eclipse.core.variables/META-INF/MANIFEST.MF b/org.eclipse.core.variables/META-INF/MANIFEST.MF
index 31a0586..de61509 100644
--- a/org.eclipse.core.variables/META-INF/MANIFEST.MF
+++ b/org.eclipse.core.variables/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.core.variables; singleton:=true
-Bundle-Version: 3.2.800.qualifier
+Bundle-Version: 3.3.0.qualifier
 Bundle-Activator: org.eclipse.core.variables.VariablesPlugin
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
@@ -10,4 +10,4 @@
  org.eclipse.core.variables
 Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.3.0,4.0.0)"
 Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
diff --git a/org.eclipse.core.variables/pom.xml b/org.eclipse.core.variables/pom.xml
index ea1fdd8..540a200 100644
--- a/org.eclipse.core.variables/pom.xml
+++ b/org.eclipse.core.variables/pom.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  Copyright (c) 2012, 2013 Eclipse Foundation and others.
+  Copyright (c) 2012, 2016 Eclipse Foundation and others.
   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Distribution License v1.0
   which accompanies this distribution, and is available at
@@ -18,6 +18,6 @@
   </parent>
   <groupId>org.eclipse.core</groupId>
   <artifactId>org.eclipse.core.variables</artifactId>
-  <version>3.2.800-SNAPSHOT</version>
+  <version>3.3.0-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java
index ce098e8..bce5c59 100644
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java
+++ b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
+ * Copyright (c) 2000, 2016 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
@@ -85,13 +85,13 @@
 	 */
 	public String performStringSubstitution(String expression, boolean reportUndefinedVariables, boolean resolveVariables, IStringVariableManager manager) throws CoreException {
 		substitute(expression, reportUndefinedVariables, resolveVariables, manager);
-		List<HashSet<String>> resolvedVariableSets = new ArrayList<HashSet<String>>();
+		List<HashSet<String>> resolvedVariableSets = new ArrayList<>();
 		while (fSubs) {
 			HashSet<String> resolved = substitute(fResult.toString(), reportUndefinedVariables, true, manager);
 			for(int i=resolvedVariableSets.size()-1; i>=0; i--) {
 				HashSet<String> prevSet = resolvedVariableSets.get(i);
 				if (prevSet.equals(resolved)) {
-					HashSet<String> conflictingSet = new HashSet<String>();
+					HashSet<String> conflictingSet = new HashSet<>();
 					for (; i<resolvedVariableSets.size(); i++) {
 						conflictingSet.addAll(resolvedVariableSets.get(i));
 					}
@@ -135,10 +135,10 @@
 	 */
 	private HashSet<String> substitute(String expression, boolean reportUndefinedVariables, boolean resolveVariables, IStringVariableManager manager) throws CoreException {
 		fResult = new StringBuffer(expression.length());
-		fStack = new Stack<VariableReference>();
+		fStack = new Stack<>();
 		fSubs = false;
 
-		HashSet<String> resolvedVariables = new HashSet<String>();
+		HashSet<String> resolvedVariables = new HashSet<>();
 
 		int pos = 0;
 		int state = SCAN_FOR_START;
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java
index 0270d91..6dc72e1 100644
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java
+++ b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
+ * Copyright (c) 2000, 2016 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
@@ -193,7 +193,7 @@
 	 * Constructs a new string variable manager.
 	 */
 	private StringVariableManager() {
-		fListeners = new ListenerList<IValueVariableListener>();
+		fListeners = new ListenerList<>();
 	}
 
 	/**
@@ -202,8 +202,8 @@
 	private synchronized void initialize() {
 		if (fDynamicVariables == null) {
 			fInternalChange = true;
-			fDynamicVariables = new HashMap<String, IDynamicVariable>(5);
-			fValueVariables = new HashMap<String, IStringVariable>(5);
+			fDynamicVariables = new HashMap<>(5);
+			fValueVariables = new HashMap<>(5);
 			loadContributedValueVariables();
 			loadPersistedValueVariables();
 			loadDynamicVariables();
@@ -325,7 +325,7 @@
 	@Override
 	public synchronized IStringVariable[] getVariables() {
 		initialize();
-		List<IStringVariable> list = new ArrayList<IStringVariable>(fDynamicVariables.size() + fValueVariables.size());
+		List<IStringVariable> list = new ArrayList<>(fDynamicVariables.size() + fValueVariables.size());
 		list.addAll(fDynamicVariables.values());
 		list.addAll(fValueVariables.values());
 		return list.toArray(new IStringVariable[list.size()]);
@@ -405,7 +405,7 @@
 	@Override
 	public synchronized void removeVariables(IValueVariable[] variables) {
 		initialize();
-		List<IValueVariable> removed = new ArrayList<IValueVariable>(variables.length);
+		List<IValueVariable> removed = new ArrayList<>(variables.length);
 		for (int i = 0; i < variables.length; i++) {
 			IValueVariable variable = variables[i];
 			if (fValueVariables.remove(variable.getName()) != null) {