private ServerErrorCode errorForGet(String blobId, StoredBlob blob, GetRequest getRequest) {
    ServerErrorCode retCode = errorCodeForBlobs.getOrDefault(blobId, ServerErrorCode.NoError);
    if (blob == null) {
      retCode = ServerErrorCode.BlobNotFound;
    } else if (blob.isDeleted() && !getRequest.getGetOption().equals(GetOption.Include_All)
        && !getRequest.getGetOption().equals(GetOption.Include_Deleted_Blobs)) {
      retCode = ServerErrorCode.BlobDeleted;
    } else if (blob.hasExpired() && !getRequest.getGetOption().equals(GetOption.Include_All)
        && !getRequest.getGetOption().equals(GetOption.Include_Expired_Blobs)) {
      retCode = ServerErrorCode.BlobExpired;
    }
    return retCode;
  }
Make a {@link GetResponse} for the given {@link GetRequest} for which the given {@link ServerErrorCode} was
encountered. The request could be for BlobInfo or for Blob (the only two options that the router would request
for).
@param getRequest the {@link GetRequest} for which the response is being constructed.
@param getError the {@link ServerErrorCode} that was encountered.
@return the constructed {@link GetResponse}
@throws IOException if there was an error constructing the response.
ambry-router/src/test/java/com/github/ambry/router/MockServer.java