throwit.java: New file.
* libjava.jni/throwit.java: New file. * libjava.jni/throwit.c: New file. * libjava.jni/throwit.out: New file. From-SVN: r32016
This commit is contained in:
parent
b32369e675
commit
5b0d59b4e7
4 changed files with 68 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2000-02-16 Tom Tromey <tromey@cygnus.com>
|
||||
|
||||
* libjava.jni/throwit.java: New file.
|
||||
* libjava.jni/throwit.c: New file.
|
||||
* libjava.jni/throwit.out: New file.
|
||||
|
||||
2000-02-15 Tom Tromey <tromey@cygnus.com>
|
||||
|
||||
* libjava.jni/findclass.java: New file
|
||||
|
|
25
libjava/testsuite/libjava.jni/throwit.c
Normal file
25
libjava/testsuite/libjava.jni/throwit.c
Normal file
|
@ -0,0 +1,25 @@
|
|||
#include <stdlib.h>
|
||||
#include <throwit.h>
|
||||
|
||||
void
|
||||
Java_throwit_throwit (JNIEnv *env, jclass klass, jstring name,
|
||||
jboolean is_new)
|
||||
{
|
||||
const char *buf = (*env)->GetStringUTFChars (env, name, NULL);
|
||||
jclass k = (*env)->FindClass (env, buf);
|
||||
(*env)->ReleaseStringUTFChars (env, name, buf);
|
||||
|
||||
if (k == NULL || (*env)->ExceptionCheck (env))
|
||||
return;
|
||||
|
||||
if (is_new)
|
||||
(*env)->ThrowNew (env, k, "the word is zardoz");
|
||||
else
|
||||
{
|
||||
jmethodID id = (*env)->GetMethodID (env, k, "<init>",
|
||||
"(Ljava.lang.String;)V");
|
||||
jstring z = (*env)->NewStringUTF (env, "zardoz is the word");
|
||||
jobject obj = (*env)->NewObject (env, k, id, z);
|
||||
(*env)->Throw (env, obj);
|
||||
}
|
||||
}
|
33
libjava/testsuite/libjava.jni/throwit.java
Normal file
33
libjava/testsuite/libjava.jni/throwit.java
Normal file
|
@ -0,0 +1,33 @@
|
|||
// Test to see if throw works.
|
||||
|
||||
public class throwit
|
||||
{
|
||||
static
|
||||
{
|
||||
System.loadLibrary ("throwit");
|
||||
}
|
||||
|
||||
public static native void throwit (String name, boolean is_new);
|
||||
|
||||
public static void main (String[] args)
|
||||
{
|
||||
try
|
||||
{
|
||||
throwit ("java/lang/UnknownError", false);
|
||||
}
|
||||
catch (Throwable x)
|
||||
{
|
||||
System.out.println (x.getClass ());
|
||||
System.out.println (x.getMessage ());
|
||||
}
|
||||
try
|
||||
{
|
||||
throwit ("java/lang/Throwable", true);
|
||||
}
|
||||
catch (Throwable x)
|
||||
{
|
||||
System.out.println (x.getClass ());
|
||||
System.out.println (x.getMessage ());
|
||||
}
|
||||
}
|
||||
}
|
4
libjava/testsuite/libjava.jni/throwit.out
Normal file
4
libjava/testsuite/libjava.jni/throwit.out
Normal file
|
@ -0,0 +1,4 @@
|
|||
class java.lang.UnknownError
|
||||
the word is zardoz
|
||||
class java.lang.Throwable
|
||||
zardoz is the word
|
Loading…
Add table
Reference in a new issue