boolean saveMetadata() {
    boolean putResult = false;
    if (firstChunk.shouldSaveMetadata()) {
      BlobMetadata blobMetadata = new BlobMetadata(blobId.toString(), blobInfo, compositeBlobInfo);
      putResult = blobMetadataCache.putObject(blobMetadata.getBlobId(), blobMetadata);
      logger.debug("[{}] Issued save-metadata for blobId = {}, result = {}", blobMetadata.getBlobId(), blobId,
          putResult);
    }
    return putResult;
  }
Conditionally saves blob metadata for composite blobs
@return True if metadata was saved successfully, else False.
ambry-router/src/main/java/com/github/ambry/router/GetBlobOperation.java