/// <summary>
 /// Initializes a new instance of the <see cref="AsyncElasticsearchProjector"/> class.
 /// </summary>
 /// <param name="handlers">The handlers.</param>
 /// <exception cref="System.ArgumentNullException">Thrown when <paramref name="handlers"/> is <c>null</c>.</exception>
 public AsyncElasticsearchProjector(ElasticsearchProjectionHandler[] handlers)
 {
     if (handlers == null) throw new ArgumentNullException("handlers");
     _handlers = handlers.
         GroupBy(handler => handler.Message).
         ToDictionary(@group => @group.Key, @group => @group.ToArray());
 }