001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017package org.apache.commons.dbcp2; 018 019/** 020 * Defines the methods that will be made available via JMX. 021 * 022 * @since 2.0 023 */ 024public interface BasicDataSourceMXBean { 025 026 /** 027 * See {@link BasicDataSource#getAbandonedUsageTracking()} 028 * @return {@link BasicDataSource#getAbandonedUsageTracking()} 029 */ 030 boolean getAbandonedUsageTracking(); 031 032 /** 033 * See {@link BasicDataSource#getDefaultAutoCommit()} 034 * @return {@link BasicDataSource#getDefaultAutoCommit()} 035 */ 036 Boolean getDefaultAutoCommit(); 037 038 /** 039 * See {@link BasicDataSource#getDefaultReadOnly()} 040 * @return {@link BasicDataSource#getDefaultReadOnly()} 041 */ 042 Boolean getDefaultReadOnly(); 043 044 /** 045 * See {@link BasicDataSource#getDefaultTransactionIsolation()} 046 * @return {@link BasicDataSource#getDefaultTransactionIsolation()} 047 */ 048 int getDefaultTransactionIsolation(); 049 050 /** 051 * See {@link BasicDataSource#getDefaultCatalog()} 052 * @return {@link BasicDataSource#getDefaultCatalog()} 053 */ 054 String getDefaultCatalog(); 055 056 /** 057 * See {@link BasicDataSource#getCacheState()} 058 * @return {@link BasicDataSource#getCacheState()} 059 */ 060 boolean getCacheState(); 061 062 /** 063 * See {@link BasicDataSource#getDriverClassName()} 064 * @return {@link BasicDataSource#getDriverClassName()} 065 */ 066 String getDriverClassName(); 067 068 /** 069 * See {@link BasicDataSource#getLifo()} 070 * @return {@link BasicDataSource#getLifo()} 071 */ 072 boolean getLifo(); 073 074 /** 075 * See {@link BasicDataSource#getMaxTotal()} 076 * @return {@link BasicDataSource#getMaxTotal()} 077 */ 078 int getMaxTotal(); 079 080 /** 081 * See {@link BasicDataSource#getMaxIdle()} 082 * @return {@link BasicDataSource#getMaxIdle()} 083 */ 084 int getMaxIdle(); 085 086 /** 087 * See {@link BasicDataSource#getMinIdle()} 088 * @return {@link BasicDataSource#getMinIdle()} 089 */ 090 int getMinIdle(); 091 092 /** 093 * See {@link BasicDataSource#getInitialSize()} 094 * @return {@link BasicDataSource#getInitialSize()} 095 */ 096 int getInitialSize(); 097 098 /** 099 * See {@link BasicDataSource#getMaxWaitMillis()} 100 * @return {@link BasicDataSource#getMaxWaitMillis()} 101 */ 102 long getMaxWaitMillis(); 103 104 /** 105 * See {@link BasicDataSource#isPoolPreparedStatements()} 106 * @return {@link BasicDataSource#isPoolPreparedStatements()} 107 */ 108 boolean isPoolPreparedStatements(); 109 110 /** 111 * See {@link BasicDataSource#getMaxOpenPreparedStatements()} 112 * @return {@link BasicDataSource#getMaxOpenPreparedStatements()} 113 */ 114 int getMaxOpenPreparedStatements(); 115 116 /** 117 * See {@link BasicDataSource#getTestOnCreate()} 118 * @return {@link BasicDataSource#getTestOnCreate()} 119 */ 120 boolean getTestOnCreate(); 121 122 /** 123 * See {@link BasicDataSource#getTestOnBorrow()} 124 * @return {@link BasicDataSource#getTestOnBorrow()} 125 */ 126 boolean getTestOnBorrow(); 127 128 /** 129 * See {@link BasicDataSource#getTimeBetweenEvictionRunsMillis()} 130 * @return {@link BasicDataSource#getTimeBetweenEvictionRunsMillis()} 131 */ 132 long getTimeBetweenEvictionRunsMillis(); 133 134 /** 135 * See {@link BasicDataSource#getNumTestsPerEvictionRun()} 136 * @return {@link BasicDataSource#getNumTestsPerEvictionRun()} 137 */ 138 int getNumTestsPerEvictionRun(); 139 140 /** 141 * See {@link BasicDataSource#getMinEvictableIdleTimeMillis()} 142 * @return {@link BasicDataSource#getMinEvictableIdleTimeMillis()} 143 */ 144 long getMinEvictableIdleTimeMillis(); 145 146 /** 147 * See {@link BasicDataSource#getSoftMinEvictableIdleTimeMillis()} 148 * @return {@link BasicDataSource#getSoftMinEvictableIdleTimeMillis()} 149 */ 150 long getSoftMinEvictableIdleTimeMillis(); 151 152 /** 153 * See {@link BasicDataSource#getTestWhileIdle()} 154 * @return {@link BasicDataSource#getTestWhileIdle()} 155 */ 156 boolean getTestWhileIdle(); 157 158 /** 159 * See {@link BasicDataSource#getNumActive()} 160 * @return {@link BasicDataSource#getNumActive()} 161 */ 162 int getNumActive(); 163 164 /** 165 * See {@link BasicDataSource#getNumIdle()} 166 * @return {@link BasicDataSource#getNumIdle()} 167 */ 168 int getNumIdle(); 169 170 /** 171 * See {@link BasicDataSource#getPassword()} 172 * @return {@link BasicDataSource#getPassword()} 173 */ 174 String getPassword(); 175 176 /** 177 * See {@link BasicDataSource#getUrl()} 178 * @return {@link BasicDataSource#getUrl()} 179 */ 180 String getUrl(); 181 182 /** 183 * See {@link BasicDataSource#getUsername()} 184 * @return {@link BasicDataSource#getUsername()} 185 */ 186 String getUsername(); 187 188 /** 189 * See {@link BasicDataSource#getValidationQuery()} 190 * @return {@link BasicDataSource#getValidationQuery()} 191 */ 192 String getValidationQuery(); 193 194 /** 195 * See {@link BasicDataSource#getValidationQueryTimeout()} 196 * @return {@link BasicDataSource#getValidationQueryTimeout()} 197 */ 198 int getValidationQueryTimeout(); 199 200 /** 201 * See {@link BasicDataSource#getConnectionInitSqlsAsArray()} 202 * @return {@link BasicDataSource#getConnectionInitSqlsAsArray()} 203 */ 204 String[] getConnectionInitSqlsAsArray(); 205 206 /** 207 * See {@link BasicDataSource#isAccessToUnderlyingConnectionAllowed()} 208 * @return {@link BasicDataSource#isAccessToUnderlyingConnectionAllowed()} 209 */ 210 boolean isAccessToUnderlyingConnectionAllowed(); 211 212 /** 213 * See {@link BasicDataSource#getMaxConnLifetimeMillis()} 214 * @return {@link BasicDataSource#getMaxConnLifetimeMillis()} 215 */ 216 long getMaxConnLifetimeMillis(); 217 218 /** 219 * See {@link BasicDataSource#getLogExpiredConnections()} 220 * @return {@link BasicDataSource#getLogExpiredConnections()} 221 * @since 2.1 222 */ 223 boolean getLogExpiredConnections(); 224 225 /** 226 * See {@link BasicDataSource#getRemoveAbandonedOnBorrow()} 227 * @return {@link BasicDataSource#getRemoveAbandonedOnBorrow()} 228 */ 229 boolean getRemoveAbandonedOnBorrow(); 230 231 /** 232 * See {@link BasicDataSource#getRemoveAbandonedOnMaintenance()} 233 * @return {@link BasicDataSource#getRemoveAbandonedOnMaintenance()} 234 */ 235 boolean getRemoveAbandonedOnMaintenance(); 236 237 /** 238 * See {@link BasicDataSource#getRemoveAbandonedTimeout()} 239 * @return {@link BasicDataSource#getRemoveAbandonedTimeout()} 240 */ 241 int getRemoveAbandonedTimeout(); 242 243 /** 244 * See {@link BasicDataSource#getLogAbandoned()} 245 * @return {@link BasicDataSource#getLogAbandoned()} 246 */ 247 boolean getLogAbandoned(); 248 249 /** 250 * See {@link BasicDataSource#isClosed()} 251 * @return {@link BasicDataSource#isClosed()} 252 */ 253 boolean isClosed(); 254 255 /** 256 * See {@link BasicDataSource#getFastFailValidation()} 257 * @return {@link BasicDataSource#getFastFailValidation()} 258 * @since 2.1 259 */ 260 boolean getFastFailValidation(); 261 262 /** 263 * See {@link BasicDataSource#getDisconnectionSqlCodesAsArray()} 264 * @return {@link BasicDataSource#getDisconnectionSqlCodesAsArray()} 265 * @since 2.1 266 */ 267 String[] getDisconnectionSqlCodesAsArray(); 268}