Manual array copy
Use Arrays.asList or System.arraycopy instead of copying array in a for loop
Change-Id: I362bcb4e6a21237e676d18535ce493ae415357f0
Signed-off-by: Carsten Hammer <carsten.hammer@t-online.de>
diff --git a/bundles/org.eclipse.core.jobs/src/org/eclipse/core/runtime/jobs/MultiRule.java b/bundles/org.eclipse.core.jobs/src/org/eclipse/core/runtime/jobs/MultiRule.java
index 876d1bc..dd9f980 100644
--- a/bundles/org.eclipse.core.jobs/src/org/eclipse/core/runtime/jobs/MultiRule.java
+++ b/bundles/org.eclipse.core.jobs/src/org/eclipse/core/runtime/jobs/MultiRule.java
@@ -14,6 +14,7 @@
package org.eclipse.core.runtime.jobs;
import java.util.ArrayList;
+import java.util.Arrays;
/**
* A MultiRule is a compound scheduling rule that represents a fixed group of child
@@ -94,8 +95,7 @@
for (ISchedulingRule nestedRule : nestedRules) {
if (nestedRule instanceof MultiRule) {
ISchedulingRule[] children = ((MultiRule) nestedRule).getChildren();
- for (ISchedulingRule element : children)
- myRules.add(element);
+ myRules.addAll(Arrays.asList(children));
} else {
myRules.add(nestedRule);
}
diff --git a/bundles/org.eclipse.e4.core.di/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.core.di/META-INF/MANIFEST.MF
index fbc5660..c5b1448 100644
--- a/bundles/org.eclipse.e4.core.di/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.core.di/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.e4.core.di
-Bundle-Version: 1.7.200.qualifier
+Bundle-Version: 1.7.300.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.e4.core.di/pom.xml b/bundles/org.eclipse.e4.core.di/pom.xml
index 42e1e1d..580f751 100644
--- a/bundles/org.eclipse.e4.core.di/pom.xml
+++ b/bundles/org.eclipse.e4.core.di/pom.xml
@@ -19,6 +19,6 @@
</parent>
<groupId>org.eclipse.e4</groupId>
<artifactId>org.eclipse.e4.core.di</artifactId>
- <version>1.7.200-SNAPSHOT</version>
+ <version>1.7.300-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/bundles/org.eclipse.e4.core.di/src/org/eclipse/e4/core/internal/di/InjectorImpl.java b/bundles/org.eclipse.e4.core.di/src/org/eclipse/e4/core/internal/di/InjectorImpl.java
index 34dbb6a..685ec78 100644
--- a/bundles/org.eclipse.e4.core.di/src/org/eclipse/e4/core/internal/di/InjectorImpl.java
+++ b/bundles/org.eclipse.e4.core.di/src/org/eclipse/e4/core/internal/di/InjectorImpl.java
@@ -382,8 +382,7 @@
Constructor<?>[] constructors = getDeclaredConstructors(clazz);
// Sort the constructors by descending number of constructor arguments
ArrayList<Constructor<?>> sortedConstructors = new ArrayList<>(constructors.length);
- for (Constructor<?> constructor : constructors)
- sortedConstructors.add(constructor);
+ sortedConstructors.addAll(Arrays.asList(constructors));
Collections.sort(sortedConstructors, (c1, c2) -> {
int l1 = c1.getParameterTypes().length;
int l2 = c2.getParameterTypes().length;
diff --git a/tests/org.eclipse.core.tests.runtime/src/org/eclipse/core/tests/runtime/jobs/RandomTestRunnable.java b/tests/org.eclipse.core.tests.runtime/src/org/eclipse/core/tests/runtime/jobs/RandomTestRunnable.java
index b135e34..e96cde9 100644
--- a/tests/org.eclipse.core.tests.runtime/src/org/eclipse/core/tests/runtime/jobs/RandomTestRunnable.java
+++ b/tests/org.eclipse.core.tests.runtime/src/org/eclipse/core/tests/runtime/jobs/RandomTestRunnable.java
@@ -29,9 +29,7 @@
public RandomTestRunnable(ILock[] locks, String name, boolean addRandomness) {
super(name);
this.locks = new ILock[locks.length];
- for (int i = 0; i < locks.length; i++) {
- this.locks[i] = locks[i];
- }
+ System.arraycopy(locks, 0, this.locks, 0, locks.length);
this.alive = true;
this.needRandomization = addRandomness;
}