-
Notifications
You must be signed in to change notification settings - Fork 0
/
ISocketFactory.xml
241 lines (241 loc) · 16.7 KB
/
ISocketFactory.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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
<Type Name="ISocketFactory" FullName="Org.Apache.Http.Conn.Schemes.ISocketFactory">
<TypeSignature Language="C#" Value="public interface ISocketFactory : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract beforefieldinit ISocketFactory implements class Android.Runtime.IJavaObject, class Java.Interop.IJavaPeerable, class System.IDisposable" />
<TypeSignature Language="DocId" Value="T:Org.Apache.Http.Conn.Schemes.ISocketFactory" />
<TypeSignature Language="F#" Value="type ISocketFactory = 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("org/apache/http/conn/scheme/SocketFactory", "", "Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("org/apache/http/conn/scheme/SocketFactory", "", "Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Runtime.Versioning.ObsoletedOSPlatform("android22.0", "This class is obsoleted in this android platform")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.Versioning.ObsoletedOSPlatform("android22.0", "This class is obsoleted in this android platform")>]</AttributeName>
</Attribute>
</Attributes>
<Docs since="1">
<summary>A factory for creating and connecting sockets.</summary>
<remarks>
<para>A factory for creating and connecting sockets.
The factory encapsulates the logic for establishing a socket connection.
<br/>
Both <c>java.lang.Object#equals(java.lang.Object) Object.equals()</c>
and <c>java.lang.Object#hashCode() Object.hashCode()</c>
must be overridden for the correct operation of some connection managers.</para>
<para>This member is deprecated. Please use <c>java.net.URL#openConnection</c> instead.
Please visit <see href="http://android-developers.blogspot.com/2011/09/androids-http-clients.html">this webpage</see>
for further details.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/org/apache/http/conn/scheme/SocketFactory" title="Reference documentation">Java documentation for <code>org.apache.http.conn.scheme.SocketFactory</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="ConnectSocket">
<MemberSignature Language="C#" Value="public Java.Net.Socket? ConnectSocket (Java.Net.Socket? sock, string? host, int port, Java.Net.InetAddress? localAddress, int localPort, Org.Apache.Http.Params.IHttpParams? params);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Java.Net.Socket ConnectSocket(class Java.Net.Socket sock, string host, int32 port, class Java.Net.InetAddress localAddress, int32 localPort, class Org.Apache.Http.Params.IHttpParams params) cil managed" />
<MemberSignature Language="DocId" Value="M:Org.Apache.Http.Conn.Schemes.ISocketFactory.ConnectSocket(Java.Net.Socket,System.String,System.Int32,Java.Net.InetAddress,System.Int32,Org.Apache.Http.Params.IHttpParams)" />
<MemberSignature Language="F#" Value="abstract member ConnectSocket : Java.Net.Socket * string * int * Java.Net.InetAddress * int * Org.Apache.Http.Params.IHttpParams -> Java.Net.Socket" Usage="iSocketFactory.ConnectSocket (sock, host, port, localAddress, localPort, params)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("connectSocket", "(Ljava/net/Socket;Ljava/lang/String;ILjava/net/InetAddress;ILorg/apache/http/params/HttpParams;)Ljava/net/Socket;", "GetConnectSocket_Ljava_net_Socket_Ljava_lang_String_ILjava_net_InetAddress_ILorg_apache_http_params_HttpParams_Handler:Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("connectSocket", "(Ljava/net/Socket;Ljava/lang/String;ILjava/net/InetAddress;ILorg/apache/http/params/HttpParams;)Ljava/net/Socket;", "GetConnectSocket_Ljava_net_Socket_Ljava_lang_String_ILjava_net_InetAddress_ILorg_apache_http_params_HttpParams_Handler:Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Runtime.Versioning.ObsoletedOSPlatform("android22.0")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.Versioning.ObsoletedOSPlatform("android22.0")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Java.Net.Socket</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="sock" Type="Java.Net.Socket" />
<Parameter Name="host" Type="System.String" />
<Parameter Name="port" Type="System.Int32" />
<Parameter Name="localAddress" Type="Java.Net.InetAddress" />
<Parameter Name="localPort" Type="System.Int32" />
<Parameter Name="params" Type="Org.Apache.Http.Params.IHttpParams" />
</Parameters>
<Docs>
<param name="sock">the socket to connect, as obtained from
<c>#createSocket createSocket</c>.
<c>null</c> indicates that a new socket
should be created and connected.</param>
<param name="host">the host to connect to</param>
<param name="port">the port to connect to on the host</param>
<param name="localAddress">the local address to bind the socket to, or
<c>null</c> for any</param>
<param name="localPort">the port on the local machine,
0 or a negative number for any</param>
<param name="params">additional <c>HttpParams parameters</c> for connecting</param>
<summary>Connects a socket to the given host.</summary>
<returns>the connected socket. The returned object may be different
from the <c>sock</c> argument if this factory supports
a layered protocol.</returns>
<remarks>
<para>Connects a socket to the given host.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/org/apache/http/conn/scheme/SocketFactory#connectSocket(java.net.Socket,%20java.lang.String,%20int,%20java.net.InetAddress,%20int,%20org.apache.http.params.HttpParams)" title="Reference documentation">Java documentation for <code>org.apache.http.conn.scheme.SocketFactory.connectSocket(java.net.Socket, java.lang.String, int, java.net.InetAddress, int, org.apache.http.params.HttpParams)</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.IO.IOException">if an I/O error occurs</exception>
<exception cref="T:Java.Net.UnknownHostException">if the IP address of the target host
can not be determined</exception>
<exception cref="T:Org.Apache.Http.Conn.ConnectTimeoutException">if the socket cannot be connected
within the time limit defined in the <c>params</c></exception>
</Docs>
</Member>
<Member MemberName="CreateSocket">
<MemberSignature Language="C#" Value="public Java.Net.Socket? CreateSocket ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Java.Net.Socket CreateSocket() cil managed" />
<MemberSignature Language="DocId" Value="M:Org.Apache.Http.Conn.Schemes.ISocketFactory.CreateSocket" />
<MemberSignature Language="F#" Value="abstract member CreateSocket : unit -> Java.Net.Socket" Usage="iSocketFactory.CreateSocket " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("createSocket", "()Ljava/net/Socket;", "GetCreateSocketHandler:Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("createSocket", "()Ljava/net/Socket;", "GetCreateSocketHandler:Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Runtime.Versioning.ObsoletedOSPlatform("android22.0")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.Versioning.ObsoletedOSPlatform("android22.0")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Java.Net.Socket</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Creates a new, unconnected socket.</summary>
<returns>a new socket</returns>
<remarks>
<para>Creates a new, unconnected socket.
The socket should subsequently be passed to
<c>#connectSocket connectSocket</c>.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/org/apache/http/conn/scheme/SocketFactory#createSocket()" title="Reference documentation">Java documentation for <code>org.apache.http.conn.scheme.SocketFactory.createSocket()</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.IO.IOException">if an I/O error occurs while creating the socket
</exception>
</Docs>
</Member>
<Member MemberName="IsSecure">
<MemberSignature Language="C#" Value="public bool IsSecure (Java.Net.Socket? sock);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IsSecure(class Java.Net.Socket sock) cil managed" />
<MemberSignature Language="DocId" Value="M:Org.Apache.Http.Conn.Schemes.ISocketFactory.IsSecure(Java.Net.Socket)" />
<MemberSignature Language="F#" Value="abstract member IsSecure : Java.Net.Socket -> bool" Usage="iSocketFactory.IsSecure sock" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("isSecure", "(Ljava/net/Socket;)Z", "GetIsSecure_Ljava_net_Socket_Handler:Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("isSecure", "(Ljava/net/Socket;)Z", "GetIsSecure_Ljava_net_Socket_Handler:Org.Apache.Http.Conn.Schemes.ISocketFactoryInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Runtime.Versioning.ObsoletedOSPlatform("android22.0")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.Versioning.ObsoletedOSPlatform("android22.0")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="sock" Type="Java.Net.Socket" />
</Parameters>
<Docs>
<param name="sock">the connected socket to check</param>
<summary>Checks whether a socket provides a secure connection.</summary>
<returns>
<c>true</c> if the connection of the socket
should be considered secure, or
<c>false</c> if it should not</returns>
<remarks>
<para>Checks whether a socket provides a secure connection.
The socket must be <c>#connectSocket connected</c>
by this factory.
The factory will <i>not</i> perform I/O operations
in this method.
<br/>
As a rule of thumb, plain sockets are not secure and
TLS/SSL sockets are secure. However, there may be
application specific deviations. For example, a plain
socket to a host in the same intranet ("trusted zone")
could be considered secure. On the other hand, a
TLS/SSL socket could be considered insecure based on
the cypher suite chosen for the connection.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/org/apache/http/conn/scheme/SocketFactory#isSecure(java.net.Socket)" title="Reference documentation">Java documentation for <code>org.apache.http.conn.scheme.SocketFactory.isSecure(java.net.Socket)</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.IllegalArgumentException">if the argument is invalid, for example because it is
not a connected socket or was created by a different
socket factory.
Note that socket factories are <format type="text/html"><i>not</i></format> required to
check these conditions, they may simply return a default
value when called with an invalid socket argument.
</exception>
</Docs>
</Member>
</Members>
</Type>