/**
  * Creates a new {@link AbstractGenericHandler} with a custom queue.
  *
  * @param endpoint the endpoint reference.
  * @param responseBuffer the response buffer.
  * @param queue the queue.
  */
 protected AbstractGenericHandler(
     final AbstractEndpoint endpoint,
     final EventSink<ResponseEvent> responseBuffer,
     final Queue<REQUEST> queue,
     final boolean isTransient) {
   this.endpoint = endpoint;
   this.responseBuffer = responseBuffer;
   this.sentRequestQueue = queue;
   this.currentDecodingState = DecodingState.INITIAL;
   this.isTransient = isTransient;
   this.traceEnabled = LOGGER.isTraceEnabled();
   this.sentRequestTimings = new ArrayDeque<Long>();
 }