Class Pool

    • Constructor Detail

      • Pool

        public Pool​(UrlParser urlParser,
                    int poolIndex,
                    ScheduledThreadPoolExecutor poolExecutor)
        Create pool from configuration.
        Parameters:
        urlParser - configuration parser
        poolIndex - pool index to permit distinction of thread name
        poolExecutor - pools common executor
    • Method Detail

      • getConnection

        public MariaDbConnection getConnection()
                                        throws SQLException
        Retrieve new connection. If possible return idle connection, if not, stack connection query, ask for a connection creation, and loop until a connection become idle / a new connection is created.
        Returns:
        a connection object
        Throws:
        SQLException - if no connection is created when reaching timeout (connectTimeout option)
      • getConnection

        public MariaDbConnection getConnection​(String username,
                                               String password)
                                        throws SQLException
        Get new connection from pool if user and password correspond to pool. If username and password are different from pool, will return a dedicated connection.
        Parameters:
        username - username
        password - password
        Returns:
        connection
        Throws:
        SQLException - if any error occur during connection
      • getUrlParser

        public UrlParser getUrlParser()
      • getPoolTag

        public String getPoolTag()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • testGetConnectionIdleThreadIds

        public List<Long> testGetConnectionIdleThreadIds()
        For testing purpose only.
        Returns:
        current thread id's
      • resetStaticGlobal

        public void resetStaticGlobal()
        JMX method to remove state (will be reinitialized on next connection creation).
        Specified by:
        resetStaticGlobal in interface PoolMBean