IPWorks IPC 2020 macOS Edition

Questions / Feedback?

PipeConnection Type

A currently connected client.

Remarks

This type describes the connection of a client which is currently connected to the class. The connection may be managed using the different fields of this type.

Fields

acceptData
Bool

Setting this property to False, temporarily disables data reception (and the DataIn event) on the connection. Setting this to True, re-enables data reception.

bytesSent
Int32

This property shows how many bytes were sent after the last assignment to DataToSend. Please check DataToSend for more information.

Note that this property will always return 0 when the class is operating in synchronous mode (that is, the Timeout property is set to a positive value.)

connected
Bool

This property is used to disconnect individual connections and/or show their status.

The Connected property may be set to false to close the connection.

Connected also shows the status of a particular connection (connected/disconnected).

connectionId
String

This property contains an identifier generated by the class to identify each connection. This identifier is unique to this connection.

dataToSendB
Data

This property contains a string of data to be sent to the remote host. Write-only property.

Assigning a string to the DataToSend makes the class send the string to the remote host. The Send method provides similar functionality.

When Timeout is set to 0 the class will behave asynchronously. If you are sending data to the remote host faster than it can process it, or faster than the network's bandwidth allows, the outgoing queue might fill up. When this happens, DataToSend The BytesSent property shows how many bytes were sent (if any). If 0 bytes were sent, then you can wait for the ReadyToSend event before attempting to send data again. (However, please note that ReadyToSend is not fired when part of the data is successfully sent).

dataToSend
String

This property contains a string of data to be sent to the remote host. Write-only property.

Assigning a string to the DataToSend makes the class send the string to the remote host. The Send method provides similar functionality.

When Timeout is set to 0 the class will behave asynchronously. If you are sending data to the remote host faster than it can process it, or faster than the network's bandwidth allows, the outgoing queue might fill up. When this happens, DataToSend The BytesSent property shows how many bytes were sent (if any). If 0 bytes were sent, then you can wait for the ReadyToSend event before attempting to send data again. (However, please note that ReadyToSend is not fired when part of the data is successfully sent).

eolB
Data

The EOL property is used to define boundaries in the input stream using the value of the property.

The EOL property is especially useful with ASCII files. Setting it to enables splitting of the incoming ASCII text stream into lines. In this case, one event is fired for each line received (as well as in packet boundaries). The . bytes are discarded.

The EOL property is a binary string. In particular, this means that it can be more than one byte long, and it can contain NULL bytes.

eol
String

The EOL property is used to define boundaries in the input stream using the value of the property.

The EOL property is especially useful with ASCII files. Setting it to enables splitting of the incoming ASCII text stream into lines. In this case, one event is fired for each line received (as well as in packet boundaries). The . bytes are discarded.

The EOL property is a binary string. In particular, this means that it can be more than one byte long, and it can contain NULL bytes.

maxLineLength
Int32

This property is the size of an internal buffer which holds received data while waiting for an EOL string.

If an EOL string is found in the input stream before MaxLineLength bytes are received, the DataIn event is fired with the EOL parameter set to True, and the buffer is reset.

If no EOL is found, and MaxLineLength bytes are accumulated in the buffer, the DataIn event is fired with the EOL parameter set to False, and the buffer is reset.

The minimum value for MaxLineLength is 256 bytes. The default value is 2048 bytes.

singleLineMode
Bool

This property shows the special mode for line-oriented protocols. When SingleLineMode is True, the class treats the incoming data stream as lines separated by CRLF, CR, or LF. The EOL property is ignored.

timeout
Int32

This property specifies a timeout for the class.

If the Timeout property is set to 0, all operations return immediately, potentially failing with a WOULDBLOCK error if data cannot be sent immediately.

If Timeout is set to a positive value, data is sent in a blocking manner and the class will wait for the operation to complete before returning control. The class will handle any potential WOULDBLOCK errors internally and automatically retry the operation for a maximum of Timeout seconds.

The class will use DoEvents to enter an efficient wait loop during any potential waiting period, making sure that all system events are processed immediately as they arrive. This ensures that the host application does not "freeze" and remains responsive.

If Timeout expires, and the operation is not yet complete, the class .

Please note that by default, all timeouts are inactivity timeouts, i.e. the timeout period is extended by Timeout seconds when any amount of data is successfully sent or received.

The default value for the Timeout property is 0 (asynchronous operation).

Constructors

public init()

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks IPC 2020 macOS Edition - Version 20.0 [Build 8155]