user.setId(1);
user.setName("John");
user.setSurname("Batman");
user.setGender(User.Gender.MALE);
user.setAccountIds(Arrays.asList(1, 3));
user.setAddresses(Collections.singletonList(new Address("Old Street", "XYZ42")));
byte[] bytes = ProtobufUtil.toByteArray(ctx, user);
ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
CodedInputStream codedInputStream = CodedInputStream.newInstance(bais);