-
Notifications
You must be signed in to change notification settings - Fork 1
/
IInvocationHandler.xml
131 lines (131 loc) · 8.79 KB
/
IInvocationHandler.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<Type Name="IInvocationHandler" FullName="Java.Lang.Reflect.IInvocationHandler">
<TypeSignature Language="C#" Value="public interface IInvocationHandler : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract beforefieldinit IInvocationHandler implements class Android.Runtime.IJavaObject, class Java.Interop.IJavaPeerable, class System.IDisposable" />
<TypeSignature Language="DocId" Value="T:Java.Lang.Reflect.IInvocationHandler" />
<TypeSignature Language="F#" Value="type IInvocationHandler = interface
 interface IJavaObject
 interface IDisposable
 interface IJavaPeerable" />
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Interfaces>
<Interface>
<InterfaceName>Android.Runtime.IJavaObject</InterfaceName>
</Interface>
<Interface>
<InterfaceName>Java.Interop.IJavaPeerable</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.IDisposable</InterfaceName>
</Interface>
</Interfaces>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("java/lang/reflect/InvocationHandler", "", "Java.Lang.Reflect.IInvocationHandlerInvoker")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("java/lang/reflect/InvocationHandler", "", "Java.Lang.Reflect.IInvocationHandlerInvoker")>]</AttributeName>
</Attribute>
</Attributes>
<Docs since="1">
<summary>
<c>InvocationHandler</c> is the interface implemented by
the <i>invocation handler</i> of a proxy instance.</summary>
<remarks>
<para>
<c>InvocationHandler</c> is the interface implemented by
the <i>invocation handler</i> of a proxy instance.</para>
<para>Each proxy instance has an associated invocation handler.
When a method is invoked on a proxy instance, the method
invocation is encoded and dispatched to the <c>invoke</c>
method of its invocation handler.</para>
<para>Added in 1.3.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/java/lang/reflect/InvocationHandler" title="Reference documentation">Java documentation for <code>java.lang.reflect.InvocationHandler</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 1" />
</Docs>
<Members>
<Member MemberName="Invoke">
<MemberSignature Language="C#" Value="public Java.Lang.Object? Invoke (Java.Lang.Object? proxy, Java.Lang.Reflect.Method? method, Java.Lang.Object[]? args);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Java.Lang.Object Invoke(class Java.Lang.Object proxy, class Java.Lang.Reflect.Method method, class Java.Lang.Object[] args) cil managed" />
<MemberSignature Language="DocId" Value="M:Java.Lang.Reflect.IInvocationHandler.Invoke(Java.Lang.Object,Java.Lang.Reflect.Method,Java.Lang.Object[])" />
<MemberSignature Language="F#" Value="abstract member Invoke : Java.Lang.Object * Java.Lang.Reflect.Method * Java.Lang.Object[] -> Java.Lang.Object" Usage="iInvocationHandler.Invoke (proxy, method, args)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("invoke", "(Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;", "GetInvoke_Ljava_lang_Object_Ljava_lang_reflect_Method_arrayLjava_lang_Object_Handler:Java.Lang.Reflect.IInvocationHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("invoke", "(Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;", "GetInvoke_Ljava_lang_Object_Ljava_lang_reflect_Method_arrayLjava_lang_Object_Handler:Java.Lang.Reflect.IInvocationHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Java.Lang.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="proxy" Type="Java.Lang.Object" />
<Parameter Name="method" Type="Java.Lang.Reflect.Method" />
<Parameter Name="args" Type="Java.Lang.Object[]" />
</Parameters>
<Docs>
<param name="proxy">the proxy instance that the method was invoked on</param>
<param name="method">the <c>Method</c> instance corresponding to
the interface method invoked on the proxy instance. The declaring
class of the <c>Method</c> object will be the interface that
the method was declared in, which may be a superinterface of the
proxy interface that the proxy class inherits the method through.</param>
<param name="args">an array of objects containing the values of the
arguments passed in the method invocation on the proxy instance,
or <c>null</c> if interface method takes no arguments.
Arguments of primitive types are wrapped in instances of the
appropriate primitive wrapper class, such as
<c>java.lang.Integer</c> or <c>java.lang.Boolean</c>.</param>
<summary>Processes a method invocation on a proxy instance and returns
the result.</summary>
<returns>the value to return from the method invocation on the
proxy instance. If the declared return type of the interface
method is a primitive type, then the value returned by
this method must be an instance of the corresponding primitive
wrapper class; otherwise, it must be a type assignable to the
declared return type. If the value returned by this method is
<c>null</c> and the interface method's return type is
primitive, then a <c>NullPointerException</c> will be
thrown by the method invocation on the proxy instance. If the
value returned by this method is otherwise not compatible with
the interface method's declared return type as described above,
a <c>ClassCastException</c> will be thrown by the method
invocation on the proxy instance.</returns>
<remarks>
<para>Processes a method invocation on a proxy instance and returns
the result. This method will be invoked on an invocation handler
when a method is invoked on a proxy instance that it is
associated with.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/java/lang/reflect/InvocationHandler#invoke(java.lang.Object,%20java.lang.reflect.Method,%20java.lang.Object[])" title="Reference documentation">Java documentation for <code>java.lang.reflect.InvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 1" />
<exception cref="T:Java.Lang.Throwable">the exception to throw from the invoked method on the proxy.
The exception must match one of the declared exception types
of the invoked method or any unchecked exception type. If not
then an <c>UndeclaredThrowableException</c> is thrown
</exception>
</Docs>
</Member>
</Members>
</Type>