Wiselib
|
#import <AsyncSocket.h>
Public Member Functions | |
(void) | - onSocket:willDisconnectWithError: |
In the event of an error, the socket is closed. | |
(void) | - onSocketDidDisconnect: |
Called when a socket disconnects with or without error. | |
(void) | - onSocket:didAcceptNewSocket: |
Called when a socket accepts a connection. | |
(NSRunLoop *) | - onSocket:wantsRunLoopForNewSocket: |
Called when a new socket is spawned to handle a connection. | |
(BOOL) | - onSocketWillConnect: |
Called when a socket is about to connect. | |
(void) | - onSocket:didConnectToHost:port: |
Called when a socket connects and is ready for reading and writing. | |
(void) | - onSocket:didReadData:withTag: |
Called when a socket has completed reading the requested data into memory. | |
(void) | - onSocket:didReadPartialDataOfLength:tag: |
Called when a socket has read in data, but has not yet completed the read. | |
(void) | - onSocket:didWriteDataWithTag: |
Called when a socket has completed writing the requested data. | |
(void) | - onSocket:didWritePartialDataOfLength:tag: |
Called when a socket has written some data, but has not yet completed the entire write. | |
(NSTimeInterval) | - onSocket:shouldTimeoutReadWithTag:elapsed:bytesDone: |
Called if a read operation has reached its timeout without completing. | |
(NSTimeInterval) | - onSocket:shouldTimeoutWriteWithTag:elapsed:bytesDone: |
Called if a write operation has reached its timeout without completing. | |
(void) | - onSocketDidSecure: |
Called after the socket has successfully completed SSL/TLS negotiation. |
- (void) onSocket: | (AsyncSocket *) | sock | |
didAcceptNewSocket: | (AsyncSocket *) | newSocket | |
[optional] |
Called when a socket accepts a connection.
Another socket is spawned to handle it. The new socket will have the same delegate and will call "onSocket:didConnectToHost:port:".
- (void) onSocket: | (AsyncSocket *) | sock | |
didConnectToHost: | (NSString *) | host | |
port: | (UInt16) | port | |
[optional] |
Called when a socket connects and is ready for reading and writing.
The host parameter will be an IP address, not a DNS name.
- (void) onSocket: | (AsyncSocket *) | sock | |
didReadData: | (NSData *) | data | |
withTag: | (long) | tag | |
[optional] |
Called when a socket has completed reading the requested data into memory.
Not called if there is an error.
- (void) onSocket: | (AsyncSocket *) | sock | |
didReadPartialDataOfLength: | (NSUInteger) | partialLength | |
tag: | (long) | tag | |
[optional] |
Called when a socket has read in data, but has not yet completed the read.
This would occur if using readToData: or readToLength: methods. It may be used to for things such as updating progress bars.
- (void) onSocket: | (AsyncSocket *) | sock | |
didWriteDataWithTag: | (long) | tag | |
[optional] |
Called when a socket has completed writing the requested data.
Not called if there is an error.
- (void) onSocket: | (AsyncSocket *) | sock | |
didWritePartialDataOfLength: | (NSUInteger) | partialLength | |
tag: | (long) | tag | |
[optional] |
Called when a socket has written some data, but has not yet completed the entire write.
It may be used to for things such as updating progress bars.
- (NSTimeInterval) onSocket: | (AsyncSocket *) | sock | |
shouldTimeoutReadWithTag: | (long) | tag | |
elapsed: | (NSTimeInterval) | elapsed | |
bytesDone: | (NSUInteger) | length | |
[optional] |
Called if a read operation has reached its timeout without completing.
This method allows you to optionally extend the timeout. If you return a positive time interval (> 0) the read's timeout will be extended by the given amount. If you don't implement this method, or return a non-positive time interval (<= 0) the read will timeout as usual.
The elapsed parameter is the sum of the original timeout, plus any additions previously added via this method. The length parameter is the number of bytes that have been read so far for the read operation.
Note that this method may be called multiple times for a single read if you return positive numbers.
- (NSTimeInterval) onSocket: | (AsyncSocket *) | sock | |
shouldTimeoutWriteWithTag: | (long) | tag | |
elapsed: | (NSTimeInterval) | elapsed | |
bytesDone: | (NSUInteger) | length | |
[optional] |
Called if a write operation has reached its timeout without completing.
This method allows you to optionally extend the timeout. If you return a positive time interval (> 0) the write's timeout will be extended by the given amount. If you don't implement this method, or return a non-positive time interval (<= 0) the write will timeout as usual.
The elapsed parameter is the sum of the original timeout, plus any additions previously added via this method. The length parameter is the number of bytes that have been written so far for the write operation.
Note that this method may be called multiple times for a single write if you return positive numbers.
- (NSRunLoop *) onSocket: | (AsyncSocket *) | sock | |
wantsRunLoopForNewSocket: | (AsyncSocket *) | newSocket | |
[optional] |
Called when a new socket is spawned to handle a connection.
This method should return the run-loop of the thread on which the new socket and its delegate should operate. If omitted, [NSRunLoop currentRunLoop] is used.
- (void) onSocket: | (AsyncSocket *) | sock | |
willDisconnectWithError: | (NSError *) | err | |
[optional] |
In the event of an error, the socket is closed.
You may call "unreadData" during this call-back to get the last bit of data off the socket. When connecting, this delegate method may be called before"onSocket:didAcceptNewSocket:" or "onSocket:didConnectToHost:".
- (void) onSocketDidDisconnect: | (AsyncSocket *) | sock | [optional] |
Called when a socket disconnects with or without error.
If you want to release a socket after it disconnects, do so here. It is not safe to do that during "onSocket:willDisconnectWithError:".
If you call the disconnect method, and the socket wasn't already disconnected, this delegate method will be called before the disconnect method returns.
- (void) onSocketDidSecure: | (AsyncSocket *) | sock | [optional] |
Called after the socket has successfully completed SSL/TLS negotiation.
This method is not called unless you use the provided startTLS method.
If a SSL/TLS negotiation fails (invalid certificate, etc) then the socket will immediately close, and the onSocket:willDisconnectWithError: delegate method will be called with the specific SSL error code.
- (BOOL) onSocketWillConnect: | (AsyncSocket *) | sock | [optional] |
Called when a socket is about to connect.
This method should return YES to continue, or NO to abort. If aborted, will result in AsyncSocketCanceledError.
If the connectToHost:onPort:error: method was called, the delegate will be able to access and configure the CFReadStream and CFWriteStream as desired prior to connection.
If the connectToAddress:error: method was called, the delegate will be able to access and configure the CFSocket and CFSocketNativeHandle (BSD socket) as desired prior to connection. You will be able to access and configure the CFReadStream and CFWriteStream in the onSocket:didConnectToHost:port: method.