File: Connection.html

package info (click to toggle)
tom 1.1.1-2
  • links: PTS
  • area: main
  • in suites: potato
  • size: 6,340 kB
  • ctags: 2,244
  • sloc: objc: 27,863; ansic: 9,804; sh: 7,411; yacc: 3,377; lex: 966; asm: 208; makefile: 62; cpp: 10
file content (208 lines) | stat: -rw-r--r-- 8,480 bytes parent folder | download
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
<html><head><title>File too/Connection</title></head>
<body BGCOLOR="#ffffff" TEXT="#000000" LINK="#000000" VLINK="#000000">
<h1>File too/Connection</h1>
<hr><h2>class <a href="index.html">too</a>.<a name="Connection" href="#i_Connection">Connection</a></h2>
<h3>Inherits</h3>
<dl>
<dt>State supers
<dd><a href="../tom/index.html">tom</a>.<a href="../tom/State.html#State">State</a>, <a href="DescriptorDelegate.html#DescriptorReadDelegate">DescriptorReadDelegate</a>, <a href="../tom/index.html">tom</a>.<a href="../tom/Constants.html#Constants">Constants</a>
</dl>
<h3>variables</h3>
<dl>
<dt><b><code>
static <a href="../tom/index.html">tom</a>.<a href="../tom/EqSet.html#MutableEqSet">MutableEqSet</a> all_connections;</code></b>
<dd>All connection objects.

</dl>
<h3>methods</h3>
<dl><dt><b><pre>instance (id)
  alloc;
</pre></b><dd>
Store the new connection in the <code>all_connections</code>.
<p><dt><b><pre>void
       connection <a href="Connection.html#Connection">Connection</a> connection
  remoteProxyDead int identity
pre
  !!all_connections[connection];
</pre></b><dd>
Pass this message to the <code>connection</code>.
<p></dl><h2>instance <a href="index.html">too</a>.<a name="i_Connection" href="#Connection">Connection</a></h2>
<h3>variables</h3>
<dl>
<dt><b><code>
public <a href="../../too/_builtin_/index.html">_builtin_</a>.<a href="../../too/_builtin_/_builtin_.html#Any">Any</a> root;</code></b>
<dd>The root object of this connection.

<dt><b><code>
public <a href="ports.html#Port">Port</a> port;</code></b>
<dd>The Port serving this connection.

<dt><b><code>
<a href="../tom/index.html">tom</a>.<a href="../tom/EqDictionary.html#MutableEqDictionary">MutableEqDictionary</a> local_objects;</code></b>
<dd>The set of local proxies, keyed on their local object.

<dt><b><code>
<a href="../tom/index.html">tom</a>.<a href="../tom/IntDictionary.html#MutableIntDictionary">MutableIntDictionary</a> local_proxies;</code></b>
<dd>The set of local proxies, keyed on their identity.

<dt><b><code>
<a href="../tom/index.html">tom</a>.<a href="../tom/IntDictionary.html#MutableIntDictionary">MutableIntDictionary</a> remote_proxies;</code></b>
<dd>The set of remote proxies, keyed on their identity.

<dt><b><code>
<a href="../tom/index.html">tom</a>.<a href="../tom/MutableIntArray.html#MutableIntArray">MutableIntArray</a> unreported_deaths;</code></b>
<dd>The set of remote proxy identities that are dead here and which
      need to be sent to the other side.

<dt><b><code>
int last_proxy_ident;</code></b>
<dd>The last number used as a local proxy identity.

</dl>
<h3>methods</h3>
<dl><dt><b><pre>id (self)
  initWithPort <a href="ports.html#Port">Port</a> p;
</pre></b><dd>
Designated initializer.
<p><dt><b><pre>protected <a href="../tom/index.html">tom</a>.<a href="../tom/IntDictionary.html#IntDictionary">IntDictionary</a>
  local_proxies;
</pre></b><dd>
Other connections may inspect our proxies.
<p><dt><b><pre><a href="../../too/_builtin_/index.html">_builtin_</a>.<a href="../../too/_builtin_/_builtin_.html#Any">Any</a> (object)
  localObject int identity
post
  object != nil;
</pre></b><dd>
Return the local object identified by the <code>identity</code> to the other
    side.
<p><dt><b><pre><a href="Proxy.html#Proxy">Proxy</a>
  localProxyFor <a href="../tom/index.html">tom</a>.<a href="../tom/All.html#All">All</a> object
pre
  object != nil;
</pre></b><dd>
Return the local proxy to identify the local <code>object</code>.
<p><dt><b><pre><a href="../../too/_builtin_/index.html">_builtin_</a>.<a href="../../too/_builtin_/_builtin_.html#Any">Any</a>
  remoteObject int identity;
</pre></b><dd>
Return the remote object identified by the <code>identity</code> by the other
    side.
<p></dl><h4>Distributed Garbage Collection</h4>
<dl><dt><b><pre>void
  localProxyRelease int identity
pre
  !!local_proxies[identity];
</pre></b><dd>
Be informed that the local proxy with the <code>identity</code> has one less
    remote proxy to care for.  If that number reaches zero, the local
    proxy object is removed.
<p><dt><b><pre>void
  remoteProxyDead int identity;
</pre></b><dd>
By informed (by our remote proxy with the <code>identity</code>) of the GC
    death of a remote proxy.
<p>    Note that this method is invoked during GC and that no new objects
    should be allocated.
<p></dl><hr><h2>class <a href="index.html">too</a>.<a name="ServerConnection" href="#i_ServerConnection">ServerConnection</a></h2>
<h3>Inherits</h3>
<dl>
<dt>State supers
<dd><a href="Connection.html#Connection">Connection</a>
</dl>
<h2>instance <a href="index.html">too</a>.<a name="i_ServerConnection" href="#ServerConnection">ServerConnection</a></h2>
<h3>variables</h3>
<dl>
<dt><b><code>
redeclare <a href="ports.html#ServerPort">ServerPort</a> port;</code></b>
<dd>Our <code>port</code> is only here for accepting connections.

</dl>
<h3>methods</h3>
<dl><dt><b><pre>id (self)
  initWithPort <a href="ports.html#ServerPort">ServerPort</a> p;
</pre></b><dd>
Designated initializer.
<p><dt><b><pre>void
  set_root <a href="../tom/index.html">tom</a>.<a href="../tom/All.html#All">All</a> r;
</pre></b><dd>
Undocumented.
<p><dt><b><pre>void
  readEventOnDescriptor <a href="inet.html#ServerInetPort">ServerInetPort</a> p;
</pre></b><dd>
Instantiate another <b><code><a href="Connection.html#ConnectedConnection">ConnectedConnection</a></b></code>.
<p></dl><hr><h2>class <a href="index.html">too</a>.<a name="ConnectedConnection" href="#i_ConnectedConnection">ConnectedConnection</a></h2>
<h3>Inherits</h3>
<dl>
<dt>State supers
<dd><a href="Connection.html#Connection">Connection</a>, <a href="DescriptorDelegate.html#DescriptorWriteDelegate">DescriptorWriteDelegate</a>, <a href="../tom/index.html">tom</a>.<a href="../tom/Conditions.html#Conditions">Conditions</a>
</dl>
<h2>instance <a href="index.html">too</a>.<a name="i_ConnectedConnection" href="#ConnectedConnection">ConnectedConnection</a></h2>
<h3>variables</h3>
<dl>
<dt><b><code>
redeclare <a href="ports.html#ConnectedPort">ConnectedPort</a> port;</code></b>
<dd>We are actually connected.

<dt><b><code>
<a href="PortDecoder.html#PortDecoder">PortDecoder</a> decoder;</code></b>
<dd>Our decoder.

<dt><b><code>
<a href="PortEncoder.html#PortEncoder">PortEncoder</a> encoder;</code></b>
<dd>Our encoder.

<dt><b><code>
<a href="Connection.html#ServerConnection">ServerConnection</a> master;</code></b>
<dd>If we're a slave connection (i.e. the working part for a published
      connection), this is the published server connection.

<dt><b><code>
boolean invalid;</code></b>
<dd>Iff <code>TRUE</code>, we've lost the connection.

</dl>
<h3>methods</h3>
<dl><dt><b><pre>id (self)
  initWithPort <a href="ports.html#ConnectedPort">ConnectedPort</a> p;
</pre></b><dd>
Initializer for a client connection.
<p><dt><b><pre>id (self)
  initWithPort <a href="ports.html#ConnectedPort">ConnectedPort</a> p
           for <a href="Connection.html#ServerConnection">ServerConnection</a> server;
</pre></b><dd>
Initializer for a slave connection, i.e. a slave to the <code>server</code>
    connection.
<p><dt><b><pre>protected void
  initDetails;
</pre></b><dd>
Do part of the work for either initializer.
<p><dt><b><pre>void
  invalidate;
</pre></b><dd>
Undocumented.
<p><dt><b><pre><a href="ports.html#ConnectedPort">ConnectedPort</a>
  port;
</pre></b><dd>
Undocumented.
<p><dt><b><pre><a href="../../too/_builtin_/index.html">_builtin_</a>.<a href="../../too/_builtin_/_builtin_.html#Any">Any</a>
  localObject int identity;
</pre></b><dd>
Forward to the <code>master</code> if we have one.
<p><dt><b><pre><a href="Proxy.html#Proxy">Proxy</a>
  localProxyFor <a href="../tom/index.html">tom</a>.<a href="../tom/All.html#All">All</a> object;
</pre></b><dd>
Forward to the <code>master</code> if we have one.
<p><dt><b><pre>void
  localProxyRelease int identity
pre
  !!master -> !![master local_proxies][identity];
</pre></b><dd>
Forward to the <code>master</code> if we have one.
<p><dt><b><pre><a href="../tom/index.html">tom</a>.<a href="../tom/InvocationResult.html#InvocationResult">InvocationResult</a>
  forward <a href="../tom/index.html">tom</a>.<a href="../tom/Invocation.html#Invocation">Invocation</a> invocation;
</pre></b><dd>
Forward the <code>invocation</code> to the other side.
<p><dt><b><pre>void
  readEventOnDescriptor <a href="inet.html#ConnectedInetPort">ConnectedInetPort</a> p;
</pre></b><dd>
Undocumented.
<p></dl><hr><address>Generated by tm 1.01.</address></body></html>