From 6130ea89006aa8b4803ec5c68a9838d0863c59d1 Mon Sep 17 00:00:00 2001 From: sherman Date: Wed, 11 Sep 2013 11:29:57 -0700 Subject: [PATCH] 8024338: Constant fields introduced by JDK-4759491 fix in b94 are exposed as public fields in public API Summary: to move the new constants out of ZipConstants.java Reviewed-by: martin --- .../classes/java/util/zip/ZipConstants.java | 15 ------------- .../classes/java/util/zip/ZipConstants64.java | 21 +++++++++++++++++++ src/share/classes/java/util/zip/ZipEntry.java | 2 ++ 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/src/share/classes/java/util/zip/ZipConstants.java b/src/share/classes/java/util/zip/ZipConstants.java index c91c20ebe..ade50f32f 100644 --- a/src/share/classes/java/util/zip/ZipConstants.java +++ b/src/share/classes/java/util/zip/ZipConstants.java @@ -68,21 +68,6 @@ interface ZipConstants { static final int EXTSIZ = 8; // compressed size static final int EXTLEN = 12; // uncompressed size - /* - * Extra field header ID - */ - static final int EXTID_ZIP64 = 0x0001; // Zip64 - static final int EXTID_NTFS = 0x000a; // NTFS - static final int EXTID_UNIX = 0x000d; // UNIX - static final int EXTID_EXTT = 0x5455; // Info-ZIP Extended Timestamp - - /* - * EXTT timestamp flags - */ - static final int EXTT_FLAG_LMT = 0x1; // LastModifiedTime - static final int EXTT_FLAG_LAT = 0x2; // LastAccessTime - static final int EXTT_FLAT_CT = 0x4; // CreationTime - /* * Central directory (CEN) header field offsets */ diff --git a/src/share/classes/java/util/zip/ZipConstants64.java b/src/share/classes/java/util/zip/ZipConstants64.java index f1de2941e..d44d42ab1 100644 --- a/src/share/classes/java/util/zip/ZipConstants64.java +++ b/src/share/classes/java/util/zip/ZipConstants64.java @@ -80,5 +80,26 @@ class ZipConstants64 { // comment fields for this file must be // encoded using UTF-8. + /* + * Constants below are defined here (instead of in ZipConstants) + * to avoid being exposed as public fields of ZipFile, ZipEntry, + * ZipInputStream and ZipOutputstream. + */ + + /* + * Extra field header ID + */ + static final int EXTID_ZIP64 = 0x0001; // Zip64 + static final int EXTID_NTFS = 0x000a; // NTFS + static final int EXTID_UNIX = 0x000d; // UNIX + static final int EXTID_EXTT = 0x5455; // Info-ZIP Extended Timestamp + + /* + * EXTT timestamp flags + */ + static final int EXTT_FLAG_LMT = 0x1; // LastModifiedTime + static final int EXTT_FLAG_LAT = 0x2; // LastAccessTime + static final int EXTT_FLAT_CT = 0x4; // CreationTime + private ZipConstants64() {} } diff --git a/src/share/classes/java/util/zip/ZipEntry.java b/src/share/classes/java/util/zip/ZipEntry.java index c670f3689..3f958c488 100644 --- a/src/share/classes/java/util/zip/ZipEntry.java +++ b/src/share/classes/java/util/zip/ZipEntry.java @@ -30,6 +30,8 @@ import java.nio.file.attribute.FileTime; import java.util.Objects; import java.util.concurrent.TimeUnit; +import static java.util.zip.ZipConstants64.*; + /** * This class is used to represent a ZIP file entry. * -- GitLab