diff options
author | Matthias Klose <doko@gcc.gnu.org> | 2007-06-03 23:18:43 +0000 |
---|---|---|
committer | Matthias Klose <doko@gcc.gnu.org> | 2007-06-03 23:18:43 +0000 |
commit | e1bea0c0687c5f4551b3a6058ec37ce3705fa6cc (patch) | |
tree | a9c9e7d91c484d53fe154f9285fc57325572ce50 /libjava/java/lang | |
parent | af333b9a7f9e1cc1029bec56d48f2de63acdf686 (diff) | |
download | gcc-e1bea0c0687c5f4551b3a6058ec37ce3705fa6cc.zip gcc-e1bea0c0687c5f4551b3a6058ec37ce3705fa6cc.tar.gz gcc-e1bea0c0687c5f4551b3a6058ec37ce3705fa6cc.tar.bz2 |
libjava/classpath/ChangeLog.gcj:
2007-05-31 Matthias Klose <doko@ubuntu.com>
* javax/management/NotificationBroadcasterSupport.java
(getNotificationInfo): Add cast.
* native/jni/qt-peer/Makefile.am (AM_CXXFLAGS): Add libstdc++ include
directories.
* native/jni/qt-peer/Makefile.in: Regenerate.
libjava/ChangeLog:
2007-06-03 Matthias Klose <doko@ubuntu.com>
* java/io/natFileWin32.cc (setFilePermissions): New (stub only).
_access: Handle EXEC query, stub only.
2007-06-03 Matthias Klose <doko@ubuntu.com>
Merged from classpath:
* gnu/java/nio/SelectorProviderImpl.java: Whitespace merge.
* java/lang/System.java(inheritedChannel): New.
* java/lang/Character.java: Remove stray`;'.
* java/net/MulticastSocket.java: Merged.
* java/text/DateFormatSymbols.java(getInstance): New, comment updates.
* java/text/Collator.java(getInstance): Merged.
* java/util/Calendar.java: New attributes ALL_STYLES, SHORT, LONG.
getDisplayName, getDisplayNames: New.
* java/util/logging/Logger.java: Merged.
* Regenerate .class and .h files.
2007-06-03 Matthias Klose <doko@ubuntu.com>
* java/io/File.java: Merge with classpath-0.95, new method
setFilePermissions, new attribute EXEC.
* java/io/natFilePosix.cc (setFilePermissions): New.
_access: Handle EXEC query.
* classpath/lib/java/io/File.class, java/io/File.h: Regenerate.
2007-06-03 Matthias Klose <doko@ubuntu.com>
Imported GNU Classpath 0.95.
* classpath/Makefile.in,
classpath/native/jni/midi-dssi/Makefile.in,
classpath/native/jni/classpath/Makefile.in,
classpath/native/jni/Makefile.in,
classpath/native/jni/gconf-peer/Makefile.in,
classpath/native/jni/java-io/Makefile.in,
classpath/native/jni/native-lib/Makefile.in,
classpath/native/jni/java-util/Makefile.in,
classpath/native/jni/midi-alsa/Makefile.in,
classpath/native/jni/java-lang/Makefile.in,
classpath/native/jni/java-nio/Makefile.in,
classpath/native/jni/java-net/Makefile.in,
classpath/native/jni/xmlj/Makefile.in,
classpath/native/jni/qt-peer/Makefile.in,
classpath/native/jni/gtk-peer/Makefile.in,
classpath/native/Makefile.in, classpath/native/jawt/Makefile.in,
classpath/native/fdlibm/Makefile.in,
classpath/native/plugin/Makefile.in,
classpath/resource/Makefile.in, classpath/scripts/Makefile.in,
classpath/tools/Makefile.in, classpath/doc/Makefile.in,
classpath/doc/api/Makefile.in, classpath/lib/Makefile.in,
classpath/external/Makefile.in, classpath/external/jsr166/Makefile.in,
classpath/external/sax/Makefile.in,
classpath/external/w3c_dom/Makefile.in,
classpath/external/relaxngDatatype/Makefile.in,
classpath/include/Makefile.in,
classpath/examples/Makefile.in: Regenerate.
* classpath/config.guess, classpath/config.sub,
classpath/ltmain.sh : Update.
* classpath/configure, classpath/depcomp, classpath/missing,
classpath/aclocal.m4, classpath/install-sh: Regenerate.
* gnu/classpath/Configuration.java (CLASSPATH_VERSION): Now 0.95.
* sources.am: Regenerate.
* Makefile.in: Regenerate.
* Update the .class files and generated CNI header files, add new
.class and generated CNI header files.
* Remove generated files for removed java source files:
classpath/gnu/java/net/BASE64.java,
classpath/gnu/java/security/util/Base64.java,
classpath/gnu/java/awt/peer/gtk/GThreadMutex.java,
classpath/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java,
classpath/gnu/java/awt/font/autofit/Scaler.java,
classpath/gnu/classpath/jdwp/util/Value.java,
classpath/gnu/javax/net/ssl/Base64.java.
* Remove empty directories.
* Makefile.am(nat_source_files): Add natVMOperatingSystemMXBeanImpl.cc.
* java/lang/Class.java(setAccessible): Merge from classpath.
* java/util/Locale.java: Remove.
* gnu/java/lang/management/VMOperatingSystemMXBeanImpl.java,
gnu/java/lang/management/natVMOperatingSystemMXBeanImpl.cc: New.
* gcj/javaprims.h: Update class declarations.
* scripts/classes.pl: Update usage.
* HACKING: Mention to build all peers.
From-SVN: r125302
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; |