ObjFW  All files named "src/OFStreamObserver.h"

History for src/OFStreamObserver.h

2014-01-28
22:50
Deleted: Rename OFStreamObserver -> OFKernelEventObserver check-in: [96e20b8093] user: js, branch: trunk, size: 0
2014-01-25
19:33
Move socket includes and helpers to separate files

The new file socket.h includes all headers required for sockets on the
used platform, while the file socket_helpers.h defines the BSD API
functions to the platform specific functions if necessary.

This cleans up the classes dealing with sockets a lot and also reduces
code duplication. file: [268952c0f7] check-in: [81d47f4398] user: js, branch: trunk, size: 5771 [annotate] [blame] [check-ins using] [diff]

2014-01-16
23:09
Add of_time_interval_t.

This is used instead for time intervals now instead of doubles. file: [de0e796056] check-in: [dc31ce3d34] user: js, branch: trunk, size: 6000 [annotate] [blame] [check-ins using] [diff]

2014-01-04
00:24
Update copyright. file: [1c16f3d3a2] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 5988 [annotate] [blame] [check-ins using] [diff]
2013-08-15
19:00
Move private methods into private headers. file: [5f262f5416] check-in: [1d7a1cbca0] user: js, branch: trunk, size: 5982 [annotate] [blame] [check-ins using] [diff]
2013-06-11
23:33
Initial sockets support for the Wii.

Not functional yet due to bugs in the SDK.
Bugs found so far:

* Binding to port 0 fails instead of choosing a free port.
* gethostbyname() does not work for IPs.
* getsockname() is missing.
* struct sockaddr_storage is missing.

I have not decided yet whether I fix those bugs in the SDK (I already
implemented getsockname() and added struct sockaddr_stroage and it seems
to work) or if I work around them in ObjFW. This will mainly depend on
how cooperative the developers of the Wii SDK are. file: [1ad6295688] check-in: [ffb91daffe] user: js, branch: trunk, size: 6235 [annotate] [blame] [check-ins using] [diff]

2013-05-22
18:42
Check for more socket-related headers / functions. file: [9d097b3bbf] check-in: [896084c340] user: js, branch: trunk, size: 6154 [annotate] [blame] [check-ins using] [diff]
2013-04-30
22:47
observeWithTimeout: -> observeForTimeInterval:. file: [968a82ac04] check-in: [ab9ad6e515] user: js, branch: trunk, size: 6086 [annotate] [blame] [check-ins using] [diff]
2013-04-26
19:42
Make it possible to disable sockets. file: [7fc7495bc7] check-in: [590c377d8a] user: js, branch: trunk, size: 5794 [annotate] [blame] [check-ins using] [diff]
2013-04-07
21:21
Fix Win32 #include hell. file: [4cd46fa418] check-in: [ec6b265428] user: js, branch: trunk, size: 5732 [annotate] [blame] [check-ins using] [diff]
2013-03-04
17:20
Replace BOOL with bool.

The only places where BOOL is left are those where they are required by
the ABI. file: [36adc90c29] check-in: [c5ef582958] user: js, branch: trunk, size: 5814 [annotate] [blame] [check-ins using] [diff]

2013-02-12
18:22
Prefix all ivars with an underscore. file: [cdfadcf2ee] check-in: [e40729d406] user: js, branch: trunk, size: 5814 [annotate] [blame] [check-ins using] [diff]
2013-01-12
20:53
Clean up the feature #ifdef mess. file: [b07d550270] check-in: [b8ce2359f3] user: js, branch: trunk, size: 5803 [annotate] [blame] [check-ins using] [diff]
20:21
Fix --disable-threads. file: [16966241ea] check-in: [85b8efadbc] user: js, branch: trunk, size: 5793 [annotate] [blame] [check-ins using] [diff]
2013-01-10
22:52
Fix all Doxygen warnings. file: [a69d16c5a8] check-in: [365d74aa27] user: js, branch: trunk, size: 5743 [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
Update copyright. file: [7a6891cf02] check-in: [813c00ccf0] user: js, branch: trunk, size: 5719 [annotate] [blame] [check-ins using] [diff]
2012-12-20
16:42
Remove dummy implementations for formal protocols. file: [0ddbd1118a] check-in: [89177dcd09] user: js, branch: trunk, size: 5713 [annotate] [blame] [check-ins using] [diff]
2012-10-29
13:37
Documentation improvements (add references). file: [7f3a6cb32d] check-in: [1bcd4b3d46] user: js, branch: 0.7, size: 5790 [annotate] [blame] [check-ins using] [diff]
13:35
Documentation improvements (add references). file: [fa395911d4] check-in: [e685b742d9] user: js, branch: trunk, size: 5790 [annotate] [blame] [check-ins using] [diff]
2012-10-28
12:38
Switch to a headerdoc-compatible doc format. file: [714bdc609e] check-in: [1ad9565253] user: js, branch: trunk, size: 5782 [annotate] [blame] [check-ins using] [diff]
2012-10-09
15:07
Make use of instancetype. file: [85b360a246] check-in: [fb515e8e24] user: js, branch: trunk, size: 5782 [annotate] [blame] [check-ins using] [diff]
2012-09-16
15:27
Prefix all private methods with OF_. file: [f66d4f6eb3] check-in: [c137da5e5b] user: js, branch: trunk, size: 5768 [annotate] [blame] [check-ins using] [diff]
2012-09-12
06:00
OFStreamObserver: Add -[cancel]. file: [a4947834b1] check-in: [acb6598856] user: js, branch: trunk, size: 5756 [annotate] [blame] [check-ins using] [diff]
06:00
OFStreamObserver: Take a double as timeout. file: [8202cb76d9] check-in: [3c99aa51da] user: js, branch: trunk, size: 5462 [annotate] [blame] [check-ins using] [diff]
2012-08-19
21:27
Add more ARC type qualifiers. file: [8754133d3a] check-in: [bab9dd49fe] user: js, branch: trunk, size: 5464 [annotate] [blame] [check-ins using] [diff]
2012-02-29
21:12
\cond internal is not needed anymore. file: [d71501a357] check-in: [95db0335d8] user: js, branch: 0.6, size: 5444 [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
Update copyright. file: [4c22db2fe5] check-in: [ce70e17b38] user: js, branch: trunk, size: 5476 [annotate] [blame] [check-ins using] [diff]
2011-10-24
18:28
Don't retain delegates to prevent reference cycles. file: [b5736c8412] check-in: [87cd99ff88] user: js, branch: trunk, size: 5470 [annotate] [blame] [check-ins using] [diff]
2011-09-28
14:38
Various small bugfixes. file: [c3f9253037] check-in: [9e82f99f09] user: js, branch: trunk, size: 5470 [annotate] [blame] [check-ins using] [diff]
2011-09-22
03:10
Don't use EV_RECEIPT.

EV_RECEIPT is not available on all systems implementing kqueue. file: [429a39bc00] check-in: [1edb3cb8c7] user: js, branch: trunk, size: 5470 [annotate] [blame] [check-ins using] [diff]

2011-09-20
18:40
OFStreamObserver improvements.

* Make it possible to close a stream before the add/remove queue has
been processed.
* The actual implementations don't need to handle OFStreams now, but
get the file descriptor instead.
* Use an OFMutex instead of @synchronized. file: [b87bb931e4] check-in: [47caef4f8a] user: js, branch: trunk, size: 5276 [annotate] [blame] [check-ins using] [diff]

2011-09-19
16:22
Make using -[tryReadLine] + OFStreamObserver safe.

This makes it impossible for the developer to accidentally create a DoS.
When data has been received after calling -[tryReadLine] and the string
is still incomplete, -[streamIsReadyForReading:] will not be called
anymore until new data has been received, thus preventing spinning in a
loop. file: [aece4ad798] check-in: [535c2d5d9b] user: js, branch: trunk, size: 5199 [annotate] [blame] [check-ins using] [diff]

12:44
Nicer OFStreamObserver API. file: [753eef6385] check-in: [c279948fb8] user: js, branch: trunk, size: 4769 [annotate] [blame] [check-ins using] [diff]
12:07
Improve OFStreamObserver. file: [d581b21593] check-in: [d3f6cf9293] user: js, branch: trunk, size: 4819 [annotate] [blame] [check-ins using] [diff]
2011-09-11
17:09
Documentation improvements. file: [05b35ad045] check-in: [8d554c0421] user: js, branch: trunk, size: 4757 [annotate] [blame] [check-ins using] [diff]
2011-09-10
19:37
Make OFStreamObserver an abstract class. file: [70764cc054] check-in: [b1ffd7732a] user: js, branch: trunk, size: 4580 [annotate] [blame] [check-ins using] [diff]
2011-04-22
21:08
More style improvements. file: [923c073c02] check-in: [fb95acc8ab] user: js, branch: trunk, size: 4815 [annotate] [blame] [check-ins using] [diff]
2011-04-06
20:07
Port recent OFStreamObserver changes to Win32. file: [ad26e6202d] check-in: [a10390bfd6] user: js, branch: trunk, size: 4815 [annotate] [blame] [check-ins using] [diff]
2011-04-01
22:14
Cancel the currently blocking -[observe] when the stream set is changed.

Not working on win32 yet, it will be ported to it later as it's not that
easy there, since select() can only observe sockets. file: [7b1f8623a5] check-in: [a61ab37726] user: js, branch: trunk, size: 4739 [annotate] [blame] [check-ins using] [diff]

16:54
Make OFStreamObserver thread-safe.

It does not cancel the currently running -[observe] yet when changing
the set of streams to observe. file: [abbf9520ca] check-in: [35aab77af3] user: js, branch: trunk, size: 4106 [annotate] [blame] [check-ins using] [diff]

2011-03-30
00:03
A few win32 fixes. file: [7555d40ac1] check-in: [13a4dee1da] user: js, branch: trunk, size: 4115 [annotate] [blame] [check-ins using] [diff]
2011-03-23
01:06
Make more use of the OFObject protocol. file: [e29e85d1f8] check-in: [23acf38456] user: js, branch: trunk, size: 4073 [annotate] [blame] [check-ins using] [diff]
2011-03-22
00:55
Add -Wshorten-64-to-32. file: [8d506e5d4b] check-in: [6d4dfb5bc7] user: js, branch: trunk, size: 3985 [annotate] [blame] [check-ins using] [diff]
2011-03-21
13:26
Make use of optional protocols, if available. file: [5875ec6cd6] check-in: [0c9206532f] user: js, branch: trunk, size: 3982 [annotate] [blame] [check-ins using] [diff]
2011-01-01
20:19
Change license. file: [2d015e7afd] check-in: [da6b3d26cb] user: js, branch: trunk, size: 3932 [annotate] [blame] [check-ins using] [diff]
2010-11-28
16:02
Rename +[streamObserver] to +[observer] in OFStreamObserver. file: [a9969dae8b] check-in: [4d013fb14a] user: js, branch: trunk, size: 3676 [annotate] [blame] [check-ins using] [diff]
2010-11-24
19:45
Documentation improvements. file: [3a3ac21b99] check-in: [0769e074eb] user: js, branch: trunk, size: 3540 [annotate] [blame] [check-ins using] [diff]
2010-11-06
13:34
Handle stream exceptions in OFStreamObserver. file: [1bd2857348] check-in: [b7767021ca] user: js, branch: trunk, size: 3378 [annotate] [blame] [check-ins using] [diff]
2010-10-24
12:54
Add -[streamDidReceiveException:] to OFStreamObserverDelegate. file: [ef35b95705] check-in: [b5da54000d] user: js, branch: trunk, size: 3317 [annotate] [blame] [check-ins using] [diff]
2010-09-19
02:52
Improve OFStreamObserver.

It also looks at the cache of each stream now and does not block if
there is still data in the cache. file: [572eeb8e96] check-in: [b554732eae] user: js, branch: trunk, size: 3104 [annotate] [blame] [check-ins using] [diff]

2010-09-05
23:19
Replace OFObject* with id in many places.

We assume now that every object understands retain, release, etc. so
that we can weaken the type from OFObject* to id. This makes it
possible to use different root object classes. file: [943d945622] check-in: [e2b06423e0] user: js, branch: trunk, size: 3020 [annotate] [blame] [check-ins using] [diff]

14:45
Only define _WIN32_WINNT if it is not already defined. file: [31983ae5e4] check-in: [f0bd8d731e] user: js, branch: trunk, size: 3048 [annotate] [blame] [check-ins using] [diff]
2010-07-07
20:48
Added: Rename OFSocketObserver to OFStreamObserver and make it more general. file: [c015b1c190] check-in: [52dcb22b8c] user: js, branch: trunk, size: 3017 [annotate] [blame] [check-ins using]