2
#include "java_lang_reflect_Method.h"
4
#include "java_lang_reflect_InvocationHandler.h"
6
__TIB_DEFINITION_java_lang_reflect_InvocationHandler __TIB_java_lang_reflect_InvocationHandler = {
7
0, // classInitializationBegan
9
-1, // initializerThreadId
10
__INIT_java_lang_reflect_InvocationHandler, // classInitializer
11
"java.lang.reflect.InvocationHandler", // className
12
"java.lang.reflect", // package
13
JAVA_NULL, // enclosingClassName
14
JAVA_NULL, // enclosingMethodName
15
JAVA_NULL, // signature
16
(__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends
18
XMLVM_TYPE_INTERFACE};
20
JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler;
21
JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_1ARRAY;
22
JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_2ARRAY;
23
JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_3ARRAY;
25
static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
28
static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
31
void __INIT_java_lang_reflect_InvocationHandler()
33
staticInitializerLock(&__TIB_java_lang_reflect_InvocationHandler);
35
// While the static initializer mutex is locked, locally store the value of
36
// whether class initialization began or not
37
int initBegan = __TIB_java_lang_reflect_InvocationHandler.classInitializationBegan;
39
// Whether or not class initialization had already began, it has begun now
40
__TIB_java_lang_reflect_InvocationHandler.classInitializationBegan = 1;
42
staticInitializerUnlock(&__TIB_java_lang_reflect_InvocationHandler);
44
JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
46
if (__TIB_java_lang_reflect_InvocationHandler.initializerThreadId != curThreadId) {
47
// Busy wait until the other thread finishes initializing this class
48
while (!__TIB_java_lang_reflect_InvocationHandler.classInitialized) {
53
__TIB_java_lang_reflect_InvocationHandler.initializerThreadId = curThreadId;
54
XMLVM_CLASS_USED("java.lang.reflect.InvocationHandler")
55
__INIT_IMPL_java_lang_reflect_InvocationHandler();
59
void __INIT_IMPL_java_lang_reflect_InvocationHandler()
61
__TIB_java_lang_reflect_InvocationHandler.numInterfaces = 0;
62
__TIB_java_lang_reflect_InvocationHandler.declaredFields = &__field_reflection_data[0];
63
__TIB_java_lang_reflect_InvocationHandler.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
64
//__TIB_java_lang_reflect_InvocationHandler.methodDispatcherFunc = method_dispatcher;
65
__TIB_java_lang_reflect_InvocationHandler.declaredMethods = &__method_reflection_data[0];
66
__TIB_java_lang_reflect_InvocationHandler.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
68
__CLASS_java_lang_reflect_InvocationHandler = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_InvocationHandler);
69
__TIB_java_lang_reflect_InvocationHandler.clazz = __CLASS_java_lang_reflect_InvocationHandler;
70
__TIB_java_lang_reflect_InvocationHandler.baseType = JAVA_NULL;
71
__CLASS_java_lang_reflect_InvocationHandler_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_InvocationHandler);
72
__CLASS_java_lang_reflect_InvocationHandler_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_InvocationHandler_1ARRAY);
73
__CLASS_java_lang_reflect_InvocationHandler_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_InvocationHandler_2ARRAY);
75
__TIB_java_lang_reflect_InvocationHandler.classInitialized = 1;