예제 #1
0
 /** Unregister the AppStatsProviders registered for this connection pool. */
 @Override
 public void unRegisterConnectionPool() {
   Iterator jdbcProviders = jdbcPoolAppStatsProviders.iterator();
   while (jdbcProviders.hasNext()) {
     JdbcConnPoolAppStatsProvider jdbcPoolAppStatsProvider =
         (JdbcConnPoolAppStatsProvider) jdbcProviders.next();
     StatsProviderManager.unregister(jdbcPoolAppStatsProvider);
   }
   jdbcPoolAppStatsProviders.clear();
 }
예제 #2
0
  /**
   * Unregister Jdbc Connection pool from the StatsProviderManager. Remove the pool lifecycle
   * listeners associated with this pool.
   *
   * @param poolInfo
   */
  @Override
  public void unregisterPool(PoolInfo poolInfo) {
    if (jdbcStatsProviders != null) {
      Iterator i = jdbcStatsProviders.iterator();
      while (i.hasNext()) {
        JdbcConnPoolStatsProvider jdbcPoolStatsProvider = (JdbcConnPoolStatsProvider) i.next();
        if (poolInfo.equals(jdbcPoolStatsProvider.getPoolInfo())) {
          // Get registry and unregister this pool from the registry
          PoolLifeCycleListenerRegistry poolRegistry = jdbcPoolStatsProvider.getPoolRegistry();
          poolRegistry.unRegisterPoolLifeCycleListener(poolInfo);
          StatsProviderManager.unregister(jdbcPoolStatsProvider);

          i.remove();
        }
      }
    }
    connectionPoolStatsProviderBootstrapProvider.get().postUnregisterPool(poolInfo);
  }