internal override IDisposable CreateRequestHandlerScopeScope(RequestHandler requestHandler) { RequestHandlerScope requestHandlerScope = new RequestHandlerScope(requestHandler); this.ContextList.Add(requestHandlerScope); return(requestHandlerScope); }
private static void ValidateRequestHandlerScope(RequestHandlerScope scope, TimeSpan?totalElapsedTime) { Assert.IsFalse(string.IsNullOrWhiteSpace(scope.Id)); Assert.IsTrue(scope.TryGetTotalElapsedTime(out TimeSpan scopeTotalElapsedTime)); Assert.IsTrue(scopeTotalElapsedTime > TimeSpan.Zero); if (totalElapsedTime.HasValue) { Assert.IsTrue( scopeTotalElapsedTime <= totalElapsedTime, $"RequestHandlerScope should not have larger time than the entire context. Scope: {scopeTotalElapsedTime} Total: {totalElapsedTime.Value}"); } string info = scope.ToString(); Assert.IsNotNull(info); JObject jObject = JObject.Parse(info.ToString()); Assert.IsNotNull(jObject["Id"].ToString()); string elapsedTimeFromJson = jObject["HandlerElapsedTimeInMs"].ToString(); Assert.IsNotNull(elapsedTimeFromJson); double elapsedInMs = double.Parse(elapsedTimeFromJson); Assert.IsTrue(elapsedInMs > 0); }
public abstract TResult Visit(RequestHandlerScope requestHandlerScope);
public override void Visit(RequestHandlerScope requestHandlerScope) { Assert.IsTrue(this.isContextVisited); this.isRequestHandlerVisited = true; DiagnosticValidator.ValidateRequestHandlerScope(requestHandlerScope, this.TotalElapsedTime); }
public override void Visit(RequestHandlerScope requestHandlerScope) { // This will be visited if it is gateway query plan }
public abstract void Visit(RequestHandlerScope requestHandlerScope);