New file.
* src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
gnu_java_lang_management_VMClassLoadingMXBeanImpl.c.
* src/native/include/Makefile.am
(ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADER_FILES): Added
gnu_java_lang_management_VMClassLoadingMXBeanImpl.h.
* src/native/include/.cvsignore: Likewise.
* src/native/jni.h (_Jv_JavaVM): Added
Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_verbose.
* src/native/native.c
(native/include/gnu_java_lang_management_VMClassLoadingMXBeanImpl.h):
Added.
(native/include/gnu_java_lang_management_VMMemoryMXBeanImpl.h):
Likewise.
(dummynativetable): Added VMClassLoadingMXBeanImpl and
VMMemoryMXBeanImpl functions.
gnu_classpath_Pointer64.h
gnu_classpath_VMStackWalker.h
gnu_classpath_VMSystemProperties.h
+gnu_java_lang_management_VMClassLoadingMXBeanImpl.h
gnu_java_lang_management_VMRuntimeMXBeanImpl.h
gnu_java_lang_management_VMMemoryMXBeanImpl.h
java_io_File.h
##
## Changes:
##
-## $Id: Makefile.am 5190 2006-07-31 12:28:23Z twisti $
+## $Id: Makefile.am 5193 2006-07-31 14:35:41Z twisti $
## Process this file with automake to produce Makefile.in
ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADER_FILES = \
gnu_classpath_VMStackWalker.h \
gnu_classpath_VMSystemProperties.h \
- gnu_java_lang_management_VMRuntimeMXBeanImpl.h \
+ gnu_java_lang_management_VMClassLoadingMXBeanImpl.h \
gnu_java_lang_management_VMMemoryMXBeanImpl.h \
+ gnu_java_lang_management_VMRuntimeMXBeanImpl.h \
java_lang_VMClass.h \
java_lang_VMClassLoader.h \
java_lang_VMRuntime.h \
Changes: Christian Thalinger
- $Id: jni.h 5104 2006-07-10 17:22:18Z twisti $
+ $Id: jni.h 5193 2006-07-31 14:35:41Z twisti $
*/
s8 starttime; /* VM startup time */
+ s4 Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_verbose;
s4 Java_gnu_java_lang_management_VMMemoryMXBeanImpl_verbose;
s4 Java_java_lang_VMClassLoader_defaultAssertionStatus;
};
Changes: Christian Thalinger
- $Id: native.c 5123 2006-07-12 21:45:34Z twisti $
+ $Id: native.c 5193 2006-07-31 14:35:41Z twisti $
*/
#include "native/include/gnu_classpath_VMStackWalker.h"
#include "native/include/gnu_classpath_VMSystemProperties.h"
+#include "native/include/gnu_java_lang_management_VMClassLoadingMXBeanImpl.h"
+#include "native/include/gnu_java_lang_management_VMMemoryMXBeanImpl.h"
#include "native/include/gnu_java_lang_management_VMRuntimeMXBeanImpl.h"
#include "native/include/java_lang_Class.h"
#include "native/include/java_lang_Object.h"
(functionptr) Java_gnu_classpath_VMSystemProperties_preInit,
+ (functionptr) Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_getLoadedClassCount,
+ (functionptr) Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_getUnloadedClassCount,
+ (functionptr) Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_isVerbose,
+ (functionptr) Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_setVerbose,
+
+ (functionptr) Java_gnu_java_lang_management_VMMemoryMXBeanImpl_getHeapMemoryUsage,
+ (functionptr) Java_gnu_java_lang_management_VMMemoryMXBeanImpl_getNonHeapMemoryUsage,
+ (functionptr) Java_gnu_java_lang_management_VMMemoryMXBeanImpl_getObjectPendingFinalizationCount,
+ (functionptr) Java_gnu_java_lang_management_VMMemoryMXBeanImpl_isVerbose,
+ (functionptr) Java_gnu_java_lang_management_VMMemoryMXBeanImpl_setVerbose,
+
(functionptr) Java_gnu_java_lang_management_VMRuntimeMXBeanImpl_getInputArguments,
(functionptr) Java_gnu_java_lang_management_VMRuntimeMXBeanImpl_getStartTime,
##
## Changes:
##
-## $Id: Makefile.am 5190 2006-07-31 12:28:23Z twisti $
+## $Id: Makefile.am 5193 2006-07-31 14:35:41Z twisti $
## Process this file with automake to produce Makefile.in
libnativevm_la_SOURCES = \
gnu_classpath_VMStackWalker.c \
gnu_classpath_VMSystemProperties.c \
- gnu_java_lang_management_VMRuntimeMXBeanImpl.c \
+ gnu_java_lang_management_VMClassLoadingMXBeanImpl.c \
gnu_java_lang_management_VMMemoryMXBeanImpl.c \
+ gnu_java_lang_management_VMRuntimeMXBeanImpl.c \
java_lang_VMClass.c \
java_lang_VMClassLoader.c \
java_lang_VMObject.c \
--- /dev/null
+/* src/native/vm/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c
+
+ Copyright (C) 1996-2005, 2006 R. Grafl, A. Krall, C. Kruegel,
+ C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
+ E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
+ J. Wenninger, Institut f. Computersprachen - TU Wien
+
+ This file is part of CACAO.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2, or (at
+ your option) any later version.
+
+ This program 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 for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA.
+
+ Contact: cacao@cacaojvm.org
+
+ Authors: Christian Thalinger
+
+ Changes:
+
+ $Id: VMFrame.c 4996 2006-05-31 13:53:16Z motse $
+
+*/
+
+
+#include "config.h"
+#include "vm/types.h"
+
+#include "mm/boehm.h"
+
+#include "native/jni.h"
+
+#include "toolbox/logging.h"
+#include "vm/classcache.h"
+#include "vm/vm.h"
+
+
+/*
+ * Class: gnu/java/lang/management/VMClassLoadingMXBeanImpl
+ * Method: getLoadedClassCount
+ * Signature: ()I
+ */
+JNIEXPORT s4 JNICALL Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_getLoadedClassCount(JNIEnv *env, jclass clazz)
+{
+ s4 count;
+
+ count = classcache_get_loaded_class_count();
+
+ return count;
+}
+
+
+/*
+ * Class: gnu/java/lang/management/VMClassLoadingMXBeanImpl
+ * Method: getUnloadedClassCount
+ * Signature: ()J
+ */
+JNIEXPORT s8 JNICALL Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_getUnloadedClassCount(JNIEnv *env, jclass clazz)
+{
+ log_println("Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_getUnloadedClassCount: IMPLEMENT ME!");
+
+ return 0;
+}
+
+
+/*
+ * Class: gnu/java/lang/management/VMClassLoadingMXBeanImpl
+ * Method: isVerbose
+ * Signature: ()Z
+ */
+JNIEXPORT s4 JNICALL Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_isVerbose(JNIEnv *env, jclass clazz)
+{
+ return _Jv_jvm->Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_verbose;
+}
+
+
+/*
+ * Class: gnu/java/lang/management/VMClassLoadingMXBeanImpl
+ * Method: setVerbose
+ * Signature: (Z)V
+ */
+JNIEXPORT void JNICALL Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_setVerbose(JNIEnv *env, jclass clazz, s4 verbose)
+{
+ _Jv_jvm->Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_verbose = verbose;
+}
+
+
+/*
+ * These are local overrides for various environment variables in Emacs.
+ * Please do not remove this and leave it at the end of the file, where
+ * Emacs will automagically detect them.
+ * ---------------------------------------------------------------------
+ * Local variables:
+ * mode: c
+ * indent-tabs-mode: t
+ * c-basic-offset: 4
+ * tab-width: 4
+ * End:
+ * vim:noexpandtab:sw=4:ts=4:
+ */