Description
The extra field doesn't do anything useful unless you call setFlags explicitly. This is non-obviuos and not really documented well. The fact that the *_TIME_BIT constants are package private doesn't help either.
IMHO the constants should be public, the time field setters should set their corresponding flags implicitly when invoked with non-null values (rest when invoked with null values, perhaps) and the documentation clarified.