From this code:
String in = "E5D552ED-03AB-4AFA-B484-0D2C4FD64432";
UUID uuid = UUID.fromString(in);
String out = uuid.toString();
I get this output:
> in: E5D552ED-03AB-4AFA-B484-0D2C4FD64432
> out: e5d552ed-03ab-4afa-b484-0d2c4fd64432
The issue is we use the String as the primary key on a row we insert into the DB before we create the UUID, and once it goes into the UUID we have an issue with getting back to that initial row since the DBMS is case-sensitive and we only have the UUID once it's created.
And I should have noted the input case is not consistently all upper or all lower. We work with a lot of vendors ... some send all caps, some all lower.
I'd rather not have to store an additional boolean on the side.