private void put(FilterContext ctx){
  if (contexts.size() <= MAX_CONTEXTS) {
    contexts.offer(ctx);
  }
}

private void put ( FilterContext ctx ) { if ( contexts . size ( ) <= MAX_CONTEXTS ) { contexts . offer ( ctx ) ; } }
adds a context instance to the pool in order to reuse it if needed
