grib/src/main/java/ucar/nc2/grib/collection/Grib1PartitionBuilderFromIndex.java
private PartitionCollectionMutable.Partition makePartition(GribCollectionProto.Partition proto) {
    long partitionDateMillisecs =  proto.getPartitionDate();
    CalendarDate partitionDate =  partitionDateMillisecs > 0 ? CalendarDate.of(partitionDateMillisecs) : null;
    return pc.addPartition(proto.getName(), proto.getFilename(), proto.getLastModified(), proto.getLength(), null, partitionDate);
  }
private PartitionCollectionMutable.Partition makePartition(GribCollectionProto.Partition proto) {
    long partitionDateMillisecs =  proto.getPartitionDate();
    CalendarDate partitionDate =  partitionDateMillisecs > 0 ? CalendarDate.of(partitionDateMillisecs) : null;
    return pc.addPartition(proto.getName(), proto.getFilename(), proto.getLastModified(), proto.getLength(), null, partitionDate);
  }
/*
message Partition {
required string name = 1;       // name is used in TDS - eg the subdirectory when generated by TimePartitionCollections
required string filename = 2;   // the gribCollection.ncx2 file
required string directory = 3;   // top directory
optional uint64 lastModified = 4;
}