JDK-8144479 : Remove character coders from sun.misc
  • Type: Sub-task
  • Component: core-libs
  • Affected Version: 9
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2015-12-02
  • Updated: 2016-03-25
  • Resolved: 2015-12-16
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b99Fixed
Related Reports
Blocks :  
Blocks :  
Relates :  
Relates :  
Description
As part of the preparation for JEP 260 [1], and the cleanup of technical debt in
sun.misc, I am proposing to remove the character coders.

Base abstract classes for the coders.
 $ hg rm src/java.base/share/classes/sun/misc/CharacterEncoder.java 
 $ hg rm src/java.base/share/classes/sun/misc/CharacterDecoder.java

Base64, replaced with standard API in Java SE 8 [2]. 
 $ hg rm src/java.base/share/classes/sun/misc/BASE64Decoder.java
 $ hg rm src/java.base/share/classes/sun/misc/BASE64Encoder.java

Uuencoding [3], most recently seen in use back in 2006 in ant 1.6.5, before
being replaced in 1.7.0 with their own copy.
 $ hg rm src/java.base/share/classes/sun/misc/UUDecoder.java
 $ hg rm src/java.base/share/classes/sun/misc/UUEncoder.java

Lesser known coders designed to convert binary data into printable characters.
The characters are assumed to exist, but they are not assumed to be ASCII.
No sightings in the wild!
 $ hg rm src/java.base/share/classes/sun/misc/UCDecoder.java 
 $ hg rm src/java.base/share/classes/sun/misc/UCEncoder.java

Related tests:
 $ hg rm test/sun/misc/Encode/
 removing test/sun/misc/Encode/DecodeBuffer.java 
 removing test/sun/misc/Encode/Encode.java
 removing test/sun/misc/Encode/GetBytes.java

[1] https://bugs.openjdk.java.net/browse/JDK-8132928
[2] http://docs.oracle.com/javase/8/docs/api/java/util/Base64.html
[3] https://en.wikipedia.org/wiki/Uuencoding