# Serialized Form

- ## Package org.apache.commons.dbcp2

  - ### Exception Class org.apache.commons.dbcp2.ListException

    class ListException extends Exception implements Serializable
    serialVersionUID:
      1L

    - #### Serialized Fields

      - ##### exceptionList

            List<Throwable> exceptionList

        A list of causes.

  - ### Exception Class org.apache.commons.dbcp2.SQLExceptionList

    class SQLExceptionList extends SQLException implements Serializable
    serialVersionUID:
      1L

    - #### Serialized Fields

      - ##### causeList

            List<? extends Throwable> causeList

        The list of causes.

- ## Package org.apache.commons.dbcp2.cpdsadapter

  - ### Class org.apache.commons.dbcp2.cpdsadapter.DriverAdapterCPDS

    class DriverAdapterCPDS extends Object implements Serializable
    serialVersionUID:
      -4820523787212147844L

    - #### Serialized Fields

      - ##### accessToUnderlyingConnectionAllowed

            boolean accessToUnderlyingConnectionAllowed

        Controls access to the underlying connection

      - ##### connectionProperties

            Properties connectionProperties

        Connection properties passed to JDBC Driver

      - ##### connectionString

            String connectionString

        Connection string

      - ##### description

            String description

        Description

      - ##### driver

            String driver

        Driver class name

      - ##### durationBetweenEvictionRuns

            Duration durationBetweenEvictionRuns

        PreparedStatement pool property defaults to `BaseObjectPoolConfig.DEFAULT_DURATION_BETWEEN_EVICTION_RUNS`.

      - ##### getConnectionCalled

            boolean getConnectionCalled

        Whether or not getConnection has been called

      - ##### loginTimeout

            int loginTimeout

        Login TimeOut in seconds

      - ##### maxIdle

            int maxIdle

        PreparedStatement pool property defaults to 10.

      - ##### maxPreparedStatements

            int maxPreparedStatements

        Maximum number of prepared statements, defaults to -1, meaning no limit.

      - ##### minEvictableIdleDuration

            Duration minEvictableIdleDuration

        PreparedStatement pool property defaults to `BaseObjectPoolConfig.DEFAULT_MIN_EVICTABLE_IDLE_DURATION`.

      - ##### numTestsPerEvictionRun

            int numTestsPerEvictionRun

        PreparedStatement pool property defaults to -1.

      - ##### poolPreparedStatements

            boolean poolPreparedStatements

        PreparedStatement pool property defaults to false.

      - ##### userName

            String userName

        User name

      - ##### userPassword

            char[] userPassword

        User password

- ## Package org.apache.commons.dbcp2.datasources

  - ### Class org.apache.commons.dbcp2.datasources.InstanceKeyDataSource

    class InstanceKeyDataSource extends Object implements Serializable
    serialVersionUID:
      -6819270431752240878L

    - #### Serialized Fields

      - ##### dataSource

            ConnectionPoolDataSource dataSource

        Underlying source of PooledConnections

      - ##### dataSourceName

            String dataSourceName

        DataSource Name used to find the ConnectionPoolDataSource

      - ##### defaultAutoCommit

            Boolean defaultAutoCommit

        Connection property defaults to false.

      - ##### defaultBlockWhenExhausted

            boolean defaultBlockWhenExhausted

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_BLOCK_WHEN_EXHAUSTED`.

      - ##### defaultDurationBetweenEvictionRuns

            Duration defaultDurationBetweenEvictionRuns

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_DURATION_BETWEEN_EVICTION_RUNS`.

      - ##### defaultEvictionPolicyClassName

            String defaultEvictionPolicyClassName

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_EVICTION_POLICY_CLASS_NAME`.

      - ##### defaultLifo

            boolean defaultLifo

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_LIFO`.

      - ##### defaultMaxIdle

            int defaultMaxIdle

        Pool property defaults to `GenericKeyedObjectPoolConfig.DEFAULT_MAX_IDLE_PER_KEY`.

      - ##### defaultMaxTotal

            int defaultMaxTotal

        Pool property defaults to `GenericKeyedObjectPoolConfig.DEFAULT_MAX_TOTAL`.

      - ##### defaultMaxWaitDuration

            Duration defaultMaxWaitDuration

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_MAX_WAIT`.

      - ##### defaultMinEvictableIdleDuration

            Duration defaultMinEvictableIdleDuration

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_MIN_EVICTABLE_IDLE_DURATION`.

      - ##### defaultMinIdle

            int defaultMinIdle

        Pool property defaults to `GenericKeyedObjectPoolConfig.DEFAULT_MIN_IDLE_PER_KEY`.

      - ##### defaultNumTestsPerEvictionRun

            int defaultNumTestsPerEvictionRun

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_NUM_TESTS_PER_EVICTION_RUN`.

      - ##### defaultReadOnly

            Boolean defaultReadOnly

        Connection property defaults to false.

      - ##### defaultSoftMinEvictableIdleDuration

            Duration defaultSoftMinEvictableIdleDuration

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_SOFT_MIN_EVICTABLE_IDLE_DURATION`.

      - ##### defaultTestOnBorrow

            boolean defaultTestOnBorrow

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_TEST_ON_BORROW`.

      - ##### defaultTestOnCreate

            boolean defaultTestOnCreate

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_TEST_ON_CREATE`.

      - ##### defaultTestOnReturn

            boolean defaultTestOnReturn

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_TEST_ON_RETURN`.

      - ##### defaultTestWhileIdle

            boolean defaultTestWhileIdle

        Pool property defaults to `BaseObjectPoolConfig.DEFAULT_TEST_WHILE_IDLE`.

      - ##### defaultTransactionIsolation

            int defaultTransactionIsolation

        Connection property defaults to `InstanceKeyDataSource.UNKNOWN_TRANSACTIONISOLATION`.

      - ##### description

            String description

        Description

      - ##### getConnectionCalled

            boolean getConnectionCalled

        Guards property setters - once true, setters throw IllegalStateException

      - ##### instanceKey

            String instanceKey

        Instance key

      - ##### jndiEnvironment

            Properties jndiEnvironment

        Environment that may be used to set up a JNDI initial context.

      - ##### loginTimeoutDuration

            Duration loginTimeoutDuration

        Login Timeout

      - ##### logWriter

            PrintWriter logWriter

        Log stream

      - ##### maxConnDuration

            Duration maxConnDuration

        Connection factory property defaults to -1 milliseconds.

      - ##### rollbackAfterValidation

            boolean rollbackAfterValidation

        Connection factory property defaults to false.

      - ##### validationQuery

            String validationQuery

        Connection factory property defaults to null.

      - ##### validationQueryTimeoutDuration

            Duration validationQueryTimeoutDuration

        Connection factory property defaults to -1 seconds.

  - ### Class org.apache.commons.dbcp2.datasources.PerUserPoolDataSource

    class PerUserPoolDataSource extends InstanceKeyDataSource implements Serializable
    serialVersionUID:
      7872747993848065028L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an instance from an ObjectInputStream.
        Parameters:
          `in` - The source ObjectInputStream.
        Throws:
          `IOException` - Any of the usual Input/Output related exceptions.
          `ClassNotFoundException` - A class of a serialized object cannot be found.

    - #### Serialized Fields

      - ##### perUserBlockWhenExhausted

            Map<String,Boolean> perUserBlockWhenExhausted

        Maps user names to a data source property: BlockWhenExhausted.

      - ##### perUserDefaultAutoCommit

            Map<String,Boolean> perUserDefaultAutoCommit

        Maps user names to a data source property: DefaultAutoCommit.

      - ##### perUserDefaultReadOnly

            Map<String,Boolean> perUserDefaultReadOnly

        Maps user names to a data source property: DefaultReadOnly.

      - ##### perUserDefaultTransactionIsolation

            Map<String,Integer> perUserDefaultTransactionIsolation

        Maps user names to a data source property: DefaultTransactionIsolation.

      - ##### perUserDurationBetweenEvictionRuns

            Map<String,Duration> perUserDurationBetweenEvictionRuns

        Maps user names to a data source property: DurationBetweenEvictionRuns.

      - ##### perUserEvictionPolicyClassName

            Map<String,String> perUserEvictionPolicyClassName

        Maps user names to a data source property: EvictionPolicyClassName.

      - ##### perUserLifo

            Map<String,Boolean> perUserLifo

        Maps user names to a data source property: Lifo.

      - ##### perUserMaxIdle

            Map<String,Integer> perUserMaxIdle

        Maps user names to a data source property: MaxIdle.

      - ##### perUserMaxTotal

            Map<String,Integer> perUserMaxTotal

        Maps user names to a data source property: MaxTotal.

      - ##### perUserMaxWaitDuration

            Map<String,Duration> perUserMaxWaitDuration

        Maps user names to a data source property: MaxWaitDuration.

      - ##### perUserMinEvictableIdleDuration

            Map<String,Duration> perUserMinEvictableIdleDuration

        Maps user names to a data source property: MinEvictableIdleDuration.

      - ##### perUserMinIdle

            Map<String,Integer> perUserMinIdle

        Maps user names to a data source property: MinIdle.

      - ##### perUserNumTestsPerEvictionRun

            Map<String,Integer> perUserNumTestsPerEvictionRun

        Maps user names to a data source property: NumTestsPerEvictionRun.

      - ##### perUserSoftMinEvictableIdleDuration

            Map<String,Duration> perUserSoftMinEvictableIdleDuration

        Maps user names to a data source property: SoftMinEvictableIdleDuration.

      - ##### perUserTestOnBorrow

            Map<String,Boolean> perUserTestOnBorrow

        Maps user names to a data source property: TestOnBorrow.

      - ##### perUserTestOnCreate

            Map<String,Boolean> perUserTestOnCreate

        Maps user names to a data source property: TestOnCreate.

      - ##### perUserTestOnReturn

            Map<String,Boolean> perUserTestOnReturn

        Maps user names to a data source property: TestOnReturn.

      - ##### perUserTestWhileIdle

            Map<String,Boolean> perUserTestWhileIdle

        Maps user names to a data source property: TestWhileIdle.

  - ### Class org.apache.commons.dbcp2.datasources.SharedPoolDataSource

    class SharedPoolDataSource extends InstanceKeyDataSource implements Serializable
    serialVersionUID:
      -1458539734480586454L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an instance from an ObjectInputStream.
        Parameters:
          `in` - The source ObjectInputStream.
        Throws:
          `IOException` - Any of the usual Input/Output related exceptions.
          `ClassNotFoundException` - A class of a serialized object cannot be found.

    - #### Serialized Fields

      - ##### maxTotal

            int maxTotal

        Max total defaults to `GenericKeyedObjectPoolConfig.DEFAULT_MAX_TOTAL`.