org.gudy.azureus2.plugins.ipc
Interface IPCInterface

All Known Implementing Classes:
IPCInterfaceImpl

public interface IPCInterface

Author:
Damokles

Method Summary
 boolean canInvoke(java.lang.String methodName, java.lang.Object[] params)
          Test for existance of IPC method - params as above
 java.lang.Object invoke(java.lang.String methodName, java.lang.Object[] params)
          This function will call the given method on the plugin.
 

Method Detail

invoke

java.lang.Object invoke(java.lang.String methodName,
                        java.lang.Object[] params)
                        throws IPCException
This function will call the given method on the plugin. This function allows direct method calls to the plugin using Java Reflection API. Primitives like int, boolean need to be wrapped in their Objects (int -> Integer).

Results will be returned as Object and can be classcasted.

WARNING: only call Methods that use Java or Azureus Classes the use of custom classes may cause problems.

Examples:

1. Plugin has method int add (int x, int y);

 int result = ((Integer)invoke ("add", new Object[] {Integer.valueOf(10),Integer.valueOf(5)}).intValue();
 //result (15)
 
2. Plugin has method String randomize (String x);
 String result = (String)invoke("randomize", new Object[]{"foobar"});
 //result ("bfaoro")
 

Parameters:
methodName - the name of the Methods to be called
params - Parameters of the Method
Returns:
returns the result of the method
Throws:
IPCException

canInvoke

boolean canInvoke(java.lang.String methodName,
                  java.lang.Object[] params)
Test for existance of IPC method - params as above

Parameters:
methodName -
params -
Returns: