Bug 528717 - Cleanup some Sonar reports
Change-Id: I4fb77d006f5cac82e87f0c255fa0821397ba2fe9
Signed-off-by: Mickael Istria <mistria@redhat.com>
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/events/ResourceDelta.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/events/ResourceDelta.java
index a876ff6..6d0e8ba 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/events/ResourceDelta.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/events/ResourceDelta.java
@@ -308,8 +308,7 @@
info = oldInfo;
else
info = newInfo;
- if (info == null)
- Assert.isNotNull(null, "Do not have resource info for resource in delta: " + path); //$NON-NLS-1$
+ Assert.isNotNull(info, "Do not have resource info for resource in delta: " + path); //$NON-NLS-1$
cachedResource = deltaInfo.getWorkspace().newResource(path, info.getType());
return cachedResource;
}
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/LinkDescription.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/LinkDescription.java
index 070d3d9..76d56a1 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/LinkDescription.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/LinkDescription.java
@@ -60,7 +60,10 @@
@Override
public boolean equals(Object o) {
- if (!(o.getClass() == LinkDescription.class))
+ if (o == null) {
+ return false;
+ }
+ if (o.getClass() != this.getClass())
return false;
LinkDescription other = (LinkDescription) o;
return localLocation.equals(other.localLocation) && path.equals(other.path) && type == other.type;
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/PathVariableUtil.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/PathVariableUtil.java
index 5133b58..af2ee5b 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/PathVariableUtil.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/PathVariableUtil.java
@@ -27,17 +27,17 @@
static public String getUniqueVariableName(String variable, IResource resource) {
int index = 1;
variable = getValidVariableName(variable);
- String destVariable = variable;
+ StringBuilder destVariable = new StringBuilder(variable);
IPathVariableManager pathVariableManager = resource.getPathVariableManager();
- if (destVariable.startsWith(ParentVariableResolver.NAME) || destVariable.startsWith(ProjectLocationVariableResolver.NAME))
- destVariable = "copy_" + destVariable; //$NON-NLS-1$
+ if (variable.startsWith(ParentVariableResolver.NAME) || variable.startsWith(ProjectLocationVariableResolver.NAME))
+ destVariable.insert(0, "copy_"); //$NON-NLS-1$
- while (pathVariableManager.isDefined(destVariable)) {
- destVariable = destVariable + index;
+ while (pathVariableManager.isDefined(destVariable.toString())) {
+ destVariable.append(index);
index++;
}
- return destVariable;
+ return destVariable.toString();
}
public static String getValidVariableName(String variable) {
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectContentTypes.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectContentTypes.java
index f41c13d..b166f2e 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectContentTypes.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectContentTypes.java
@@ -197,7 +197,7 @@
ProjectInfo info = (ProjectInfo) project.getResourceInfo(false, false);
//fail if project has been deleted concurrently
if (info == null)
- project.checkAccessible(project.getFlags(info));
+ project.checkAccessible(project.getFlags(null));
IContentTypeMatcher matcher = info.getMatcher();
if (matcher != null)
return matcher;
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectDescriptionReader.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectDescriptionReader.java
index dd14cf8..d18b2da 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectDescriptionReader.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ProjectDescriptionReader.java
@@ -503,7 +503,7 @@
String id = (String) matcher[0];
// the id can't be null
if (id == null) {
- parseProblem(NLS.bind(Messages.projRead_badFilterID, id));
+ parseProblem(NLS.bind(Messages.projRead_badFilterID, null));
return;
}
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/VariableDescription.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/VariableDescription.java
index aaa9dbd..4da6d61 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/VariableDescription.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/VariableDescription.java
@@ -35,7 +35,10 @@
@Override
public boolean equals(Object o) {
- if (!(o.getClass() == VariableDescription.class))
+ if (o == null) {
+ return false;
+ }
+ if (o.getClass() != this.getClass())
return false;
VariableDescription other = (VariableDescription) o;
return name.equals(other.name) && value == other.value;
diff --git a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/utils/UniversalUniqueIdentifier.java b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/utils/UniversalUniqueIdentifier.java
index 0a6dcc6..ef05c44 100644
--- a/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/utils/UniversalUniqueIdentifier.java
+++ b/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/utils/UniversalUniqueIdentifier.java
@@ -18,7 +18,6 @@
import java.security.SecureRandom;
import java.util.GregorianCalendar;
import java.util.Random;
-import org.eclipse.core.runtime.Assert;
public class UniversalUniqueIdentifier implements java.io.Serializable {
@@ -84,7 +83,7 @@
/**
Constructor that accepts the bytes to use for the instance. The format
of the byte array is compatible with the <code>toBytes()</code> method.
-
+
<p>The constructor returns the undefined uuid if the byte array is invalid.
@see #toBytes()
@@ -116,20 +115,6 @@
return (nowMillis.subtract(baseMillis).multiply(BigInteger.valueOf(10000L)));
}
- /**
- Simply increases the visibility of <code>Object</code>'s clone.
- Otherwise, no new behaviour.
- */
- @Override
- public Object clone() {
- try {
- return super.clone();
- } catch (CloneNotSupportedException e) {
- Assert.isTrue(false, Messages.utils_clone);
- return null;
- }
- }
-
public static int compareTime(byte[] fBits1, byte[] fBits2) {
for (int i = TIME_FIELD_STOP; i >= 0; i--)
if (fBits1[i] != fBits2[i])
@@ -198,7 +183,7 @@
/**
Answers the IP address of the local machine using the
Java API class <code>InetAddress</code>.
-
+
@return byte[] the network address in network order
@see java.net.InetAddress#getLocalHost()
@see java.net.InetAddress#getAddress()
@@ -327,7 +312,7 @@
/**
This representation is compatible with the (byte[]) constructor.
-
+
@see #UniversalUniqueIdentifier(byte[])
*/
public byte[] toBytes() {
diff --git a/tests/org.eclipse.core.tests.resources/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.core.tests.resources/.settings/org.eclipse.jdt.core.prefs
index 9cec31a..3d82d09 100644
--- a/tests/org.eclipse.core.tests.resources/.settings/org.eclipse.jdt.core.prefs
+++ b/tests/org.eclipse.core.tests.resources/.settings/org.eclipse.jdt.core.prefs
@@ -141,7 +141,7 @@
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=84
org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
@@ -413,7 +413,7 @@
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=separate_lines
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/internal/builders/RefreshLocalJavaFileBuilder.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/internal/builders/RefreshLocalJavaFileBuilder.java
index 615ce59..702eec7 100644
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/internal/builders/RefreshLocalJavaFileBuilder.java
+++ b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/internal/builders/RefreshLocalJavaFileBuilder.java
@@ -13,6 +13,7 @@
import java.io.FileOutputStream;
import java.util.Map;
+import org.eclipse.core.internal.utils.FileUtil;
import org.eclipse.core.resources.*;
import org.eclipse.core.runtime.*;
@@ -32,16 +33,18 @@
IFile file = project.getFile("A.java");
IPath localLocation = project.getLocation().append(file.getName());
java.io.File localFile = localLocation.toFile();
+ FileOutputStream out = null;
try {
if (localFile.exists()) {
localFile.delete();
}
- FileOutputStream out = new FileOutputStream(localFile);
+ out = new FileOutputStream(localFile);
out.write("public class A {}".getBytes());
- out.close();
} catch (Exception e) {
e.printStackTrace();
return null;
+ } finally {
+ FileUtil.safeClose(out);
}
project.refreshLocal(IResource.DEPTH_INFINITE, null);
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/Comparator.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/Comparator.java
deleted file mode 100644
index 2134502..0000000
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/Comparator.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2015 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- * Alexander Kurtakov <akurtako@redhat.com> - Bug 459343
- *******************************************************************************/
-package org.eclipse.core.tests.resources;
-
-import java.util.*;
-import org.eclipse.core.resources.ICommand;
-
-/**
- * This class provides static comparison methods for various core
- * objects that do not implement equals.
- */
-public class Comparator {
- public static boolean equals(byte[] b0, byte[] b1) {
- if (b0 == b1) {
- return true;
- }
-
- if (b0 == null || b1 == null) {
- return false;
- }
-
- if (b0.length != b1.length) {
- return false;
- }
-
- for (int i = 0; i < b0.length; ++i) {
- if (b0[i] != b1[i]) {
- return false;
- }
- }
-
- return true;
- }
-
- public static boolean equals(Object[] obj0, Object[] obj1) {
- return equals(obj0, obj1, true);
- }
-
- public static boolean equals(Object[] obj0, Object[] obj1, boolean isOrderImportant) {
- if (obj0 == obj1) {
- return true;
- }
-
- if (obj0 == null || obj1 == null) {
- return false;
- }
-
- if (obj0.length != obj1.length) {
- return false;
- }
-
- if (isOrderImportant) {
- for (int i = 0; i < obj0.length; ++i) {
- if (!equals(obj0[i], obj1[i])) {
- return false;
- }
- }
- } else {
- boolean[] checkList = new boolean[obj0.length];
- for (int i = 0; i < checkList.length; ++i) {
- checkList[i] = false;
- }
-
- for (Object element : obj0) {
- boolean found = false;
- for (int j = 0; !found && j < obj1.length; ++j) {
- if (!checkList[j] && equals(element, obj1[j])) {
- checkList[j] = true;
- found = true;
- }
- }
- if (!found) {
- return false;
- }
- }
- }
-
- return true;
- }
-
- public static boolean equals(ICommand[] cs0, ICommand[] cs1) {
- if (cs0 == cs1) {
- return true;
- }
- if (cs0 == null || cs1 == null) {
- return false;
- }
- if (cs0.length != cs1.length) {
- return false;
- }
- for (int i = 0; i < cs0.length; ++i) {
- if (!cs0[i].getBuilderName().equals(cs1[i].getBuilderName())) {
- return false;
- }
- if (!equals(cs0[i].getArguments(), cs1[i].getArguments())) {
- return false;
- }
- }
- return true;
- }
-
- public static boolean equals(Object obj0, Object obj1) {
- if (obj0 == obj1) {
- return true;
- }
-
- if (obj0 == null || obj1 == null) {
- return false;
- }
-
- if (obj0 instanceof byte[] && obj1 instanceof byte[]) {
- return equals((byte[]) obj0, (byte[]) obj1);
- } else if (obj0 instanceof Enumeration && obj1 instanceof Enumeration) {
- return equals((Enumeration<?>) obj0, (Enumeration<?>) obj1);
- } else if (obj0 instanceof Hashtable && obj1 instanceof Hashtable) {
- return equals((Hashtable<?, ?>) obj0, (Hashtable<?, ?>) obj1);
- } else if (obj0 instanceof ICommand[] && obj1 instanceof ICommand[]) {
- return equals((ICommand[]) obj0, (ICommand[]) obj1);
- } else if (obj0 instanceof Object[] && obj1 instanceof Object[]) {
- return equals((Object[]) obj0, (Object[]) obj1);
- } else if (obj0 instanceof Vector && obj1 instanceof Vector) {
- return equals((Vector<?>) obj0, (Vector<?>) obj1);
- }
-
- return obj0.equals(obj1);
- }
-
- public static boolean equals(Enumeration<?> e, Object[] obj) {
- return equals(e, obj, true);
- }
-
- public static boolean equals(Enumeration<?> e, Object[] obj1, boolean isOrderImportant) {
- Vector<Object> v = new Vector<>();
-
- while (e.hasMoreElements()) {
- v.addElement(e.nextElement());
- }
-
- Object[] obj0 = new Object[v.size()];
- v.copyInto(obj0);
-
- return equals(obj0, obj1, isOrderImportant);
- }
-
- public static boolean equals(Enumeration<?> e0, Enumeration<?> e1) {
- if (e0 == e1) {
- return true;
- }
-
- if (e0 == null || e1 == null) {
- return false;
- }
-
- while (e0.hasMoreElements() && e1.hasMoreElements()) {
- if (!equals(e0.nextElement(), e1.nextElement())) {
- return false;
- }
- }
-
- if (e0.hasMoreElements() || e1.hasMoreElements()) {
- return false;
- }
-
- return true;
- }
-
- public static boolean equals(Hashtable<?, ?> ht0, Hashtable<?, ?> ht1) {
- if (ht0 == ht1) {
- return true;
- }
-
- if (ht0 == null || ht1 == null) {
- return false;
- }
-
- if (ht0.size() != ht1.size()) {
- return false;
- }
-
- Enumeration<?> keys0 = ht0.keys();
- while (keys0.hasMoreElements()) {
- Object key = keys0.nextElement();
- if (!equals(ht0.get(key), ht1.get(key))) {
- return false;
- }
- }
-
- return true;
- }
-
- public static boolean equals(Vector<?> c0, Vector<?> c1) {
- if (c0 == c1) {
- return true;
- }
-
- if (c0 == null || c1 == null) {
- return false;
- }
-
- if (!equals(c0.elements(), c1.elements())) {
- return false;
- }
-
- return true;
- }
-}
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/IResourceTest.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/IResourceTest.java
index dbcc2f5..e0b1f78 100644
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/IResourceTest.java
+++ b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/IResourceTest.java
@@ -313,7 +313,7 @@
/**
* Returns interesting resource states. */
protected Integer[] interestingStates() {
- return new Integer[] {Integer.valueOf(S_WORKSPACE_ONLY), Integer.valueOf(S_FILESYSTEM_ONLY), Integer.valueOf(S_UNCHANGED), Integer.valueOf(S_CHANGED), new Integer(S_DOES_NOT_EXIST),
+ return new Integer[] {Integer.valueOf(S_WORKSPACE_ONLY), Integer.valueOf(S_FILESYSTEM_ONLY), Integer.valueOf(S_UNCHANGED), Integer.valueOf(S_CHANGED), Integer.valueOf(S_DOES_NOT_EXIST),
// Integer.valueOf(S_FOLDER_TO_FILE),
// Integer.valueOf(S_FILE_TO_FOLDER),
};
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/NatureTest.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/NatureTest.java
index 3111667..6a8024d 100644
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/NatureTest.java
+++ b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/NatureTest.java
@@ -341,16 +341,16 @@
}
private void copy(java.io.File src, java.io.File dst) throws IOException {
- InputStream in = new FileInputStream(src);
- OutputStream out = new FileOutputStream(dst);
-
- byte[] buffer = new byte[1024];
- int read;
- while ((read = in.read(buffer)) > 0) {
- out.write(buffer, 0, read);
+ try (
+ InputStream in = new FileInputStream(src);
+ OutputStream out = new FileOutputStream(dst);
+ ) {
+ byte[] buffer = new byte[1024];
+ int read;
+ while ((read = in.read(buffer)) > 0) {
+ out.write(buffer, 0, read);
+ }
}
- in.close();
- out.close();
}
/**
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/ResourceTest.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/ResourceTest.java
index b0180b6..b087671 100644
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/ResourceTest.java
+++ b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/ResourceTest.java
@@ -19,6 +19,7 @@
import java.util.Set;
import org.eclipse.core.filesystem.*;
import org.eclipse.core.internal.resources.Resource;
+import org.eclipse.core.internal.utils.FileUtil;
import org.eclipse.core.internal.utils.UniversalUniqueIdentifier;
import org.eclipse.core.resources.*;
import org.eclipse.core.runtime.*;
@@ -130,18 +131,8 @@
subMonitor.setWorkRemaining(100).split(1);
}
} finally {
- try {
- source.close();
- } catch (IOException e) {
- // ignore
- } finally {
- //close destination in finally in case source.close fails
- try {
- destination.close();
- } catch (IOException e) {
- // ignore
- }
- }
+ FileUtil.safeClose(source);
+ FileUtil.safeClose(destination);
}
}
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/content/XMLContentDescriberTest.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/content/XMLContentDescriberTest.java
index 7aece1e..12e221c 100644
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/content/XMLContentDescriberTest.java
+++ b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/content/XMLContentDescriberTest.java
@@ -11,6 +11,7 @@
package org.eclipse.core.tests.resources.content;
import java.io.*;
+import java.util.Arrays;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.eclipse.core.runtime.Platform;
@@ -108,8 +109,8 @@
for (boolean[] flag : flags) {
description = Platform.getContentTypeManager().getDescriptionFor(getReader(encodingInContent, flag[0], flag[1], flag[2]), "fake.xml", new QualifiedName[] {IContentDescription.CHARSET});
assertNotNull("1.0: " + flag[0] + " " + flag[1] + " " + flag[2], description);
- assertEquals("1.1: " + flag, Platform.PI_RUNTIME + ".xml", description.getContentType().getId());
- assertEquals("1.2: " + flag, expectedEncoding, description.getProperty(IContentDescription.CHARSET));
+ assertEquals("1.1: " + Arrays.toString(flag), Platform.PI_RUNTIME + ".xml", description.getContentType().getId());
+ assertEquals("1.2: " + Arrays.toString(flag), expectedEncoding, description.getProperty(IContentDescription.CHARSET));
}
}
diff --git a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/usecase/IProjectTest.java b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/usecase/IProjectTest.java
index 0309310..920fc57 100644
--- a/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/usecase/IProjectTest.java
+++ b/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/resources/usecase/IProjectTest.java
@@ -11,12 +11,12 @@
*******************************************************************************/
package org.eclipse.core.tests.resources.usecase;
+import java.util.Arrays;
import java.util.Hashtable;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.eclipse.core.resources.*;
import org.eclipse.core.runtime.*;
-import org.eclipse.core.tests.resources.Comparator;
public class IProjectTest extends IResourceTest {
public static String LOCAL_LOCATION_PATH_STRING_0;
@@ -221,7 +221,7 @@
desc.setBuildSpec(commands);
// Compare project buildspecs
- assertTrue("15.5", Comparator.equals(desc.getBuildSpec(), commands));
+ assertTrue("15.5", Arrays.deepEquals(desc.getBuildSpec(), commands));
// IResource.isLocal(int)
assertTrue("18.0", proj.isLocal(IResource.DEPTH_ZERO));