119
|
1 |
Review all these *Client receiver methods. They should probably either
|
|
2 |
all be receivers, or none.
|
|
3 |
|
|
4 |
Maybe put auth-related stuff into its own structure inside Client,
|
|
5 |
instead of at Client's top level.
|
|
6 |
|
|
7 |
Replace inputControl with something like an enum.
|
|
8 |
|
|
9 |
Add a way to broadcast status information as negotiation happens or
|
|
10 |
disconnects occur. Possibly a new type of object that can be sent on
|
|
11 |
Recv along with stanzas. Or use sync.Cond to protect a state
|
|
12 |
variable.
|
|
13 |
|
|
14 |
Asynchronously updating Client.Features is not thread safe.
|
|
15 |
|
|
16 |
NewClient shouldn't be asynchronous.
|
|
17 |
|
|
18 |
Add a Reconnect() function.
|
|
19 |
|
|
20 |
Put roster and bind into separate packages, if possible.
|
|
21 |
|
|
22 |
Eliminate as many uses of Generic as possible.
|