--- old/test/java/util/stream/bootlib/java/util/stream/CollectorOps.java 2015-11-13 15:38:19.122722314 -0800 +++ /dev/null 2015-05-15 15:37:46.536788447 -0700 @@ -1,113 +0,0 @@ -/* - * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ -package java.util.stream; - -import org.testng.Assert; - -import java.util.Spliterator; -import java.util.function.IntFunction; - -/** Test helper class for java.util.stream test framework */ -public final class CollectorOps { - private CollectorOps() { } - - public static StatefulTestOp collector() { - return new StatefulCollector<>(0, StreamShape.REFERENCE); - } - - /* Utility classes for collecting output of intermediate pipeline stages */ - public static class StatefulCollector implements StatefulTestOp { - private final int opFlags; - private final StreamShape inputShape; - - public StatefulCollector(int opFlags, StreamShape inputShape) { - this.opFlags = opFlags; - this.inputShape = inputShape; - } - - @Override - public StreamShape inputShape() { - return inputShape; - } - - @Override - public StreamShape outputShape() { - return inputShape; - } - - @Override - public int opGetFlags() { - return opFlags; - } - - @Override - public Sink opWrapSink(int flags, boolean parallel, Sink sink) { - return sink; - } - - @Override - public Node opEvaluateParallel(PipelineHelper helper, - Spliterator spliterator, - IntFunction generator) { - return helper.evaluate(spliterator, false, generator); - } - } - - public static class TestParallelSizedOp extends StatefulCollector { - public TestParallelSizedOp() { - this(StreamShape.REFERENCE); - } - - protected TestParallelSizedOp(StreamShape shape) { - super(0, shape); - } - - @Override - public Node opEvaluateParallel(PipelineHelper helper, - Spliterator spliterator, - IntFunction generator) { - int flags = helper.getStreamAndOpFlags(); - - Assert.assertTrue(StreamOpFlag.SIZED.isKnown(flags)); - return super.opEvaluateParallel(helper, spliterator, generator); - } - - public static class OfInt extends TestParallelSizedOp { - public OfInt() { - super(StreamShape.INT_VALUE); - } - } - - public static class OfLong extends TestParallelSizedOp { - public OfLong() { - super(StreamShape.LONG_VALUE); - } - } - - public static class OfDouble extends TestParallelSizedOp { - public OfDouble() { - super(StreamShape.DOUBLE_VALUE); - } - } - } -} --- /dev/null 2015-05-15 15:37:46.536788447 -0700 +++ new/test/java/util/stream/bootlib/java.base/java/util/stream/CollectorOps.java 2015-11-13 15:38:18.910713297 -0800 @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package java.util.stream; + +import org.testng.Assert; + +import java.util.Spliterator; +import java.util.function.IntFunction; + +/** Test helper class for java.util.stream test framework */ +public final class CollectorOps { + private CollectorOps() { } + + public static StatefulTestOp collector() { + return new StatefulCollector<>(0, StreamShape.REFERENCE); + } + + /* Utility classes for collecting output of intermediate pipeline stages */ + public static class StatefulCollector implements StatefulTestOp { + private final int opFlags; + private final StreamShape inputShape; + + public StatefulCollector(int opFlags, StreamShape inputShape) { + this.opFlags = opFlags; + this.inputShape = inputShape; + } + + @Override + public StreamShape inputShape() { + return inputShape; + } + + @Override + public StreamShape outputShape() { + return inputShape; + } + + @Override + public int opGetFlags() { + return opFlags; + } + + @Override + public Sink opWrapSink(int flags, boolean parallel, Sink sink) { + return sink; + } + + @Override + public Node opEvaluateParallel(PipelineHelper helper, + Spliterator spliterator, + IntFunction generator) { + return helper.evaluate(spliterator, false, generator); + } + } + + public static class TestParallelSizedOp extends StatefulCollector { + public TestParallelSizedOp() { + this(StreamShape.REFERENCE); + } + + protected TestParallelSizedOp(StreamShape shape) { + super(0, shape); + } + + @Override + public Node opEvaluateParallel(PipelineHelper helper, + Spliterator spliterator, + IntFunction generator) { + int flags = helper.getStreamAndOpFlags(); + + Assert.assertTrue(StreamOpFlag.SIZED.isKnown(flags)); + return super.opEvaluateParallel(helper, spliterator, generator); + } + + public static class OfInt extends TestParallelSizedOp { + public OfInt() { + super(StreamShape.INT_VALUE); + } + } + + public static class OfLong extends TestParallelSizedOp { + public OfLong() { + super(StreamShape.LONG_VALUE); + } + } + + public static class OfDouble extends TestParallelSizedOp { + public OfDouble() { + super(StreamShape.DOUBLE_VALUE); + } + } + } +}