Skip to content

Commit b6a8984

Browse files
committed
update docs
1 parent 176986d commit b6a8984

39 files changed

+4662
-1019
lines changed

docs/12to13.html

Lines changed: 282 additions & 0 deletions
Large diffs are not rendered by default.

docs/Classes.html

Lines changed: 49 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,9 @@
4646
<li class="nav-group-name">
4747
<a class="nav-group-name-link" href="Guides.html">Guides</a>
4848
<ul class="nav-group-tasks">
49+
<li class="nav-group-task">
50+
<a class="nav-group-task-link" href="12to13.html">12to13</a>
51+
</li>
4952
<li class="nav-group-task">
5053
<a class="nav-group-task-link" href="faq.html">FAQ</a>
5154
</li>
@@ -66,15 +69,15 @@
6669
<li class="nav-group-task">
6770
<a class="nav-group-task-link" href="Classes/SocketAnyEvent.html">SocketAnyEvent</a>
6871
</li>
69-
<li class="nav-group-task">
70-
<a class="nav-group-task-link" href="Classes/SocketClientManager.html">SocketClientManager</a>
71-
</li>
7272
<li class="nav-group-task">
7373
<a class="nav-group-task-link" href="Classes/SocketEngine.html">SocketEngine</a>
7474
</li>
7575
<li class="nav-group-task">
7676
<a class="nav-group-task-link" href="Classes/SocketIOClient.html">SocketIOClient</a>
7777
</li>
78+
<li class="nav-group-task">
79+
<a class="nav-group-task-link" href="Classes/SocketManager.html">SocketManager</a>
80+
</li>
7881
</ul>
7982
</li>
8083
<li class="nav-group-name">
@@ -93,7 +96,7 @@
9396
<a class="nav-group-task-link" href="Enums/SocketIOClientOption.html">SocketIOClientOption</a>
9497
</li>
9598
<li class="nav-group-task">
96-
<a class="nav-group-task-link" href="Enums/SocketIOClientStatus.html">SocketIOClientStatus</a>
99+
<a class="nav-group-task-link" href="Enums/SocketIOStatus.html">SocketIOStatus</a>
97100
</li>
98101
<li class="nav-group-task">
99102
<a class="nav-group-task-link" href="Enums/SocketParsableError.html">SocketParsableError</a>
@@ -103,9 +106,15 @@
103106
<li class="nav-group-name">
104107
<a class="nav-group-name-link" href="Protocols.html">Protocols</a>
105108
<ul class="nav-group-tasks">
109+
<li class="nav-group-task">
110+
<a class="nav-group-task-link" href="Protocols/ConfigSettable.html">ConfigSettable</a>
111+
</li>
106112
<li class="nav-group-task">
107113
<a class="nav-group-task-link" href="Protocols/SocketData.html">SocketData</a>
108114
</li>
115+
<li class="nav-group-task">
116+
<a class="nav-group-task-link" href="Protocols/SocketDataBufferable.html">SocketDataBufferable</a>
117+
</li>
109118
<li class="nav-group-task">
110119
<a class="nav-group-task-link" href="Protocols/SocketEngineClient.html">SocketEngineClient</a>
111120
</li>
@@ -124,6 +133,9 @@
124133
<li class="nav-group-task">
125134
<a class="nav-group-task-link" href="Protocols/SocketLogger.html">SocketLogger</a>
126135
</li>
136+
<li class="nav-group-task">
137+
<a class="nav-group-task-link" href="Protocols/SocketManagerSpec.html">SocketManagerSpec</a>
138+
</li>
127139
<li class="nav-group-task">
128140
<a class="nav-group-task-link" href="Protocols/SocketParsable.html">SocketParsable</a>
129141
</li>
@@ -195,7 +207,8 @@ <h1>Classes</h1>
195207
<h4>Declaration</h4>
196208
<div class="language">
197209
<p class="aside-title">Swift</p>
198-
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">class</span> <span class="kt">SocketEngine</span> <span class="p">:</span> <span class="kt">NSObject</span><span class="p">,</span> <span class="kt">URLSessionDelegate</span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketEnginePollable.html">SocketEnginePollable</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketEngineWebsocket.html">SocketEngineWebsocket</a></span></code></pre>
210+
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">class</span> <span class="kt">SocketEngine</span> <span class="p">:</span> <span class="kt">NSObject</span><span class="p">,</span> <span class="kt">URLSessionDelegate</span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketEnginePollable.html">SocketEnginePollable</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketEngineWebsocket.html">SocketEngineWebsocket</a></span><span class="p">,</span>
211+
<span class="kt"><a href="Protocols/ConfigSettable.html">ConfigSettable</a></span></code></pre>
199212

200213
</div>
201214
</div>
@@ -319,19 +332,26 @@ <h4>Declaration</h4>
319332
<section class="section">
320333
<div class="pointer"></div>
321334
<div class="abstract">
322-
<p>The main class for SocketIOClientSwift.</p>
335+
<p>Represents a socket.io-client.</p>
323336

324-
<p><strong>NOTE</strong>: The client is not thread/queue safe, all interaction with the socket should be done on the <code>handleQueue</code></p>
337+
<p>Clients are created through a <code><a href="Classes/SocketManager.html">SocketManager</a></code>, which owns the <code><a href="Protocols/SocketEngineSpec.html">SocketEngineSpec</a></code> that controls the connection to the server.</p>
325338

326-
<p>Represents a socket.io-client. Most interaction with socket.io will be through this class.</p>
339+
<p>For example:</p>
340+
<pre class="highlight swift"><code><span class="c1">// Create a socket for the /swift namespace</span>
341+
<span class="k">let</span> <span class="nv">socket</span> <span class="o">=</span> <span class="n">manager</span><span class="o">.</span><span class="nf">socket</span><span class="p">(</span><span class="nv">forNamespace</span><span class="p">:</span> <span class="s">"/swift"</span><span class="p">)</span>
342+
343+
<span class="c1">// Add some handlers and connect</span>
344+
</code></pre>
345+
346+
<p><strong>NOTE</strong>: The client is not thread/queue safe, all interaction with the socket should be done on the <code>manager.handleQueue</code></p>
327347

328348
<a href="Classes/SocketIOClient.html" class="slightly-smaller">See more</a>
329349
</div>
330350
<div class="declaration">
331351
<h4>Declaration</h4>
332352
<div class="language">
333353
<p class="aside-title">Swift</p>
334-
<pre class="highlight"><code><span class="n">open</span> <span class="kd">class</span> <span class="kt">SocketIOClient</span> <span class="p">:</span> <span class="kt">NSObject</span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketIOClientSpec.html">SocketIOClientSpec</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketEngineClient.html">SocketEngineClient</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketParsable.html">SocketParsable</a></span></code></pre>
354+
<pre class="highlight"><code><span class="n">open</span> <span class="kd">class</span> <span class="kt">SocketIOClient</span> <span class="p">:</span> <span class="kt">NSObject</span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketIOClientSpec.html">SocketIOClientSpec</a></span></code></pre>
335355

336356
</div>
337357
</div>
@@ -377,40 +397,41 @@ <h4>Declaration</h4>
377397
<li class="item">
378398
<div>
379399
<code>
380-
<a name="/c:@M@SocketIO@objc(cs)SocketClientManager"></a>
381-
<a name="//apple_ref/swift/Class/SocketClientManager" class="dashAnchor"></a>
382-
<a class="token" href="#/c:@M@SocketIO@objc(cs)SocketClientManager">SocketClientManager</a>
400+
<a name="/c:@M@SocketIO@objc(cs)SocketManager"></a>
401+
<a name="//apple_ref/swift/Class/SocketManager" class="dashAnchor"></a>
402+
<a class="token" href="#/c:@M@SocketIO@objc(cs)SocketManager">SocketManager</a>
383403
</code>
384404
</div>
385405
<div class="height-container">
386406
<div class="pointer-container"></div>
387407
<section class="section">
388408
<div class="pointer"></div>
389409
<div class="abstract">
390-
<p>Experimental socket manager.</p>
391-
392-
<p>API subject to change.</p>
410+
<p>A manager for a socket.io connection.</p>
393411

394-
<p>Can be used to persist sockets across ViewControllers.</p>
412+
<p>A <code>SocketManager</code> is responsible for multiplexing multiple namespaces through a single <code><a href="Protocols/SocketEngineSpec.html">SocketEngineSpec</a></code>.</p>
395413

396-
<p>Sockets are strongly stored, so be sure to remove them once they are no
397-
longer needed.</p>
414+
<p>Example:</p>
415+
<pre class="highlight swift"><code><span class="k">let</span> <span class="nv">manager</span> <span class="o">=</span> <span class="kt">SocketManager</span><span class="p">(</span><span class="nv">socketURL</span><span class="p">:</span> <span class="kt">URL</span><span class="p">(</span><span class="nv">string</span><span class="p">:</span><span class="s">"http://localhost:8080/"</span><span class="p">)</span><span class="o">!</span><span class="p">)</span>
416+
<span class="k">let</span> <span class="nv">defaultNamespaceSocket</span> <span class="o">=</span> <span class="n">manager</span><span class="o">.</span><span class="n">defaultSocket</span>
417+
<span class="k">let</span> <span class="nv">swiftSocket</span> <span class="o">=</span> <span class="n">manager</span><span class="o">.</span><span class="nf">socket</span><span class="p">(</span><span class="nv">forNamespace</span><span class="p">:</span> <span class="s">"/swift"</span><span class="p">)</span>
398418

399-
<p>Example usage:</p>
400-
<pre class="highlight plaintext"><code>let manager = SocketClientManager.sharedManager
401-
manager["room1"] = socket1
402-
manager["room2"] = socket2
403-
manager.removeSocket(socket: socket2)
404-
manager["room1"]?.emit("hello")
419+
<span class="c1">// defaultNamespaceSocket and swiftSocket both share a single connection to the server</span>
405420
</code></pre>
406421

407-
<a href="Classes/SocketClientManager.html" class="slightly-smaller">See more</a>
422+
<p>Sockets created through the manager are retained by the manager. So at the very least, a single strong reference
423+
to the manager must be maintained to keep sockets alive.</p>
424+
425+
<p>To disconnect a socket and remove it from the manager, either call <code><a href="Classes/SocketIOClient.html#/c:@M@SocketIO@objc(cs)SocketIOClient(im)disconnect">SocketIOClient.disconnect()</a></code> on the socket,
426+
or call one of the <code>disconnectSocket</code> methods on this class.</p>
427+
428+
<a href="Classes/SocketManager.html" class="slightly-smaller">See more</a>
408429
</div>
409430
<div class="declaration">
410431
<h4>Declaration</h4>
411432
<div class="language">
412433
<p class="aside-title">Swift</p>
413-
<pre class="highlight"><code><span class="n">open</span> <span class="kd">class</span> <span class="kt">SocketClientManager</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
434+
<pre class="highlight"><code><span class="n">open</span> <span class="kd">class</span> <span class="kt">SocketManager</span> <span class="p">:</span> <span class="kt">NSObject</span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketManagerSpec.html">SocketManagerSpec</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketParsable.html">SocketParsable</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/SocketDataBufferable.html">SocketDataBufferable</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/ConfigSettable.html">ConfigSettable</a></span></code></pre>
414435

415436
</div>
416437
</div>
@@ -425,8 +446,8 @@ <h4>Declaration</h4>
425446
</article>
426447
</div>
427448
<section class="footer">
428-
<p>&copy; 2017 <a class="link" href="https://github.com/socketio/socket.io-client-swift" target="_blank" rel="external">Erik</a>. All rights reserved. (Last updated: 2017-10-05)</p>
429-
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.8.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
449+
<p>&copy; 2017 <a class="link" href="https://github.com/socketio/socket.io-client-swift" target="_blank" rel="external">Erik</a>. All rights reserved. (Last updated: 2017-11-12)</p>
450+
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
430451
</section>
431452
</body>
432453
</div>

docs/Classes/OnAckCallback.html

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@
4747
<li class="nav-group-name">
4848
<a class="nav-group-name-link" href="../Guides.html">Guides</a>
4949
<ul class="nav-group-tasks">
50+
<li class="nav-group-task">
51+
<a class="nav-group-task-link" href="../12to13.html">12to13</a>
52+
</li>
5053
<li class="nav-group-task">
5154
<a class="nav-group-task-link" href="../faq.html">FAQ</a>
5255
</li>
@@ -67,15 +70,15 @@
6770
<li class="nav-group-task">
6871
<a class="nav-group-task-link" href="../Classes/SocketAnyEvent.html">SocketAnyEvent</a>
6972
</li>
70-
<li class="nav-group-task">
71-
<a class="nav-group-task-link" href="../Classes/SocketClientManager.html">SocketClientManager</a>
72-
</li>
7373
<li class="nav-group-task">
7474
<a class="nav-group-task-link" href="../Classes/SocketEngine.html">SocketEngine</a>
7575
</li>
7676
<li class="nav-group-task">
7777
<a class="nav-group-task-link" href="../Classes/SocketIOClient.html">SocketIOClient</a>
7878
</li>
79+
<li class="nav-group-task">
80+
<a class="nav-group-task-link" href="../Classes/SocketManager.html">SocketManager</a>
81+
</li>
7982
</ul>
8083
</li>
8184
<li class="nav-group-name">
@@ -94,7 +97,7 @@
9497
<a class="nav-group-task-link" href="../Enums/SocketIOClientOption.html">SocketIOClientOption</a>
9598
</li>
9699
<li class="nav-group-task">
97-
<a class="nav-group-task-link" href="../Enums/SocketIOClientStatus.html">SocketIOClientStatus</a>
100+
<a class="nav-group-task-link" href="../Enums/SocketIOStatus.html">SocketIOStatus</a>
98101
</li>
99102
<li class="nav-group-task">
100103
<a class="nav-group-task-link" href="../Enums/SocketParsableError.html">SocketParsableError</a>
@@ -104,9 +107,15 @@
104107
<li class="nav-group-name">
105108
<a class="nav-group-name-link" href="../Protocols.html">Protocols</a>
106109
<ul class="nav-group-tasks">
110+
<li class="nav-group-task">
111+
<a class="nav-group-task-link" href="../Protocols/ConfigSettable.html">ConfigSettable</a>
112+
</li>
107113
<li class="nav-group-task">
108114
<a class="nav-group-task-link" href="../Protocols/SocketData.html">SocketData</a>
109115
</li>
116+
<li class="nav-group-task">
117+
<a class="nav-group-task-link" href="../Protocols/SocketDataBufferable.html">SocketDataBufferable</a>
118+
</li>
110119
<li class="nav-group-task">
111120
<a class="nav-group-task-link" href="../Protocols/SocketEngineClient.html">SocketEngineClient</a>
112121
</li>
@@ -125,6 +134,9 @@
125134
<li class="nav-group-task">
126135
<a class="nav-group-task-link" href="../Protocols/SocketLogger.html">SocketLogger</a>
127136
</li>
137+
<li class="nav-group-task">
138+
<a class="nav-group-task-link" href="../Protocols/SocketManagerSpec.html">SocketManagerSpec</a>
139+
</li>
128140
<li class="nav-group-task">
129141
<a class="nav-group-task-link" href="../Protocols/SocketParsable.html">SocketParsable</a>
130142
</li>
@@ -260,8 +272,8 @@ <h4>Parameters</h4>
260272
</article>
261273
</div>
262274
<section class="footer">
263-
<p>&copy; 2017 <a class="link" href="https://github.com/socketio/socket.io-client-swift" target="_blank" rel="external">Erik</a>. All rights reserved. (Last updated: 2017-10-05)</p>
264-
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.8.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
275+
<p>&copy; 2017 <a class="link" href="https://github.com/socketio/socket.io-client-swift" target="_blank" rel="external">Erik</a>. All rights reserved. (Last updated: 2017-11-12)</p>
276+
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
265277
</section>
266278
</body>
267279
</div>

0 commit comments

Comments
 (0)