32 |
|
* @author Martin Buchholz |
33 |
|
*/ |
34 |
|
|
35 |
+ |
import static java.util.stream.Collectors.toList; |
36 |
+ |
|
37 |
|
import java.util.*; |
38 |
|
import java.util.regex.Pattern; |
39 |
|
import java.util.concurrent.CountDownLatch; |
135 |
|
} |
136 |
|
|
137 |
|
private static Job[] filter(Pattern filter, Job[] jobs) { |
138 |
< |
if (filter == null) return jobs; |
139 |
< |
Job[] newJobs = new Job[jobs.length]; |
140 |
< |
int n = 0; |
141 |
< |
for (Job job : jobs) |
142 |
< |
if (filter.matcher(job.name()).find()) |
141 |
< |
newJobs[n++] = job; |
142 |
< |
// Arrays.copyOf not available in JDK 5 |
143 |
< |
Job[] ret = new Job[n]; |
144 |
< |
System.arraycopy(newJobs, 0, ret, 0, n); |
145 |
< |
return ret; |
138 |
> |
return (filter == null) ? jobs |
139 |
> |
: Arrays.stream(jobs) |
140 |
> |
.filter(job -> filter.matcher(job.name()).find()) |
141 |
> |
.collect(toList()) |
142 |
> |
.toArray(new Job[0]); |
143 |
|
} |
144 |
|
|
145 |
|
private static void deoptimize(ArrayList<Integer> list) { |