Overview
LUNI - java.lang, java.util, java.net and java.io
A module in the ClassLibrary.
Status
Check the component_development_status page for the status of other ClassLibrary modules.
JAPI Harmony/JDK5 Report - http://www.kaffe.org/~stuart/japi/htmlout/h-jdk15-harmony.html#pkg_java_lang
J2SE 1.4.2
Current code in classlib is assumed compliant with J2SE 1.4.2 specification.
Java 5.0
There is some support for new Java 5 APIs and enhancements. Below are some details about what's available, missing and in process.
java.lang
Primitive Wrapper Updates
There were only minor updates to the primitive wrapper classes for Java 5. The biggest addition is the 'valueOf' method to each class, which is generally used by compilers to facilitate boxing.
- Boolean (API: done, Test Case: done), references: http://issues.apache.org/jira/browse/HARMONY-179
- Byte (API: done, Test Case: done), references: http://issues.apache.org/jira/browse/HARMONY-180
- Short (API: done, Test Case: done), references: https://issues.apache.org/jira/browse/HARMONY-201
- Integer (API: done, Test Case: done), references: http://issues.apache.org/jira/browse/HARMONY-210
- Long (API: done, Test Case: done), references: http://issues.apache.org/jira/browse/HARMONY-214
- Float (API: done, Test Case: partial-done), references: http://issues.apache.org/jira/browse/HARMONY-239
- Double (API: done, Test Case: partial-done), references: http://issues.apache.org/jira/browse/HARMONY-244
- Character (API: partially complete, Test Case: partially complete)
- https://issues.apache.org/jira/browse/HARMONY-197 - Added basic code point support.
- Character.UnicodeBlock - Update complete; matches Java 5 specification.
- Unicode 4.0.0 (4.0.1?) support in process
- https://issues.apache.org/jira/browse/HARMONY-1418 - upgrade to 5.0.
- https://issues.apache.org/jira/browse/HARMONY-1436 - upgrade to 5.0.
All primitive wrapper objects have been uplifted to include the generics signatures; references: http://issues.apache.org/jira/browse/HARMONY-355, http://issues.apache.org/jira/browse/HARMONY-356, http://issues.apache.org/jira/browse/HARMONY-392.
NathanBeyer is working on these, if anyone's curious.
StringBuilder
Complete.
References:
- https://issues.apache.org/jira/browse/HARMONY-253
- https://issues.apache.org/jira/browse/HARMONY-348
- https://issues.apache.org/jira/browse/HARMONY-383
StringBuffer
Java 5 API methods complete.
References:
Math
Complete.
References:
- http://issues.apache.org/jira/browse/HARMONY-1388
- http://issues.apache.org/jira/browse/HARMONY-1415
- http://issues.apache.org/jira/browse/HARMONY-1438
- http://issues.apache.org/jira/browse/HARMONY-1449
StrictMath
Complete.
References:
- http://issues.apache.org/jira/browse/HARMONY-1388
- http://issues.apache.org/jira/browse/HARMONY-1415
- http://issues.apache.org/jira/browse/HARMONY-1438
- http://issues.apache.org/jira/browse/HARMONY-1449
java.util
New classes
Queue, AbstractQueue, PriorityQueue
Status: Completed
References:
https://issues.apache.org/jira/browse/HARMONY-478
https://issues.apache.org/jira/browse/HARMONY-559
Formatter
Status: Ongoing
Reference:
https://issues.apache.org/jira/browse/HARMONY-395
https://issues.apache.org/jira/browse/HARMONY-455
Scanner
Status: Ongoing
https://issues.apache.org/jira/browse/HARMONY-522
https://issues.apache.org/jira/browse/HARMONY-567
EnumMap
Status: Completed
Reference:
https://issues.apache.org/jira/browse/HARMONY-595 https://issues.apache.org/jira/browse/HARMONY-1203 https://issues.apache.org/jira/browse/HARMONY-1210 https://issues.apache.org/jira/browse/HARMONY-1220 https://issues.apache.org/jira/browse/HARMONY-1246 https://issues.apache.org/jira/browse/HARMONY-1250 https://issues.apache.org/jira/browse/HARMONY-1264 https://issues.apache.org/jira/browse/HARMONY-1277 https://issues.apache.org/jira/browse/HARMONY-1287 https://issues.apache.org/jira/browse/HARMONY-1341 https://issues.apache.org/jira/browse/HARMONY-1356
EnumSet
Status: Completed
Reference:
https://issues.apache.org/jira/browse/HARMONY-594 https://issues.apache.org/jira/browse/HARMONY-1211 https://issues.apache.org/jira/browse/HARMONY-1219 https://issues.apache.org/jira/browse/HARMONY-1239 https://issues.apache.org/jira/browse/HARMONY-1267 https://issues.apache.org/jira/browse/HARMONY-1288 https://issues.apache.org/jira/browse/HARMONY-1344 https://issues.apache.org/jira/browse/HARMONY-1387
UUID
Status: complete
Reference: http://issues.apache.org/jira/browse/HARMONY-426
Updated classes
Arrays
- https://issues.apache.org/jira/browse/HARMONY-294
- implement 1.5 methods deepHashCode, deepEquals, hashCode(*) Reference: http://issues.apache.org/jira/browse/HARMONY-533
Status: done
Collections
three kinds of new methods
- emptyXXX
2. checkedXXX 3. some algorithms implemenation, like disjoint, reverseOrder, etc
Status: ongoing
Reference: https://issues.apache.org/jira/browse/HARMONY-140 https://issues.apache.org/jira/browse/HARMONY-342
Calendar and GregorianCalendar
some new methods
Status: Welcome volunteer
LinkedList
implement interface Queue and its methods
Reference: http://issues.apache.org/jira/browse/HARMONY-494
Status: ongoing
Properties
XML support
Reference: http://issues.apache.org/jira/browse/HARMONY-563
Status: done
Timer
implement new constructors and purge()
Reference: http://issues.apache.org/jira/browse/HARMONY-553
Status: ongoing
Misc
- 14 new exceptions
- some accessories like FormattableFlags, Formatter.BigDecimalLayoutForm, etc
Status: API - done, Test - done
Reference:
https://issues.apache.org/jira/browse/HARMONY-306
https://issues.apache.org/jira/browse/HARMONY-326
https://issues.apache.org/jira/browse/HARMONY-384
java.net
Summary the gap between Harmony and Java 5 on java.net below.
New Classes in Java 5
- CacheRequest
- CacheResponse
- ResponseCache
- SecureCacheResponse
- Authenticator.RequestType
- Proxy.Type
- HttpRetryException
- CookieHandler
- Proxy
- ProxySelector
Status: Done
Reference:
http://issues.apache.org/jira/browse/HARMONY-215
http://issues.apache.org/jira/browse/HARMONY-223
Updated Classes in Java 5
Authenticator
Three new methods
Status: Done
Complexity: Novice
Reference:
https://issues.apache.org/jira/browse/HARMONY-323
HttpURLConnection
Add two fields and two methods
Status: Done
Complexity: Moderate
Reference:
https://issues.apache.org/jira/browse/HARMONY-328
Inet6Address
Four new methods
Status: Done
Complexity: Novice
Reference:
https://issues.apache.org/jira/browse/HARMONY-360
InetAddress
Add API of testing for the reachability
Status: Done
Complexity: Moderate
Reference:
https://issues.apache.org/jira/browse/HARMONY-327
InetSocketAddress
Add one method.
Status: Done
Reference: http://issues.apache.org/jira/browse/HARMONY-224
ServerSocket
Add support for performance preference
Status: Done
Complexity: Not sure yet
Reference: http://issues.apache.org/jira/browse/HARMONY-301
Socket
Improve support for proxy, add support for performance preference
Status: Done
Complexity: Moderate
Reference: http://issues.apache.org/jira/browse/HARMONY-301
SocketImpl
Add support for performance preference
Status: Done
Complexity: Not sure yet
Reference: http://issues.apache.org/jira/browse/HARMONY-301
URL
Improve support for proxy, add method to convert to URI
Status: Done
Complexity: Moderate
Reference: http://issues.apache.org/jira/browse/HARMONY-297
URLConnection
Improve support for timeout and cache
Status: Done
Complexity: Novice
Reference:
http://issues.apache.org/jira/browse/HARMONY-361
http://issues.apache.org/jira/browse/HARMONY-462
URLStreamHandler
Improve support for proxy
Status: Done
Complexity: Moderate
Reference: http://issues.apache.org/jira/browse/HARMONY-425
Serialization-test for java.net
Add serialization-test for java.net
Status: Done
Complexity: Novice
Reference: http://issues.apache.org/jira/browse/HARMONY-495
Richard Liang is working on the upgrade of java.net package, welcome others' help.
java.io
Summary the gap between Harmony and Java 5 on java.io below. Paulex Yang is working on this package, welcome other's help.
Support for format and printf
PrintStream and PrintWriter now support c style printf function, as well as similar format function, which should based on Java 5 new class java.util.Formatter.
Status: pending on java.util.Formatter, and welcome volunteer
Complexity: Hard
Interface Appendable is added to some classes
Affected classes include: PrintStream, Writer, PrintWriter, StringWriter, CharArrayWriter, etc.
Status: Done
Reference: http://issues.apache.org/jira/browse/HARMONY-230
Some other new interfaces added
Some classes are required to implement new interfaces, such as Closeable, Flushable, Readable, DataInput, DataOutput, etc. Affected classes include:
- InputStream
- OutputStream
- Reader
- Writer
- RandomAccessFile
Status: API - done, Test - done
Reference: http://issues.apache.org/jira/browse/HARMONY-231
Other minor changes
- ObjectStreamConstants add two constants
- PrintStream and PrintWriter add new constructors
- PushbackInputStream update the behavior of mark and reset method
Status: API - done, Test - done