History log of /libcore/ojluni/src/main/java/java/util/Arrays.java
Revision Date Author Comments
d2449bb576ad1e3a3877364e5e1ae28625f69e35 25-Apr-2016 Yi Kong <yikong@google.com> Update URLs to Java technotes and platform docs

Fix links to {@docRoot}/../{technotes,platform} pages.

This is done by batch editing using the following script:
grep @docRoot -rl | xargs sed -i 's/\/..\/technotes/r\/openjdk-redirect.html?v=8\&path=\/technotes/g;s/\/..\/platform/openjdk-redirect.html?v=8\&path=\/platform/g'

Bug: 27540501
Change-Id: Ib5634cd461fbba37dd94ddad9660910dc9397fe7
1eae5d5c81785d589e337d408f2f3b87fdbb4c8e 06-Apr-2016 Yi Kong <yikong@google.com> Port OpenJDK8 java.util.Arrays#parallelPrefix method

Bug: 28058863
Change-Id: I274d25c0c9e5639a03f694214d625b2f0cf0f7ec
(cherry picked from commit c5c1e2717349a96913dc88722a20c7c1ec2cae68)
2c5ded18d09c06540892bfee5d20b69038029f8a 04-Apr-2016 Shubham Ajmera <shubhamajmera@google.com> Add Arrays$ArrayList::replaceAll

and corresponding test.

Bug: 27540008
Change-Id: Ib755e5f183fc05d03b1696c3c660d8508fe719f6
501c3a2e032cf10db12fb4641f4d3a3ebfa57a81 23-Mar-2016 Shubham Ajmera <shubhamajmera@google.com> Add OpenJDK Arrays parallelSetAll methods

Adds parallelSetAll(int[], java.util.function.IntUnaryOperator),
parallelSetAll(long[], java.util.function.IntToLongFunction),
parallelSetAll(double[], java.util.function.IntToDoubleFunction),
parallelSetAll(T[], java.util.function.IntFunction<? extends T>)
from the upstream along with the corresponding tests.

Bug: 27540010
(cherry-picked from commit 8410d73155d650a295915926dc8a0c961bb46b58)
Change-Id: I3be47b67b6888c01f4ea77c2da32b74d58d027bd
ff18b5f136f92154f2e05217e3953d10f459e561 16-Mar-2016 Igor Murashkin <iam@google.com> Add openJdk8 java.util.stream package

Based on openJdk 8u60 source & iam@ stream prototype in
ag/872080

Uncommented all code that was waiting for java.util.stream
to show up

Differences from original sources:
- Removed unsignedDivision usage from LongStream, it's not currently
supported and we don't expect that large workloads on mobile devices.
- Removed java.nio.file references.
- Removed (yet) not implemented stream-related methods from
other packages listed in package-info.java.

Bug: 27692239
Change-Id: Ie24e60e8248367b576ef91046837ccde152de373
(cherry picked from commit d0a2645e29a9b84d7e5ec822eb9904e93bd6c013)
e1e167444be3b2d2c232f0b6f941b25f3ce4231a 11-Mar-2016 Shubham Ajmera <shubhamajmera@google.com> Port OpenJDK 8 java.util.Arrays#setAll methods

Bug: 27540010
(cherry-picked from commit 14a4ce7e537fbc11d3de7ed77a84641c0235040f)
Change-Id: I3c4224480cb17c6704845c945ef18b56ac0ca7e6
471945701ad7895acf0dae73f90a5f18cd9ca23a 02-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Port of oJdk8 Arrays#parallelSort* & tests

Based on openJdk 8u40 source & iam@ stream change in
ag/872080

Bug: 27426684
Change-Id: I86e5b8a61201c73ab2e8bac069e540c9ca8dc120
(cherry picked from commit c9b5ffc066d5ea92fdbf0cfd7ea7f56a6e96a4ab)
c353afc367d0bc83ac1c2bf33afb07e9ae0fbdff 10-Mar-2016 Narayan Kamath <narayan@google.com> Revert "Revert "Port Tim&DualPivotQuick sort changes from openJdk8""

This reverts commit 02f409d949c9d50806809b827ec503765bed34fd.

The performance regression that caused the original revert has been
identified and is unrelated to this change (though caused by an
obscure side effect of it).

bug: 27426684

Change-Id: Ie7a35a588f4042c0e1462c950e99c08e478b4cb2
8b056f0b15bc1e45da8d4c504353b05e681ac013 04-Mar-2016 Narayan Kamath <narayan@google.com> Add java.lang.Iterable.spliterator() and supporting classes.

The only android specific changes here are to HashMap - their
spliterators add Spliterator.ORDERED if the HashMap is an instance
of a LinkedHashMap.

There's some degree of duplication between the test code used to
exercise primitive arrays (Arrays / Spliterators provide similar
APIs). These differences are quite hard to consolidate, since the
Arrays version declares that their Spliterators are ORDERED but
the Spliterator version doesn't. The latter also allows us to declare
additional Spliterator characteristics.

bug: 27426688
Change-Id: I191a9319d4af7e22834f2d91f73634a227b36bc2
4c89023ef86f29fa9add7db2574f2169fe842577 04-Mar-2016 Narayan Kamath <narayan@google.com> Add java.lang.Iterable.spliterator() and supporting classes.

The only android specific changes here are to HashMap - their
spliterators add Spliterator.ORDERED if the HashMap is an instance
of a LinkedHashMap.

There's some degree of duplication between the test code used to
exercise primitive arrays (Arrays / Spliterators provide similar
APIs). These differences are quite hard to consolidate, since the
Arrays version declares that their Spliterators are ORDERED but
the Spliterator version doesn't. The latter also allows us to declare
additional Spliterator characteristics.

(cherry-picked from commit ed21aa3a8dcd34eca6f0317eeb683e7afdc825b9)

bug: 27426688
Change-Id: I191a9319d4af7e22834f2d91f73634a227b36bc2
02f409d949c9d50806809b827ec503765bed34fd 08-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Revert "Port Tim&DualPivotQuick sort changes from openJdk8"

This reverts commit 2d5f13085d5a82ba648a244a58f834bf438a979b.

Change-Id: Iaf346068b6c0380a45bcfbff27abdf5cd31a8fcc
2d5f13085d5a82ba648a244a58f834bf438a979b 01-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Port Tim&DualPivotQuick sort changes from openJdk8

This change adds an ability to invoke a sort on a sub-range
inside an array. Follow-up change will add new Arrays.parallelSort
methods.

Based on openJdk 8u40 source & iam@ stream change in
ag/872080

Bug: 27426684
Change-Id: I54e3ff61049fdc9a08fbaa6a10b07d2620f7172d
(cherry picked from commit a124e09d2ab78d9291a6fb9a48845a55a12491a2)
a124e09d2ab78d9291a6fb9a48845a55a12491a2 01-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Port Tim&DualPivotQuick sort changes from openJdk8

This change adds an ability to invoke a sort on a sub-range
inside an array. Follow-up change will add new Arrays.parallelSort
methods.

Based on openJdk 8u40 source & iam@ stream change in
ag/872080

Bug: 27426684
Change-Id: I54e3ff61049fdc9a08fbaa6a10b07d2620f7172d
60796efea3a74e02aea384b8eb56103ea21b880b 29-Feb-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Add Iterable#forEach & Map#forEach from openJdk8

Based on openJdk 8u40 source & iam@ stream change in
ag/872080

Bug: 27404545
Change-Id: Ic67e20b35c24e7acce513e010b727510af09a83e
(cherry picked from commit c3a9db83a352d92d5a6e0098f22bde07e34a1d3b)
c3a9db83a352d92d5a6e0098f22bde07e34a1d3b 29-Feb-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Add Iterable#forEach & Map#forEach from openJdk8

Based on openJdk 8u40 source & iam@ stream change in
ag/872080

Bug: 27404545
Change-Id: Ic67e20b35c24e7acce513e010b727510af09a83e
2c87ad3a45cecf9e344487cad1abfdebe79f2c7c 21-Dec-2015 Narayan Kamath <narayan@google.com> Update file headers.

Change-Id: I8149f41585768a1a4b72ab7bb4a1452376c05cc2
669c2cc344614fd721cfff2e7a9e80ad6e8b368c 07-Oct-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Speed up Arrays#deepHashCode & deepEquals

Getting class object and comparing it performs
faster than instanceof operator.

Change-Id: I026ad4b2bb06de8325df82fc21ced2e1d7d49b21
1ae149ae8db46adac5723c739d53dd82a1cf2e1a 27-Apr-2015 Piotr Jastrzebski <haaawk@google.com> Use OpenJdk implementation of java.io.*

(except for DateInputStream, RandomAccessFile, File*, Object*)

- Make Shutdown public (for use without shared secrets).
- Add Console.getConsole()
- Remove legacy merge sort support from Arrays.
- Remove ensureMemberAccess from ReflectUtil.

Change-Id: I0a815ddcfac83af09698dc4ce8c88b920a844ffa
983b2c6ff9ea6d35adf7ab6398dccf870b7e180a 24-Apr-2015 Piotr Jastrzebski <haaawk@google.com> Use OpenJdk implementation for java.util.*

- Add a target for currency data (currency.data).
- Arrays: Add an android specific debugging method.
- Currency: Use ICU4C data.
- EnumMap / EnumSet : Use JavaLangAccess directly.
- HashMap / Hashtable / LinkedHashMap : Make Entry<K,V> public.
- LinkedHashMap : Add an eldest() method.
- Locale : Fix handling of 3 letter region codes.
- Scanner : Temporarily remove references to the nio file APIs.
- ServiceLoader : Add a method to instantiate a class from a system
property (used in other parts of libcore).
- Hashing : Use JavaLangAccess directly.
- VM : Remove native initialization (doesn't apply here).

Change-Id: I8e870357cf3987cd571c7ebe8bc633a85380a8d5
51b1b6997fd3f980076b8081f7f1165ccc2a4008 16-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and
src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes
directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to
libcore/ojluni/src/main/native:
jdk/src/solaris/native/java/io/canonicalize_md.c
build/linux-amd64/include/classfile_constants.h
jdk/src/share/native/java/net/DatagramPacket.c
jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c
jdk/src/share/native/java/lang/Double.c
jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h
jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c
jdk/src/solaris/native/java/io/FileDescriptor_md.c
jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c
jdk/src/share/native/java/io/FileInputStream.c
jdk/src/solaris/native/sun/nio/ch/FileKey.c
jdk/src/solaris/native/java/io/FileOutputStream_md.c
jdk/src/solaris/native/java/io/FileSystem_md.c
jdk/src/share/native/java/lang/Float.c
jdk/src/share/native/java/net/Inet4Address.c
jdk/src/solaris/native/java/net/Inet4AddressImpl.c
jdk/src/share/native/java/net/Inet6Address.c
jdk/src/solaris/native/java/net/Inet6AddressImpl.c
jdk/src/share/native/java/net/InetAddress.c
jdk/src/solaris/native/java/net/InetAddressImplFactory.c
jdk/src/share/native/java/io/io_util.c
jdk/src/solaris/native/sun/nio/ch/IOUtil.c
jdk/src/share/native/java/io/io_util.h
jdk/src/solaris/native/java/io/io_util_md.c
jdk/src/solaris/native/java/io/io_util_md.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/java_io_FileDescriptor.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileInputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileOutputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_ObjectStreamClass.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_UnixFileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Double.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Float.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Integer.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Long.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Runtime.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Shutdown.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_StrictMath.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_String.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_System.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Thread.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Throwable.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_DatagramPacket.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddress.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddressImplFactory.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_NetworkInterface.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainDatagramSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketInputStream.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOptions.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOutputStream.h
jdk/src/share/native/java/lang/java_props.h
jdk/src/solaris/native/java/lang/java_props_md.c
jdk/src/share/native/java/util/zip/Adler32.c as java_util_zip_Adler32.c
jdk/src/share/native/java/util/zip/CRC32.c as java_util_zip_CRC32.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_CRC32.h
jdk/src/share/native/java/util/zip/Deflater.c as java_util_zip_Deflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Deflater.h
jdk/src/share/native/java/util/zip/Inflater.c as java_util_zip_Inflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Inflater.h
jdk/src/share/native/java/util/zip/ZipFile.c as java_util_zip_ZipFile.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_ZipFile.h
jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h
jdk/src/share/native/common/jlong.h
jdk/src/solaris/native/common/jlong_md.h
jdk/src/share/native/common/jni_util.c
jdk/src/share/native/common/jni_util.h
jdk/src/solaris/native/common/jni_util_md.c
jdk/src/share/javavm/export/jvm.h
jdk/src/solaris/javavm/export/jvm_md.h
jdk/src/solaris/native/java/net/linux_close.c
jdk/src/share/native/sun/misc/NativeSignalHandler.c
jdk/src/solaris/native/sun/nio/ch/NativeThread.c
jdk/src/share/native/java/net/net_util.c
jdk/src/share/native/java/net/net_util.h
jdk/src/solaris/native/java/net/net_util_md.c
jdk/src/solaris/native/java/net/net_util_md.h
jdk/src/solaris/native/java/net/NetworkInterface.c
jdk/src/share/native/sun/nio/ch/nio.h
jdk/src/solaris/native/sun/nio/ch/nio_util.h
jdk/src/share/native/java/io/ObjectStreamClass.c
jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c
jdk/src/solaris/native/java/net/PlainSocketImpl.c
jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c
jdk/src/share/native/java/lang/Runtime.c
jdk/src/share/native/java/lang/Shutdown.c
jdk/src/share/native/sun/misc/Signal.c
jdk/src/solaris/native/java/net/SocketInputStream.c
jdk/src/solaris/native/java/net/SocketOutputStream.c
jdk/src/share/native/java/lang/StrictMath.c
jdk/src/share/native/java/lang/String.c
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_NativeSignalHandler.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_Signal.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/sun_net_spi_DefaultProxySelector.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileChannelImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileDispatcherImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileKey.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOStatus.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOUtil.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_NativeThread.h
jdk/src/share/native/java/lang/System.c
jdk/src/share/native/java/lang/Thread.c
jdk/src/share/native/java/lang/Throwable.c
jdk/src/solaris/native/java/io/UnixFileSystem_md.c
jdk/src/solaris/native/java/lang/UNIXProcess_md.c
jdk/src/share/native/java/util/zip/zip_util.c
jdk/src/share/native/java/util/zip/zip_util.h

Change-Id: Ib237df4e1b7b5b4d9f12e74d189e6ec9eed3c31d