@Override
    public void visit(UndeleteRequest undeleteRequest) {
      metrics.undeleteBlobRequestQueueTimeInMs.update(requestQueueTime);
      metrics.undeleteBlobRequestRate.mark();
      metrics.undeleteBlobProcessingTimeInMs.update(requestProcessingTime);
      responseQueueTimeHistogram = metrics.undeleteBlobResponseQueueTimeInMs;
      responseSendTimeHistogram = metrics.undeleteBlobSendTimeInMs;
      requestTotalTimeHistogram = metrics.undeleteBlobTotalTimeInMs;
      if (isRequestDropped) {
        metrics.undeleteBlobDroppedRate.mark();
        metrics.totalRequestDroppedRate.mark();
      }
    }
Used to update common metrics for the incoming request.
ambry-server/src/main/java/com/github/ambry/server/AmbryRequests.java