public void dump ( Printer printer , boolean verbose ) { Printer indentedPrinter = printer ; synchronized ( mLock ) { printer . println ( "Connection pool for " + mConfiguration . path + ":" ) ; printer . println ( " Open: " + mIsOpen ) ; printer . println ( " Max connections: " + mMaxConnectionPoolSize ) ; printer . println ( " Available primary connection:" ) ; if ( mAvailablePrimaryConnection != null ) { mAvailablePrimaryConnection . dump ( indentedPrinter , verbose ) ; } else { indentedPrinter . println ( "<none>" ) ; } printer . println ( " Available non-primary connections:" ) ; if ( ! mAvailableNonPrimaryConnections . isEmpty ( ) ) { final int count = mAvailableNonPrimaryConnections . size ( ) ; for ( int i = 0 ; i < count ; i ++ ) { mAvailableNonPrimaryConnections . get ( i ) . dump ( indentedPrinter , verbose ) ; } } else { indentedPrinter . println ( "<none>" ) ; } printer . println ( " Acquired connections:" ) ; if ( ! mAcquiredConnections . isEmpty ( ) ) { for ( Map . Entry < SQLiteConnection , AcquiredConnectionStatus > entry : mAcquiredConnections . entrySet ( ) ) { final SQLiteConnection connection = entry . getKey ( ) ; connection . dumpUnsafe ( indentedPrinter , verbose ) ; indentedPrinter . println ( " Status: " + entry . getValue ( ) ) ; } } else { indentedPrinter . println ( "<none>" ) ; } printer . println ( " Connection waiters:" ) ; if ( mConnectionWaiterQueue != null ) { int i = 0 ; final long now = SystemClock . uptimeMillis ( ) ; for ( ConnectionWaiter waiter = mConnectionWaiterQueue ; waiter != null ; waiter = waiter . mNext , i ++ ) { indentedPrinter . println ( i + ": waited for " + ( ( now - waiter . mStartTime ) * 0.001f ) + " ms - thread=" + waiter . mThread + ", priority=" + waiter . mPriority + ", sql='" + waiter . mSql + "'" ) ; } } else { indentedPrinter . println ( "<none>" ) ; } } }
Dumps debugging information about this connection pool .