/*
 * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package sun.management.snmp.jvminstr;

// java imports
//
import java.io.Serializable;

import java.lang.management.ClassLoadingMXBean;
import java.lang.management.ManagementFactory;
// jmx imports
//
import javax.management.MBeanServer;
import com.sun.jmx.snmp.SnmpString;
import com.sun.jmx.snmp.SnmpStatusException;

// jdmk imports
//
import com.sun.jmx.snmp.agent.SnmpMib;

import sun.management.snmp.jvmmib.JvmClassLoadingMBean;
import sun.management.snmp.jvmmib.EnumJvmClassesVerboseLevel;
import sun.management.snmp.util.MibLogger;

The class is used for implementing the "JvmClassLoading" group.
/** * The class is used for implementing the "JvmClassLoading" group. */
public class JvmClassLoadingImpl implements JvmClassLoadingMBean {
Variable for storing the value of "JvmClassesVerboseLevel". "verbose: if the -verbose:class flag is set. silent: otherwise. See java.management.ClassLoadingMXBean.isVerbose(), java.management.ClassLoadingMXBean.setVerbose() "
/** * Variable for storing the value of "JvmClassesVerboseLevel". * * "verbose: if the -verbose:class flag is set. * silent: otherwise. * * See java.management.ClassLoadingMXBean.isVerbose(), * java.management.ClassLoadingMXBean.setVerbose() * " * */
static final EnumJvmClassesVerboseLevel JvmClassesVerboseLevelVerbose = new EnumJvmClassesVerboseLevel("verbose"); static final EnumJvmClassesVerboseLevel JvmClassesVerboseLevelSilent = new EnumJvmClassesVerboseLevel("silent");
Constructor for the "JvmClassLoading" group. If the group contains a table, the entries created through an SNMP SET will not be registered in Java DMK.
/** * Constructor for the "JvmClassLoading" group. * If the group contains a table, the entries created through an * SNMP SET will not be registered in Java DMK. */
public JvmClassLoadingImpl(SnmpMib myMib) { }
Constructor for the "JvmClassLoading" group. If the group contains a table, the entries created through an SNMP SET will be AUTOMATICALLY REGISTERED in Java DMK.
/** * Constructor for the "JvmClassLoading" group. * If the group contains a table, the entries created through an SNMP SET * will be AUTOMATICALLY REGISTERED in Java DMK. */
public JvmClassLoadingImpl(SnmpMib myMib, MBeanServer server) { } static ClassLoadingMXBean getClassLoadingMXBean() { return ManagementFactory.getClassLoadingMXBean(); }
Getter for the "JvmClassesVerboseLevel" variable.
/** * Getter for the "JvmClassesVerboseLevel" variable. */
public EnumJvmClassesVerboseLevel getJvmClassesVerboseLevel() throws SnmpStatusException { if(getClassLoadingMXBean().isVerbose()) return JvmClassesVerboseLevelVerbose; else return JvmClassesVerboseLevelSilent; }
Setter for the "JvmClassesVerboseLevel" variable.
/** * Setter for the "JvmClassesVerboseLevel" variable. */
public void setJvmClassesVerboseLevel(EnumJvmClassesVerboseLevel x) throws SnmpStatusException { final boolean verbose; if (JvmClassesVerboseLevelVerbose.equals(x)) verbose=true; else if (JvmClassesVerboseLevelSilent.equals(x)) verbose=false; // Should never happen, this case is handled by // checkJvmClassesVerboseLevel(); else throw new SnmpStatusException(SnmpStatusException.snmpRspWrongValue); getClassLoadingMXBean().setVerbose(verbose); }
Checker for the "JvmClassesVerboseLevel" variable.
/** * Checker for the "JvmClassesVerboseLevel" variable. */
public void checkJvmClassesVerboseLevel(EnumJvmClassesVerboseLevel x) throws SnmpStatusException { // // Add your own checking policy. // if (JvmClassesVerboseLevelVerbose.equals(x)) return; if (JvmClassesVerboseLevelSilent.equals(x)) return; throw new SnmpStatusException(SnmpStatusException.snmpRspWrongValue); }
Getter for the "JvmClassesUnloadedCount" variable.
/** * Getter for the "JvmClassesUnloadedCount" variable. */
public Long getJvmClassesUnloadedCount() throws SnmpStatusException { return new Long(getClassLoadingMXBean().getUnloadedClassCount()); }
Getter for the "JvmClassesTotalLoadedCount" variable.
/** * Getter for the "JvmClassesTotalLoadedCount" variable. */
public Long getJvmClassesTotalLoadedCount() throws SnmpStatusException { return new Long(getClassLoadingMXBean().getTotalLoadedClassCount()); }
Getter for the "JvmClassesLoadedCount" variable.
/** * Getter for the "JvmClassesLoadedCount" variable. */
public Long getJvmClassesLoadedCount() throws SnmpStatusException { return new Long(getClassLoadingMXBean().getLoadedClassCount()); } }