1 /* 2 * Copyright (c) 2003, 2013, 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 it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * 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 WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 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 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package sun.management; 27 28 import java.util.List; 29 import sun.management.counter.Counter; 30 /** 31 * An interface for the monitoring and management of the 32 * Java virtual machine. 33 */ 34 public interface VMManagement { 35 36 // Optional supports isCompilationTimeMonitoringSupported()37 public boolean isCompilationTimeMonitoringSupported(); isThreadContentionMonitoringSupported()38 public boolean isThreadContentionMonitoringSupported(); isThreadContentionMonitoringEnabled()39 public boolean isThreadContentionMonitoringEnabled(); isCurrentThreadCpuTimeSupported()40 public boolean isCurrentThreadCpuTimeSupported(); isOtherThreadCpuTimeSupported()41 public boolean isOtherThreadCpuTimeSupported(); isThreadCpuTimeEnabled()42 public boolean isThreadCpuTimeEnabled(); isBootClassPathSupported()43 public boolean isBootClassPathSupported(); isObjectMonitorUsageSupported()44 public boolean isObjectMonitorUsageSupported(); isSynchronizerUsageSupported()45 public boolean isSynchronizerUsageSupported(); isThreadAllocatedMemorySupported()46 public boolean isThreadAllocatedMemorySupported(); isThreadAllocatedMemoryEnabled()47 public boolean isThreadAllocatedMemoryEnabled(); isGcNotificationSupported()48 public boolean isGcNotificationSupported(); isRemoteDiagnosticCommandsSupported()49 public boolean isRemoteDiagnosticCommandsSupported(); 50 51 // Class Loading Subsystem getTotalClassCount()52 public long getTotalClassCount(); getLoadedClassCount()53 public int getLoadedClassCount(); getUnloadedClassCount()54 public long getUnloadedClassCount(); getVerboseClass()55 public boolean getVerboseClass(); 56 57 // Memory Subsystem getVerboseGC()58 public boolean getVerboseGC(); 59 60 // Runtime Subsystem getManagementVersion()61 public String getManagementVersion(); getVmId()62 public String getVmId(); getVmName()63 public String getVmName(); getVmVendor()64 public String getVmVendor(); getVmVersion()65 public String getVmVersion(); getVmSpecName()66 public String getVmSpecName(); getVmSpecVendor()67 public String getVmSpecVendor(); getVmSpecVersion()68 public String getVmSpecVersion(); getClassPath()69 public String getClassPath(); getLibraryPath()70 public String getLibraryPath(); getBootClassPath()71 public String getBootClassPath(); getVmArguments()72 public List<String> getVmArguments(); getStartupTime()73 public long getStartupTime(); getUptime()74 public long getUptime(); getAvailableProcessors()75 public int getAvailableProcessors(); 76 77 // Compilation Subsystem getCompilerName()78 public String getCompilerName(); getTotalCompileTime()79 public long getTotalCompileTime(); 80 81 // Thread Subsystem getTotalThreadCount()82 public long getTotalThreadCount(); getLiveThreadCount()83 public int getLiveThreadCount(); getPeakThreadCount()84 public int getPeakThreadCount(); getDaemonThreadCount()85 public int getDaemonThreadCount(); 86 87 // Operating System getOsName()88 public String getOsName(); getOsArch()89 public String getOsArch(); getOsVersion()90 public String getOsVersion(); 91 92 // Hotspot-specific Runtime support getSafepointCount()93 public long getSafepointCount(); getTotalSafepointTime()94 public long getTotalSafepointTime(); getSafepointSyncTime()95 public long getSafepointSyncTime(); getTotalApplicationNonStoppedTime()96 public long getTotalApplicationNonStoppedTime(); 97 getLoadedClassSize()98 public long getLoadedClassSize(); getUnloadedClassSize()99 public long getUnloadedClassSize(); getClassLoadingTime()100 public long getClassLoadingTime(); getMethodDataSize()101 public long getMethodDataSize(); getInitializedClassCount()102 public long getInitializedClassCount(); getClassInitializationTime()103 public long getClassInitializationTime(); getClassVerificationTime()104 public long getClassVerificationTime(); 105 106 // Performance counter support getInternalCounters(String pattern)107 public List<Counter> getInternalCounters(String pattern); 108 } 109