|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.gudy.azureus2.pluginsimpl.local.ipc.IPCInterfaceImpl
public class IPCInterfaceImpl
Constructor Summary | |
---|---|
IPCInterfaceImpl(java.lang.Object _target)
Constructor for non-plugin providers |
|
IPCInterfaceImpl(PluginInitializer _plugin_initializer,
Plugin _target)
Constructor for real plugin based providers. |
Method Summary | |
---|---|
boolean |
canInvoke(java.lang.String methodName,
java.lang.Class<?>[] params)
|
boolean |
canInvoke(java.lang.String methodName,
java.lang.Object[] params)
Test for existance of IPC method - params as above |
protected java.lang.reflect.Method |
getMethod(java.lang.Object target,
java.lang.String methodName,
java.lang.Class<?>[] paramTypes)
|
protected java.lang.reflect.Method |
getMethod(java.lang.Object target,
java.lang.String methodName,
java.lang.Object[] params)
|
protected java.lang.Object |
getTarget()
|
java.lang.Object |
invoke(java.lang.String methodName,
java.lang.Object[] params)
This function will call the given method on the plugin. |
void |
unload()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public IPCInterfaceImpl(PluginInitializer _plugin_initializer, Plugin _target)
_plugin_initializer
- _target
- public IPCInterfaceImpl(java.lang.Object _target)
_target
- Method Detail |
---|
public boolean canInvoke(java.lang.String methodName, java.lang.Object[] params)
IPCInterface
canInvoke
in interface IPCInterface
public boolean canInvoke(java.lang.String methodName, java.lang.Class<?>[] params)
public java.lang.Object invoke(java.lang.String methodName, java.lang.Object[] params) throws IPCException
IPCInterface
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")
invoke
in interface IPCInterface
methodName
- the name of the Methods to be calledparams
- Parameters of the Method
IPCException
protected java.lang.reflect.Method getMethod(java.lang.Object target, java.lang.String methodName, java.lang.Object[] params) throws java.lang.Throwable
java.lang.Throwable
protected java.lang.reflect.Method getMethod(java.lang.Object target, java.lang.String methodName, java.lang.Class<?>[] paramTypes) throws java.lang.Throwable
java.lang.Throwable
protected java.lang.Object getTarget() throws IPCException
IPCException
public void unload()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |