a simple trick to read and write the object through protobuff, is to create an additional wrapper .proto
syntax = "proto3";option java_package = "models";message Model{
int64 id =1;
string name =2;
}
then wrap it
message Models {
repeated Model models = 1;
}
then instead of read and write the objects one by one through java stream. it could be read and write in one go through Models.
ModelsClass.Models models = ModelsClass.Models.newBuilder().mergeFrom(fileInputStream).build();models.writeTo(fileOutputStream);