JNI needs both the jmethodID and return type. Changed API to
authorrjw <rjw@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 17 Aug 2004 22:14:06 +0000 (22:14 +0000)
committerrjw <rjw@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 17 Aug 2004 22:14:06 +0000 (22:14 +0000)
        pass both.

        Reviewed by Chris.

        * Plugins.subproj/WebJavaPlugIn.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7279 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit/Plugins.subproj/WebJavaPlugIn.h

index 4fde3d29cfaf86d2c65d6251e0a2a2b81b4eeb97..1aa4aed1d1c6e2a8d0f9d716707e3acea5b0a8cc 100644 (file)
     access to Java VM via the plug-in.
 */
 
     access to Java VM via the plug-in.
 */
 
+typedef enum {
+    WebJNIReturnTypeInvalid = 0,
+    WebJNIReturnTypeVoid,
+    WebJNIReturnTypeObject,
+    WebJNIReturnTypeBoolean,
+    WebJNIReturnTypeByte,
+    WebJNIReturnTypeChar,
+    WebJNIReturnTypeShort,
+    WebJNIReturnTypeInt,
+    WebJNIReturnTypeLong,
+    WebJNIReturnTypeFloat,
+    WebJNIReturnTypeDouble
+} WebJNIReturnType;
+
 @interface NSObject (WebJavaPlugIn)
 
 /*!
 @interface NSObject (WebJavaPlugIn)
 
 /*!
 - (jobject)webPlugInGetApplet;
 
 /*!
 - (jobject)webPlugInGetApplet;
 
 /*!
-    @method webPlugInCallJava:withMethod:withArgs:
+    @method webPlugInCallJava:method:returnType:arguments:
     @param object The Java instance that will receive the method call.
     @param object The Java instance that will receive the method call.
+    @param method The ID of the Java method to call.
+    @param returnType The return type of the Java method.
     @param args The arguments to use with the method invocation.
     @param args The arguments to use with the method invocation.
-    @discussion Calls in the Java from native code should not make direct
-    use of JNI.  Instead they should use this method to dispatch call to the 
+    @discussion Calls to Java from native code should not make direct
+    use of JNI.  Instead they should use this method to dispatch calls to the 
     Java VM.  This is required to guarantee that the correct thread will receive
     Java VM.  This is required to guarantee that the correct thread will receive
-    the call.  webPlugInCallJava:withMethod:withArgs: must always be called from
+    the call.  webPlugInCallJava:method:returnType:arguments: must always be called from
     the AppKit main thread.  This method is only implemented by the Java plug-in.
     @result The result of the method invocation.
 */
     the AppKit main thread.  This method is only implemented by the Java plug-in.
     @result The result of the method invocation.
 */
-- (jvalue)webPlugInCallJava:(jobject)object withMethod:(jmethodID) withArgs:(jvalue*)args;
+- (jvalue)webPlugInCallJava:(jobject)object method:(jmethodID)method returnType:(WebJNIReturnType)returnType arguments:(jvalue*)args;
 
 @end
 
 @end