private void HandleRequest(GetRequest[] requests, GetResponse[] results, int i, IHttpContext context, IRavenHttpConfiguration ravenHttpConfiguration, MultiGetHttpContext[] contexts) { var request = requests[i]; if (request == null) return; server.HandleActualRequest(contexts[i]); results[i] = contexts[i].Complete(); }
private void HandleRequest(GetRequest[] requests, GetResponse[] results, int i, IHttpContext context, IRavenHttpConfiguration ravenHttpConfiguration) { var request = requests[i]; if (request == null) return; var ctx = new MultiGetHttpContext(ravenHttpConfiguration, context, request, TenantId); server.HandleActualRequest(ctx); results[i] = ctx.Complete(); }
private void HandleRequest(GetRequest[] requests, GetResponse[] results, int i, IHttpContext context, IRavenHttpConfiguration ravenHttpConfiguration) { var request = requests[i]; if (request == null) { return; } var ctx = new MultiGetHttpContext(ravenHttpConfiguration, context, request, TenantId); server.HandleActualRequest(ctx); results[i] = ctx.Complete(); }
public override void Respond(IHttpContext context) { var results = new List<GetResponse>(); var requests = context.ReadJsonObject<GetRequest[]>(); Database.TransactionalStorage.Batch(accessor => // ensure all queries are transactionally the same { foreach (var req in requests) { var ctx = new MultiGetHttpContext(Settings, context, req); server.HandleActualRequest(ctx); results.Add(ctx.Complete()); } }); context.WriteJson(results); }
private void HandleRequest(GetRequest[] requests, GetResponse[] results, int i, IHttpContext context, InMemoryRavenConfiguration ravenHttpConfiguration, MultiGetHttpContext[] contexts) { var request = requests[i]; if (request == null) return; ravenHttpConfiguration.ConcurrentMultiGetRequests.Wait(); try { server.HandleActualRequest(contexts[i]); } finally { ravenHttpConfiguration.ConcurrentMultiGetRequests.Release(); } results[i] = contexts[i].Complete(); }