Updated Java types according to new design

Reviewer: @andi-bigswitch 

There are a few // TODOs and // FIXMEs to take care of but they do not block anything