public static CompositeBlobInfo deserializeMetadataContentRecord(DataInputStream stream,
        StoreKeyFactory storeKeyFactory) throws IOException {
      List<StoreKey> keys = new ArrayList<StoreKey>();
      int chunkSize = stream.readInt();
      long totalSize = stream.readLong();
      long numberOfKeys = (totalSize + chunkSize - 1) / chunkSize;
      for (int i = 0; i < numberOfKeys; i++) {
        StoreKey storeKey = storeKeyFactory.getStoreKey(stream);
        keys.add(storeKey);
      }
      return new CompositeBlobInfo(chunkSize, totalSize, keys);
    }
Deserialize a metadata content record from a stream.
@param stream The stream to read the serialized record from.
@param storeKeyFactory The factory to use for parsing keys in the serialized metadata content record.
@return A {@link CompositeBlobInfo} object with the chunk size and list of keys from the record.
@throws IOException if stream data is not in correct format.
ambry-messageformat/src/main/java/com/github/ambry/messageformat/MessageFormatRecord.java