JDK 14 RFR of JDK-8229997: Apply java.io.Serial annotations in java.base
Roger Riggs
Roger.Riggs at oracle.com
Wed Aug 28 16:40:26 UTC 2019
Hi Joe,
Looks fine,
Roger
On 8/27/19 9:28 PM, Joe Darcy wrote:
> Hello,
>
> Recent work for JDK-8202385: "Annotation to mark serial-related fields
> and methods" added the java.io.Serial annotation type to the platform.
> The intention of this new annotation type is to allow
> serialization-related fields and methods to be marked as documentation
> and to allow stricter compile-time checking, analogous to the checking
> done for @Override. Implementing those stricter serialization-related
> checks will be done under JDK-8202056.
>
> Please review the application of java.io.Serial to types in the base
> module other than security types:
>
> JDK-8229997: Apply java.io.Serial annotations in java.base
> http://cr.openjdk.java.net/~darcy/8229997.0/
>
> (Security-related types in the base module are being handled under
> JDK-8229999.)
>
> As a reminder, the 5 serialization-related methods and 2 fields are:
>
> * private void writeObject(java.io.ObjectOutputStream stream)
> throws IOException
> * private void readObject(java.io.ObjectInputStream stream) throws
> IOException, ClassNotFoundException
> * private void readObjectNoData() throws ObjectStreamException
> * ANY-ACCESS-MODIFIER Object writeReplace() throws
> ObjectStreamException
> * ANY-ACCESS-MODIFIER Object readResolve() throws
> ObjectStreamException
> * private static final ObjectStreamField[] serialPersistentFields
> * private static final long serialVersionUID
>
> Due to the separate source code management policies for
> java.util.concurrent, I did not include that package in this exercise.
> Likewise, applying the annotation to some of the time-zone related
> files caused build failures so I excluded those types as well.
>
>
> Thanks,
>
> -Joe
>
More information about the core-libs-dev
mailing list