1/*2 * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.4 *5 * This code is free software; you can redistribute it and/or modify it6 * under the terms of the GNU General Public License version 2 only, as7 * published by the Free Software Foundation. Oracle designates this8 * particular file as subject to the "Classpath" exception as provided9 * by Oracle in the LICENSE file that accompanied this code.10 *11 * This code is distributed in the hope that it will be useful, but WITHOUT12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License14 * version 2 for more details (a copy is included in the LICENSE file that15 * accompanied this code).16 *17 * You should have received a copy of the GNU General Public License version18 * 2 along with this work; if not, write to the Free Software Foundation,19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.20 *21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA22 * or visit www.oracle.com if you need additional information or have any23 * questions.24 */2526package sun.jvmstat.monitor;
2728/**29 * Interface provided by Instrumentation Monitoring Objects.30 *31 * @author Brian Doherty32 * @since 1.533 */34publicinterfaceMonitor {
3536/**37 * Returns the name of this instrumentation object.38 *39 * @return String - the name assigned to this instrumentation monitoring40 * object41 */42String getName();
4344/**45 * Returns the base name of this instrumentation object.46 * The base name is the component of the name following the last47 * "." character in the name.48 *49 * @return String - the base name of the name assigned to this50 * instrumentation monitoring object.51 */52String getBaseName();
5354/**55 * Returns the Units for this instrumentation monitoring object.56 *57 * @return Units - the units of measure attribute58 */59Units getUnits();
6061/**62 * Returns the Variability for this instrumentation object.63 *64 *@return Variability - the variability attribute65 */66Variability getVariability();
6768/**69 * Test if the instrumentation object is a vector type.70 *71 * @return boolean - true if this instrumentation object is a vector type,72 * false otherwise.73 */74boolean isVector();
7576/**77 * Return the length of the vector.78 * @return int - the length of the vector or zero if this instrumentation79 * object is a scalar type.80 */81int getVectorLength();
8283/**84 * Test if the instrumentation object is supported.85 */86boolean isSupported();
8788/**89 * Return an Object that encapsulates this instrumentation object's90 * current data value.91 */92Object getValue();
93 }