List of usage examples for org.apache.commons.pool2.impl GenericKeyedObjectPool GenericKeyedObjectPool
public GenericKeyedObjectPool(KeyedPooledObjectFactory<K, T> factory, GenericKeyedObjectPoolConfig config)
GenericKeyedObjectPool
using a specific configuration. From source file:com.vmware.identity.idm.server.provider.LdapConnectionPool.java
private LdapConnectionPool() { String systemTenant = IdmServerConfig.getInstance().getDirectoryConfigStoreDomain().toLowerCase(); GenericKeyedObjectPool<PooledLdapConnectionIdentity, ILdapConnectionEx> systemTenantPool = new GenericKeyedObjectPool<>( new PooledLdapConnectionFactory(), getGenericKeyedObjectPoolConfig(systemTenant)); this.poolMap = new ConcurrentHashMap<>(); this.poolMap.put(systemTenant, systemTenantPool); }
From source file:com.zxy.commons.pool.keyedpool.KeyedPool.java
/** * /*from ww w. ja v a2 s . c o m*/ * * @param factory factory * @param config config */ public KeyedPool(KeyedPooledObjectFactory<K, V> factory, GenericKeyedObjectPoolConfig config) { this.internalPool = new GenericKeyedObjectPool<>(factory, config); }
From source file:net.sheehantech.cherry.pool.KeyedPooledPushClient.java
@Override public void init() throws ConnectionFailedException { GenericKeyedObjectPoolConfig config = new GenericKeyedObjectPoolConfig(); if (maxTotal != null) config.setMaxTotalPerKey(maxTotal); if (maxIdle != null) config.setMaxIdlePerKey(maxIdle); if (minIdle != null) config.setMinIdlePerKey(minIdle); config.setTestOnBorrow(true);//from w w w. ja va 2s .c o m config.setTestWhileIdle(true); config.setBlockWhenExhausted(true); config.setMaxTotalPerKey(maxTotal); pool = new GenericKeyedObjectPool<K, PooledPushSocket>( new KeyedPooledPushSocketFactory(socketFactories, gateways, ports), config); try { for (K k : sslContexts.keySet()) pool.preparePool(k); } catch (Exception e) { throw (new ConnectionFailedException(e)); } logger.debug("Started new push socket pool with {} sockets", pool.getNumIdle()); }
From source file:com.magnet.mmx.server.plugin.mmxmgmt.apns.APNSConnectionPoolImpl.java
/** * Lifecycle method. Initializes the pool using the supplied KeyedPooledObjectFactory and the configuration. * @param factory//from w ww. j av a2s. c om * @param configuration * @throws java.lang.IllegalStateException if the pool instance has already been initialized. */ public static void initialize(KeyedPooledObjectFactory<APNSConnectionKey, APNSConnection> factory, GenericKeyedObjectPoolConfig configuration) { if (initialized.get()) { throw new IllegalStateException("Can't initialize multiple times"); } instance.connectionPool = new GenericKeyedObjectPool<APNSConnectionKey, APNSConnection>(factory, configuration); initialized.set(true); LOGGER.info("APNS Connection pool is initialized"); }
From source file:com.heliosapm.easymq.pool.PoolManager.java
private PoolManager() { final JsonNode rootNode = MQConfig.getInstance().getRootNode(); poolConfig = JSONOps.parseToObject(rootNode.get("poolconfig"), GenericKeyedObjectPoolConfig.class); pool = new GenericKeyedObjectPool<PoolKey, PCFMessageAgentWrapper>(PCFAgentPooledObjectFactory.INSTANCE, poolConfig);//from ww w .j a va2s . c o m log.info("PCFMessageAgent Pool Started"); final JsonNode poolDefs = rootNode.get("pools"); for (JsonNode poolDef : poolDefs) { final SubPool subPool = JSONOps.parseToObject(poolDef, SubPool.class); installSubPool(subPool); } Runtime.getRuntime().addShutdownHook(new Thread("PoolManagerShutdown") { @Override public void run() { log.info("Closing PCF Pool..."); pool.close(); } }); }
From source file:com.quancheng.saluki.core.grpc.GrpcEngine.java
private void initChannelPool() { GenericKeyedObjectPoolConfig config = new GenericKeyedObjectPoolConfig(); config.setMaxTotal(1000);/* w w w .ja va2s . c o m*/ config.setMaxTotalPerKey(3); config.setBlockWhenExhausted(true); config.setMinIdlePerKey(3); config.setMaxWaitMillis(10); config.setNumTestsPerEvictionRun(Integer.MAX_VALUE); config.setTestOnBorrow(false); config.setTestOnReturn(false); config.setTestWhileIdle(false); config.setTimeBetweenEvictionRunsMillis(1 * 60000L); config.setMinEvictableIdleTimeMillis(10 * 60000L); config.setTestWhileIdle(false); this.channelPool = new GenericKeyedObjectPool<GrpcURL, Channel>(new GrpcChannelFactory(), config); }
From source file:com.vmware.identity.idm.server.provider.LdapConnectionPool.java
public void createPool(String tenantName) { GenericKeyedObjectPool<PooledLdapConnectionIdentity, ILdapConnectionEx> newPool = null; GenericKeyedObjectPool<PooledLdapConnectionIdentity, ILdapConnectionEx> currentPool = poolMap .get(tenantName.toLowerCase()); if (currentPool == null) { newPool = new GenericKeyedObjectPool<>(new PooledLdapConnectionFactory(), getGenericKeyedObjectPoolConfig(tenantName)); currentPool = poolMap.putIfAbsent(tenantName.toLowerCase(), newPool); if (currentPool != null) { newPool.close();// w w w . j a va 2 s. com } logger.info(currentPool != null ? "Pool created for tenant " + tenantName : "Pool already existed for tenant " + tenantName); } }
From source file:io.mandrel.transport.thrift.KeyedClientPool.java
public KeyedClientPool(Class<T> clazz, ClientConnectorFactory clientConnectorFactory, GenericKeyedObjectPoolConfig poolConfig, ThriftClientManager clientManager) { this.clientManager = clientManager; this.internalPool = new GenericKeyedObjectPool<HostAndPort, T>( new ClientObjectFactory(clientConnectorFactory, clientManager, clazz), poolConfig); }
From source file:com.haulmont.cuba.core.sys.AbstractScripting.java
private synchronized GenericKeyedObjectPool<String, Script> getPool() { if (pool == null) { GenericKeyedObjectPoolConfig poolConfig = new GenericKeyedObjectPoolConfig(); poolConfig.setMaxTotalPerKey(-1); poolConfig.setMaxIdlePerKey(globalConfig.getGroovyEvaluationPoolMaxIdle()); pool = new GenericKeyedObjectPool<>(new BaseKeyedPooledObjectFactory<String, Script>() { @Override//from w w w . j a va 2s. c om public Script create(String key) throws Exception { return createScript(key); } @Override public PooledObject<Script> wrap(Script value) { return new DefaultPooledObject<>(value); } }, poolConfig); } return pool; }
From source file:com.streamsets.datacollector.stagelibrary.ClassLoaderStageLibraryTask.java
@Override public void initTask() { super.initTask(); stageClassLoaders = runtimeInfo.getStageLibraryClassLoaders(); if (!stageClassLoaders.isEmpty()) { resolveClassLoaderMethods(stageClassLoaders.get(0)); }//from w w w . j a va 2 s . c om json = ObjectMapperFactory.get(); stageList = new ArrayList<>(); stageMap = new HashMap<>(); loadStages(); stageList = ImmutableList.copyOf(stageList); stageMap = ImmutableMap.copyOf(stageMap); // localization cache for definitions localizedStageList = CacheBuilder.newBuilder().build(new CacheLoader<Locale, List<StageDefinition>>() { @Override public List<StageDefinition> load(Locale key) throws Exception { List<StageDefinition> list = new ArrayList<>(); for (StageDefinition stage : stageList) { list.add(stage.localize()); } return list; } }); validateStageVersions(stageList); // initializing the list of targets that can be used for error handling ErrorHandlingChooserValues.setErrorHandlingOptions(this); // initializing the list of targets that can be used as aggregating sink StatsTargetChooserValues.setStatsTargetOptions(this); // initializing the pool of private stage classloaders GenericKeyedObjectPoolConfig poolConfig = new GenericKeyedObjectPoolConfig(); poolConfig.setJmxEnabled(false); poolConfig.setMaxTotal( configuration.get(MAX_PRIVATE_STAGE_CLASS_LOADERS_KEY, MAX_PRIVATE_STAGE_CLASS_LOADERS_DEFAULT)); poolConfig.setMinEvictableIdleTimeMillis(-1); poolConfig.setNumTestsPerEvictionRun(0); poolConfig.setMaxIdlePerKey(-1); poolConfig.setMinIdlePerKey(0); poolConfig.setMaxTotalPerKey(-1); poolConfig.setBlockWhenExhausted(false); poolConfig.setMaxWaitMillis(0); privateClassLoaderPool = new GenericKeyedObjectPool<>(new ClassLoaderFactory(stageClassLoaders), poolConfig); }