1 /***
2 *
3 * Copyright 2004 Protique Ltd
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 **/
18 package org.codehaus.activemq.management;
19
20 import javax.management.j2ee.statistics.BoundedRangeStatistic;
21 import javax.management.j2ee.statistics.CountStatistic;
22 import javax.management.j2ee.statistics.JCAConnectionPoolStats;
23 import javax.management.j2ee.statistics.RangeStatistic;
24 import javax.management.j2ee.statistics.TimeStatistic;
25
26 /***
27 * Statistics for a JCA connection pool
28 *
29 * @version $Revision: 1.2 $
30 */
31 public class JCAConnectionPoolStatsImpl extends JCAConnectionStatsImpl implements JCAConnectionPoolStats {
32 private CountStatistic closeCount;
33 private CountStatistic createCount;
34 private BoundedRangeStatistic freePoolSize;
35 private BoundedRangeStatistic poolSize;
36 private RangeStatistic waitingThreadCount;
37
38 public JCAConnectionPoolStatsImpl(String connectionFactory, String managedConnectionFactory, TimeStatistic waitTime, TimeStatistic useTime, CountStatistic closeCount, CountStatistic createCount, BoundedRangeStatistic freePoolSize, BoundedRangeStatistic poolSize, RangeStatistic waitingThreadCount) {
39 super(connectionFactory, managedConnectionFactory, waitTime, useTime);
40 this.closeCount = closeCount;
41 this.createCount = createCount;
42 this.freePoolSize = freePoolSize;
43 this.poolSize = poolSize;
44 this.waitingThreadCount = waitingThreadCount;
45
46
47 addStatistic("freePoolSize", freePoolSize);
48 addStatistic("poolSize", poolSize);
49 addStatistic("waitingThreadCount", waitingThreadCount);
50 }
51
52 public CountStatistic getCloseCount() {
53 return closeCount;
54 }
55
56 public CountStatistic getCreateCount() {
57 return createCount;
58 }
59
60 public BoundedRangeStatistic getFreePoolSize() {
61 return freePoolSize;
62 }
63
64 public BoundedRangeStatistic getPoolSize() {
65 return poolSize;
66 }
67
68 public RangeStatistic getWaitingThreadCount() {
69 return waitingThreadCount;
70 }
71
72 }