blob: 0f4edd785628654d6071c2046a698bf8cbf444e4 [file] [log] [blame]
/* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.tomcat.jdbc.pool.jmx;
import org.apache.tomcat.jdbc.pool.PoolConfiguration;
public interface ConnectionPoolMBean extends PoolConfiguration {
//=================================================================
// POOL STATS
//=================================================================
public int getSize();
public int getIdle();
public int getActive();
public int getNumIdle();
public int getNumActive();
public int getWaitCount();
public long getBorrowedCount();
public long getReturnedCount();
public long getCreatedCount();
public long getReleasedCount();
public long getReconnectedCount();
public long getRemoveAbandonedCount();
public long getReleasedIdleCount();
//=================================================================
// POOL OPERATIONS
//=================================================================
public void checkIdle();
public void checkAbandoned();
public void testIdle();
/**
* Purges all connections in the pool.
* For connections currently in use, these connections will be
* purged when returned on the pool. This call also
* purges connections that are idle and in the pool
* To only purge used/active connections see {@link #purgeOnReturn()}
*/
public void purge();
/**
* Purges connections when they are returned from the pool.
* This call does not purge idle connections until they are used.
* To purge idle connections see {@link #purge()}
*/
public void purgeOnReturn();
/**
* reset the statistics of this pool.
*/
public void resetStats();
//=================================================================
// POOL NOTIFICATIONS
//=================================================================
}