> Made byte constructor public and changed the length assertion to an > `IllegalArgumentException`, added a `getBytes` method that allows users to > retrieve the raw bytes of the UUID, and created a new private constructor > with an optimized construction for byte arrays that can set the version as > desired and the variant to RFC 4122. Also changed the existing static factory > methods to use the new constructor and removed the duplicate code from them > where the variant and version is being set. > > Report > [5023614](https://bugs.java.com/bugdatabase/view_bug.do?bug_id=5023614) asks > for more than what I provided and with different names. However, I believe > that there is no value in providing methods to deal with `DataInput` and > `DataOutput` because they would only encapsulate single method calls that the > caller can directly write as well (e.g. `output.write(uuid.getBytes())` vs > `uuid.write(output)`). Hence, I consider this change to satisfy the feature > request.
Richard Fussenegger has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision: 5023614: UUID needs methods to get most/leastSigBits and write to DataOutput Made byte constructor public and changed the length assertion to an `IllegalArgumentException`, added a `getBytes` method that allows users to retrieve the raw bytes of the UUID, and created a new private constructor with an optimized construction for byte arrays that can set the version as desired and the variant to RFC 4122. Also changed the existing static factory methods to use the new constructor and removed the duplicate code from them where the variant and version is being set. Report [5023614](https://bugs.java.com/bugdatabase/view_bug.do?bug_id=5023614) asks for more than what I provided and with different names. However, I believe that there is no value in providing methods to deal with `DataInput` and `DataOutput` because they would only encapsulate single method calls that the caller can directly write as well (e.g. `output.write(uuid.getBytes())` vs `uuid.write(output)`). Hence, I consider this change to satisfy the feature request. ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/1465/files - new: https://git.openjdk.java.net/jdk/pull/1465/files/6813023d..a987234d Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1465&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1465&range=01-02 Stats: 103 lines in 1 file changed: 62 ins; 22 del; 19 mod Patch: https://git.openjdk.java.net/jdk/pull/1465.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/1465/head:pull/1465 PR: https://git.openjdk.java.net/jdk/pull/1465
