public T acquire() {
    if (closed) {
      throw new IllegalStateException("pool closed");
    }

    T reference = pool.poll();
    if (reference == null) {
      reference = factory.createReference(this);
    }
    reference.acquire();
    return reference;
  }
public T acquire ( ) { if ( closed ) { throw new IllegalStateException ( "pool closed" ) ; } T reference = pool . poll ( ) ; if ( reference == null ) { reference = factory . createReference ( this ) ; } reference . acquire ( ) ; return reference ; }
Acquires a reference.

@return The acquired reference.