1 /** 2 * 3 * Copyright 2003-2004 The Apache Software Foundation 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 package org.apache.geronimo.management.stats; 18 19 import javax.management.j2ee.statistics.JVMStats; 20 import javax.management.j2ee.statistics.CountStatistic; 21 import javax.management.j2ee.statistics.BoundedRangeStatistic; 22 23 /** 24 * Geronimo implementation of the JSR-77 JVMStats interface. 25 * 26 * @version $Rev: 355877 $ $Date: 2005-12-10 18:48:27 -0800 (Sat, 10 Dec 2005) $ 27 */ 28 public class JVMStatsImpl extends StatsImpl implements JVMStats { 29 private final CountStatisticImpl upTime; 30 private final BoundedRangeImpl heapSize; 31 32 public JVMStatsImpl() { 33 upTime = new CountStatisticImpl("JVM Up Time", StatisticImpl.UNIT_TIME_MILLISECOND, 34 "The length of time that the JVM has been running", 0); 35 heapSize = new BoundedRangeImpl("JVM Heap Size", StatisticImpl.UNIT_MEMORY_BYTES, 36 "The memory usage of the JVM"); 37 addStat("UpTime", upTime); 38 addStat("HeapSize", heapSize); 39 } 40 41 public CountStatistic getUpTime() { 42 return upTime; 43 } 44 45 public BoundedRangeStatistic getHeapSize() { 46 return heapSize; 47 } 48 49 /** 50 * Used to access the native implementation in order to call setters 51 */ 52 public CountStatisticImpl getUpTimeImpl() { 53 return upTime; 54 } 55 56 /** 57 * Used to access the native implementation in order to call setters 58 */ 59 public BoundedRangeImpl getHeapSizeImpl() { 60 return heapSize; 61 } 62 }