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
|
c5b84fc0e3e3864d63717824a3195d04496d59fb |
|
20-Apr-2016 |
Shubham Ajmera <shubhamajmera@google.com> |
Patch differences in classes taken from older OpenJDK version Few of the classes were found to have taken from OpenJDK b132, and OpenJDK 8u60 includes few fixes to those classes. Some of the changes were ignored which included change in sort methods for List and Collections due to the behavioral changes. Bug: 28239805 Change-Id: I20841bbd53e22e4f0a6b786df21d30d96ba102ab
|
f0d9b8aea94c2a207b7b71faaa7a8a2f78ddf1ea |
|
20-Apr-2016 |
Shubham Ajmera <shubhamajmera@google.com> |
Add missed overrides for OpenJDK 8 Map default methods Both the replace methods in TreeMap were left intentionally in the commit 0e83756c4295f4df3853047205d94fe845573522 as there were no behavioral differences and the default implementation was considered sufficient. However, the upstream version is more efficient so that is being added here. As of now, all the overrides for the Map default implementation have been put from the upstream, except for Hashtable and HashMap. Both of these classes are quite different from their OpenJDK 8 versions to accommodate the overrides. HashMap depends on the default implementation for the following methods: #getOrDefault #replace(K, V) #computeIfAbsent #computeIfPresent #compute #merge #replace(K, V, V) was reimplemented due to the behavioral differences with the default implementation. The following Hashtable methods are also dependent on the map default implementation, though, they have added synchronization. #getOrDefault #putIfAbsent #remove #replace(K, V, V) #replace(K, V) #computeIfAbsent #computeIfPresent #compute Once the classes get ready with the new changes comes with OpenJDK 8, the above methods would be put in. Bug: 27426743 Change-Id: Iee4fb156eddee17187386bbfffc8517415030a94
|
ed47d30308588e419164d9311a41b04b8eefa04c |
|
18-Mar-2016 |
Shubham Ajmera <shubhamajmera@google.com> |
Add OpenJDK 8 java.util.List Default Methods and corresponding tests. Added replaceAll and sort methods from the upstream except for the CopyOnWriteArrayList. Added forEach method along with the above two methods in CopyOnWriteArrayList. Bug: 27693350 Bug: 27540008 (cherry-picked from commit 67b8c3f1414bf04e53c094b951c8ea7903998d90) Change-Id: Id32df836e79bee614c0dce8c61dbc7b06731265d
|
0e83756c4295f4df3853047205d94fe845573522 |
|
08-Mar-2016 |
Shubham Ajmera <shubhamajmera@google.com> |
Port OpenJDK8 changes in java.util.Map & add tests. The CL add tests for map default methods added in Java 8 - getOrDefault, putIfAbsent, remove(K, V), replace(K, V, V), replace(K, V), forEach, replaceAll, compute, computeIfAbsent, computeIfPresent, putIfAbsent, merge. Methods have been made synchronzed in Hashtable. They are using the default map methods instead of taking the upstream changes. Replace(K, V, V) in LinkedHashMap has been overridden as it doesn't record access when the replace method doesn't make any replacement. Bug: 27426743 (cherry-picked from commit 88f1a4f0b1efb746419672919654c285ce44fbc5) Change-Id: Ifb2130698dd0ed42acc5c0f429496eebb444e21c
|
afb915f530aae2342fd3fd92af3446682a819d10 |
|
18-Mar-2016 |
Przemyslaw Szczepaniak <pszczepaniak@google.com> |
Add missing #(stream|parallelStream|spliterator) in Collections Bug: 27692239 Bug: 27605529 (cherry-picked from commit a35b0ab4eda2135596e4194cc63f7150396d9aa9) Change-Id: I10c20ff4a20e0ad1c2769c275de7dffaa7ba9543
|
def94956afbfc17ea65390d16d032f9b790a5dca |
|
18-Mar-2016 |
Narayan Kamath <narayan@google.com> |
Spliterators: pull in additional specializations. This change also pulls in a few javadoc improvements to Collections to make our lives easier. bug: 27605529 (cherry picked from commit c86e0fa98d8274d7ea01213a20e3a14575406dd0) Change-Id: I97f05ae833034f1e5a7d32329f8e19de6b97e779
|
5c35c7ebda68cc39b6bdee20f678a150336ebd1d |
|
14-Mar-2016 |
Yi Kong <yikong@google.com> |
Port java.util.Collection.removeIf from OpenJDK8 Source code is taken from jdk8u60. Bug: 27538943 Change-Id: I485c024f87871e33d2f455be9807775601af77ee (cherry picked from commit d41ca4a76ea570f9dd89a7ae56410cc75cc0a856)
|
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
|
a8da445cdc91374ed0e105686feefd7e8ed79dc1 |
|
04-Mar-2016 |
Yi Kong <yikong@google.com> |
Port java.util.Comparator{,s} from OpenJDK8 Also adds tests for java.util.Comparator API. Source files are taken from jdk8u60. Bug: 27427010 Change-Id: Id71eb7fa92c28720c13da8fd0f5f193151b6a43d (cherry picked from commit f121f31fd91c5a557225cd6a97418e716529eb2d)
|
f121f31fd91c5a557225cd6a97418e716529eb2d |
|
04-Mar-2016 |
Yi Kong <yikong@google.com> |
Port java.util.Comparator{,s} from OpenJDK8 Also adds tests for java.util.Comparator API. Source files are taken from jdk8u60. Bug: 27427010 Change-Id: Id71eb7fa92c28720c13da8fd0f5f193151b6a43d
|
3984cdba314a0f7b0587000dec99ff26fd9bcbb5 |
|
02-Mar-2016 |
Narayan Kamath <narayan@google.com> |
Add Iterator.forEachRemaining / Iterator.remove. Also pulls in various specializations from concrete subclasses. bug: 27426688 (cherry picked from commit e633814ad4dc6c7dc0c34080292c2c9622cbd5a3) Change-Id: Ic778fb61768ec2495e1ac17029afbdfd97d5e6db
|
e633814ad4dc6c7dc0c34080292c2c9622cbd5a3 |
|
02-Mar-2016 |
Narayan Kamath <narayan@google.com> |
Add Iterator.forEachRemaining / Iterator.remove. Also pulls in various specializations from concrete subclasses. bug: 27426688 Change-Id: I4d37bb61973447b5621fc2b389a04d40666a941d
|
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
|
92ac90f13cae6440eedd87085a43c3c8e58ddf9d |
|
28-Sep-2015 |
Przemyslaw Szczepaniak <pszczepaniak@google.com> |
Rename generic type parameter. The difference causes a bogus build breakage because doclava can't deal with the change. Change-Id: Icddc4f39c062ee107df0ef053a8ac5cad8f54f45
|
bfb2104abe17ff11c4ec474af12fc7543e881f40 |
|
14-Oct-2015 |
Narayan Kamath <narayan@google.com> |
Collections: Remove bogus test-case and optimize sort. As inconsistent as it might sound, ArrayList modCounts are not incremented during #set (and by extension #sort). While we're here, also add a zero-copy path for sorting an arraylist, where we can directly sort the underlying array. (cherry picked from commit 4df84db413a76f7aac059942e34934a9d4ae6373) Change-Id: I6588ecdb6555bb39a441e1bb8368825de7029385
|
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
|