diff options
Diffstat (limited to 'libjava/java/lang')
-rw-r--r-- | libjava/java/lang/Character.java | 2 | ||||
-rw-r--r-- | libjava/java/lang/Class$1.h | 24 | ||||
-rw-r--r-- | libjava/java/lang/Class.java | 22 | ||||
-rw-r--r-- | libjava/java/lang/Enum.h | 3 | ||||
-rw-r--r-- | libjava/java/lang/SecurityContext.h | 23 | ||||
-rw-r--r-- | libjava/java/lang/System.h | 14 | ||||
-rw-r--r-- | libjava/java/lang/System.java | 22 | ||||
-rw-r--r-- | libjava/java/lang/management/LockInfo.h | 26 | ||||
-rw-r--r-- | libjava/java/lang/management/ManagementFactory$ManagementInvocationHandler.h | 38 | ||||
-rw-r--r-- | libjava/java/lang/management/ManagementFactory.h | 2 | ||||
-rw-r--r-- | libjava/java/lang/management/MonitorInfo.h | 39 | ||||
-rw-r--r-- | libjava/java/lang/management/OperatingSystemMXBean.h | 1 | ||||
-rw-r--r-- | libjava/java/lang/management/ThreadInfo.h | 10 | ||||
-rw-r--r-- | libjava/java/lang/management/ThreadMXBean.h | 5 |
14 files changed, 206 insertions, 25 deletions
diff --git a/libjava/java/lang/Character.java b/libjava/java/lang/Character.java index 0cc9d3c..2edf72e 100644 --- a/libjava/java/lang/Character.java +++ b/libjava/java/lang/Character.java @@ -163,7 +163,7 @@ public final class Character implements Serializable, Comparable<Character> private final String canonicalName; /** Enumeration for the <code>forName()</code> method */ - private enum NameType { CANONICAL, NO_SPACES, CONSTANT; }; + private enum NameType { CANONICAL, NO_SPACES, CONSTANT; } /** * Constructor for strictly defined blocks. diff --git a/libjava/java/lang/Class$1.h b/libjava/java/lang/Class$1.h new file mode 100644 index 0000000..4f68936 --- /dev/null +++ b/libjava/java/lang/Class$1.h @@ -0,0 +1,24 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __java_lang_Class$1__ +#define __java_lang_Class$1__ + +#pragma interface + +#include <java/lang/Object.h> + +class java::lang::Class$1 : public ::java::lang::Object +{ + +public: // actually package-private + Class$1(::java::lang::reflect::AccessibleObject *); +public: + ::java::lang::Object * run(); +private: + ::java::lang::reflect::AccessibleObject * __attribute__((aligned(__alignof__( ::java::lang::Object)))) val$obj; +public: + static ::java::lang::Class class$; +}; + +#endif // __java_lang_Class$1__ diff --git a/libjava/java/lang/Class.java b/libjava/java/lang/Class.java index b0151db..6780517 100644 --- a/libjava/java/lang/Class.java +++ b/libjava/java/lang/Class.java @@ -51,6 +51,8 @@ import java.lang.reflect.Method; import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; import java.net.URL; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.security.ProtectionDomain; import java.util.ArrayList; import java.util.Arrays; @@ -60,6 +62,7 @@ import java.util.Collection; import java.lang.reflect.AnnotatedElement; import java.lang.annotation.Annotation; import java.lang.annotation.Inherited; +import java.lang.reflect.AccessibleObject; /** * A Class represents a Java type. There will never be multiple Class @@ -1004,7 +1007,9 @@ public final class Class<T> { try { - return (T[]) getMethod("values").invoke(null); + Method m = getMethod("values"); + setAccessible(m); + return (T[]) m.invoke(null); } catch (NoSuchMethodException exception) { @@ -1402,4 +1407,19 @@ public final class Class<T> * @since 1.5 */ public native boolean isMemberClass(); + + /** + * Utility method for use by classes in this package. + */ + static void setAccessible(final AccessibleObject obj) + { + AccessController.doPrivileged(new PrivilegedAction() + { + public Object run() + { + obj.setAccessible(true); + return null; + } + }); + } } diff --git a/libjava/java/lang/Enum.h b/libjava/java/lang/Enum.h index a75f276..15ccb16 100644 --- a/libjava/java/lang/Enum.h +++ b/libjava/java/lang/Enum.h @@ -25,6 +25,9 @@ public: virtual ::java::lang::String * name(); virtual jint ordinal(); virtual ::java::lang::Class * getDeclaringClass(); +public: // actually protected + virtual void finalize(); +public: virtual jint compareTo(::java::lang::Object *); private: static const jlong serialVersionUID = -4300926546619394005LL; diff --git a/libjava/java/lang/SecurityContext.h b/libjava/java/lang/SecurityContext.h deleted file mode 100644 index e7b0e59..0000000 --- a/libjava/java/lang/SecurityContext.h +++ /dev/null @@ -1,23 +0,0 @@ - -// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- - -#ifndef __java_lang_SecurityContext__ -#define __java_lang_SecurityContext__ - -#pragma interface - -#include <java/lang/Object.h> -#include <gcj/array.h> - - -class java::lang::SecurityContext : public ::java::lang::Object -{ - -public: // actually package-private - SecurityContext(JArray< ::java::lang::Class * > *); - JArray< ::java::lang::Class * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) classes; -public: - static ::java::lang::Class class$; -}; - -#endif // __java_lang_SecurityContext__ diff --git a/libjava/java/lang/System.h b/libjava/java/lang/System.h index 5a75967..8a67628 100644 --- a/libjava/java/lang/System.h +++ b/libjava/java/lang/System.h @@ -7,6 +7,19 @@ #pragma interface #include <java/lang/Object.h> +extern "Java" +{ + namespace java + { + namespace nio + { + namespace channels + { + class Channel; + } + } + } +} class java::lang::System : public ::java::lang::Object { @@ -44,6 +57,7 @@ private: public: // actually package-private static ::java::lang::String * getenv0(::java::lang::String *); public: + static ::java::nio::channels::Channel * inheritedChannel(); static ::java::io::InputStream * in; static ::java::io::PrintStream * out; static ::java::io::PrintStream * err; diff --git a/libjava/java/lang/System.java b/libjava/java/lang/System.java index b516a51..ecfad25 100644 --- a/libjava/java/lang/System.java +++ b/libjava/java/lang/System.java @@ -46,8 +46,11 @@ import java.io.BufferedOutputStream; import java.io.FileDescriptor; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.IOException; import java.io.InputStream; import java.io.PrintStream; +import java.nio.channels.Channel; +import java.nio.channels.spi.SelectorProvider; import java.util.AbstractCollection; import java.util.ArrayList; import java.util.Collection; @@ -649,6 +652,25 @@ public final class System */ static native String getenv0(String name); + /** + * Returns the inherited channel of the VM. + * + * This wraps the inheritedChannel() call of the system's default + * {@link SelectorProvider}. + * + * @return the inherited channel of the VM + * + * @throws IOException If an I/O error occurs + * @throws SecurityException If an installed security manager denies access + * to RuntimePermission("inheritedChannel") + * + * @since 1.5 + */ + public static Channel inheritedChannel() + throws IOException + { + return SelectorProvider.provider().inheritedChannel(); + } /** * This is a specialised <code>Collection</code>, providing diff --git a/libjava/java/lang/management/LockInfo.h b/libjava/java/lang/management/LockInfo.h new file mode 100644 index 0000000..ec42917 --- /dev/null +++ b/libjava/java/lang/management/LockInfo.h @@ -0,0 +1,26 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __java_lang_management_LockInfo__ +#define __java_lang_management_LockInfo__ + +#pragma interface + +#include <java/lang/Object.h> + +class java::lang::management::LockInfo : public ::java::lang::Object +{ + +public: + LockInfo(::java::lang::String *, jint); + virtual ::java::lang::String * getClassName(); + virtual jint getIdentityHashCode(); + virtual ::java::lang::String * toString(); +private: + ::java::lang::String * __attribute__((aligned(__alignof__( ::java::lang::Object)))) className; + jint identityHashCode; +public: + static ::java::lang::Class class$; +}; + +#endif // __java_lang_management_LockInfo__ diff --git a/libjava/java/lang/management/ManagementFactory$ManagementInvocationHandler.h b/libjava/java/lang/management/ManagementFactory$ManagementInvocationHandler.h new file mode 100644 index 0000000..33603be --- /dev/null +++ b/libjava/java/lang/management/ManagementFactory$ManagementInvocationHandler.h @@ -0,0 +1,38 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __java_lang_management_ManagementFactory$ManagementInvocationHandler__ +#define __java_lang_management_ManagementFactory$ManagementInvocationHandler__ + +#pragma interface + +#include <java/lang/Object.h> +#include <gcj/array.h> + +extern "Java" +{ + namespace javax + { + namespace management + { + class MBeanServerConnection; + class ObjectName; + } + } +} + +class java::lang::management::ManagementFactory$ManagementInvocationHandler : public ::java::lang::Object +{ + +public: + ManagementFactory$ManagementInvocationHandler(::javax::management::MBeanServerConnection *, ::javax::management::ObjectName *); + virtual ::java::lang::Object * invoke(::java::lang::Object *, ::java::lang::reflect::Method *, JArray< ::java::lang::Object * > *); +private: + ::java::lang::Object * translate(::java::lang::Object *, ::java::lang::reflect::Method *); + ::javax::management::MBeanServerConnection * __attribute__((aligned(__alignof__( ::java::lang::Object)))) conn; + ::javax::management::ObjectName * bean; +public: + static ::java::lang::Class class$; +}; + +#endif // __java_lang_management_ManagementFactory$ManagementInvocationHandler__ diff --git a/libjava/java/lang/management/ManagementFactory.h b/libjava/java/lang/management/ManagementFactory.h index a315333..c518093 100644 --- a/libjava/java/lang/management/ManagementFactory.h +++ b/libjava/java/lang/management/ManagementFactory.h @@ -14,6 +14,7 @@ extern "Java" namespace management { class MBeanServer; + class MBeanServerConnection; } } } @@ -33,6 +34,7 @@ public: static ::java::util::List * getMemoryManagerMXBeans(); static ::java::util::List * getGarbageCollectorMXBeans(); static ::javax::management::MBeanServer * getPlatformMBeanServer(); + static ::java::lang::Object * newPlatformMXBeanProxy(::javax::management::MBeanServerConnection *, ::java::lang::String *, ::java::lang::Class *); static ::java::lang::String * CLASS_LOADING_MXBEAN_NAME; static ::java::lang::String * COMPILATION_MXBEAN_NAME; static ::java::lang::String * GARBAGE_COLLECTOR_MXBEAN_DOMAIN_TYPE; diff --git a/libjava/java/lang/management/MonitorInfo.h b/libjava/java/lang/management/MonitorInfo.h new file mode 100644 index 0000000..6d2a0f0 --- /dev/null +++ b/libjava/java/lang/management/MonitorInfo.h @@ -0,0 +1,39 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __java_lang_management_MonitorInfo__ +#define __java_lang_management_MonitorInfo__ + +#pragma interface + +#include <java/lang/management/LockInfo.h> +extern "Java" +{ + namespace javax + { + namespace management + { + namespace openmbean + { + class CompositeData; + } + } + } +} + +class java::lang::management::MonitorInfo : public ::java::lang::management::LockInfo +{ + +public: + MonitorInfo(::java::lang::String *, jint, jint, ::java::lang::StackTraceElement *); + static ::java::lang::management::MonitorInfo * from(::javax::management::openmbean::CompositeData *); + virtual jint getLockedStackDepth(); + virtual ::java::lang::StackTraceElement * getLockedStackFrame(); +private: + jint __attribute__((aligned(__alignof__( ::java::lang::management::LockInfo)))) stackDepth; + ::java::lang::StackTraceElement * stackFrame; +public: + static ::java::lang::Class class$; +}; + +#endif // __java_lang_management_MonitorInfo__ diff --git a/libjava/java/lang/management/OperatingSystemMXBean.h b/libjava/java/lang/management/OperatingSystemMXBean.h index adb562c..bbf3707 100644 --- a/libjava/java/lang/management/OperatingSystemMXBean.h +++ b/libjava/java/lang/management/OperatingSystemMXBean.h @@ -15,6 +15,7 @@ public: virtual ::java::lang::String * getArch() = 0; virtual jint getAvailableProcessors() = 0; virtual ::java::lang::String * getName() = 0; + virtual jdouble getSystemLoadAverage() = 0; virtual ::java::lang::String * getVersion() = 0; static ::java::lang::Class class$; } __attribute__ ((java_interface)); diff --git a/libjava/java/lang/management/ThreadInfo.h b/libjava/java/lang/management/ThreadInfo.h index a06b99c..c3902b3 100644 --- a/libjava/java/lang/management/ThreadInfo.h +++ b/libjava/java/lang/management/ThreadInfo.h @@ -29,13 +29,19 @@ class java::lang::management::ThreadInfo : public ::java::lang::Object { ThreadInfo(::java::lang::Thread *, jlong, jlong, ::java::lang::Object *, ::java::lang::Thread *, jlong, jlong, jboolean, jboolean, JArray< ::java::lang::StackTraceElement * > *); + ThreadInfo(::java::lang::Thread *, jlong, jlong, ::java::lang::Object *, ::java::lang::Thread *, jlong, jlong, jboolean, jboolean, JArray< ::java::lang::StackTraceElement * > *, JArray< ::java::lang::management::MonitorInfo * > *, JArray< ::java::lang::management::LockInfo * > *); ThreadInfo(jlong, ::java::lang::String *, ::java::lang::Thread$State *, jlong, jlong, ::java::lang::String *, jlong, ::java::lang::String *, jlong, jlong, jboolean, jboolean, JArray< ::java::lang::StackTraceElement * > *); + ThreadInfo(jlong, ::java::lang::String *, ::java::lang::Thread$State *, jlong, jlong, ::java::lang::String *, jlong, ::java::lang::String *, jlong, jlong, jboolean, jboolean, JArray< ::java::lang::StackTraceElement * > *, JArray< ::java::lang::management::MonitorInfo * > *, JArray< ::java::lang::management::LockInfo * > *); public: // actually package-private static void checkAttribute(::javax::management::openmbean::CompositeType *, ::java::lang::String *, ::javax::management::openmbean::OpenType *); + static ::javax::management::openmbean::CompositeType * getStackTraceType(); public: static ::java::lang::management::ThreadInfo * from(::javax::management::openmbean::CompositeData *); virtual jlong getBlockedCount(); virtual jlong getBlockedTime(); + virtual JArray< ::java::lang::management::MonitorInfo * > * getLockedMonitors(); + virtual JArray< ::java::lang::management::LockInfo * > * getLockedSynchronizers(); + virtual ::java::lang::management::LockInfo * getLockInfo(); virtual ::java::lang::String * getLockName(); virtual jlong getLockOwnerId(); virtual ::java::lang::String * getLockOwnerName(); @@ -49,6 +55,7 @@ public: virtual jboolean isSuspended(); virtual ::java::lang::String * toString(); private: + jboolean isThreadBlocked(); jlong __attribute__((aligned(__alignof__( ::java::lang::Object)))) threadId; ::java::lang::String * threadName; ::java::lang::Thread$State * threadState; @@ -62,7 +69,10 @@ private: jboolean isInNative__; jboolean isSuspended__; JArray< ::java::lang::StackTraceElement * > * trace; + JArray< ::java::lang::management::MonitorInfo * > * lockedMonitors; + JArray< ::java::lang::management::LockInfo * > * lockedSynchronizers; static ::java::lang::management::ThreadMXBean * bean; + static ::javax::management::openmbean::CompositeType * seType; public: static ::java::lang::Class class$; }; diff --git a/libjava/java/lang/management/ThreadMXBean.h b/libjava/java/lang/management/ThreadMXBean.h index a160b08..a1d4636 100644 --- a/libjava/java/lang/management/ThreadMXBean.h +++ b/libjava/java/lang/management/ThreadMXBean.h @@ -14,6 +14,8 @@ class java::lang::management::ThreadMXBean : public ::java::lang::Object { public: + virtual JArray< ::java::lang::management::ThreadInfo * > * dumpAllThreads(jboolean, jboolean) = 0; + virtual JArray< jlong > * findDeadlockedThreads() = 0; virtual JArray< jlong > * findMonitorDeadlockedThreads() = 0; virtual JArray< jlong > * getAllThreadIds() = 0; virtual jlong getCurrentThreadCpuTime() = 0; @@ -24,11 +26,14 @@ public: virtual jlong getThreadCpuTime(jlong) = 0; virtual ::java::lang::management::ThreadInfo * getThreadInfo(jlong) = 0; virtual JArray< ::java::lang::management::ThreadInfo * > * getThreadInfo(JArray< jlong > *) = 0; + virtual JArray< ::java::lang::management::ThreadInfo * > * getThreadInfo(JArray< jlong > *, jboolean, jboolean) = 0; virtual ::java::lang::management::ThreadInfo * getThreadInfo(jlong, jint) = 0; virtual JArray< ::java::lang::management::ThreadInfo * > * getThreadInfo(JArray< jlong > *, jint) = 0; virtual jlong getThreadUserTime(jlong) = 0; virtual jlong getTotalStartedThreadCount() = 0; virtual jboolean isCurrentThreadCpuTimeSupported() = 0; + virtual jboolean isObjectMonitorUsageSupported() = 0; + virtual jboolean isSynchronizerUsageSupported() = 0; virtual jboolean isThreadContentionMonitoringEnabled() = 0; virtual jboolean isThreadContentionMonitoringSupported() = 0; virtual jboolean isThreadCpuTimeEnabled() = 0; |