Gemstone Communication Library
Show/Hide TOC

# TlsClient Class

Represents a TCP-based communication client with SSL authentication and encryption.

## Definition

Namespace: Gemstone.Communication
Assembly: Gemstone.Communication (in Gemstone.Communication.dll) Version: 1.0.172 -- Release Build+53bbfd79fc08d9a32a0dc7304bc41abd1d26547a
C#
View Source Request Example

    public class TlsClient : ClientBase

VB
View Source Request Example

    Public Class TlsClient
    	Inherits ClientBase

C++
View Source Request Example

    public ref class TlsClient : public ClientBase

JavaScript
View Source Request Example

    Gemstone.Communication.TlsClient = function();

    Type.createClass(
    	'Gemstone.Communication.TlsClient',
    	Gemstone.Communication.ClientBase);

Inheritance
  Object ClientBase TlsClient

## Constructors

TlsClient | Initializes a new instance of the TlsClient class.
TlsClient(String) | Initializes a new instance of the TlsClient class.

## Properties

AllowDualStackSocket | Gets or sets a boolean value that determines if dual-mode socket is allowed when endpoint address is IPv6.
Certificate | Gets or sets the local certificate selected by the default LocalCertificateSelectionCallback.
CertificateChecker | Gets or sets the certificate checker used to validate remote certificates.
CertificateFile | Gets or sets the path to the certificate used for authentication.
CheckCertificateRevocation | Gets or sets a boolean value that determines whether the certificate revocation list is checked during authentication.
Client | Gets the Socket object for the TlsClient.
ClientCertificates | Gets the collection of X509 certificates for this client.
ConnectionString | Gets or sets the data required by the client to connect to the server. (Inherited from ClientBase)
ConnectionTime | Gets the Time for which the client has been connected to the server. (Inherited from ClientBase)
CurrentState | Gets the current ClientState. (Inherited from ClientBase)
Enabled | Gets or sets a boolean value that indicates whether the client is currently enabled. (Inherited from ClientBase)
EnabledSslProtocols | Gets or sets a set of flags which determine the enabled SslProtocols.
IgnoreInvalidCredentials | Gets or sets a boolean value that indicates whether the server should ignore errors when the client's credentials are invalid.
IntegratedSecurity | Gets or sets a boolean value that indicates whether the current Windows account credentials are used for authentication.
IsDisposed | Gets a flag that indicates whether the object has been disposed. (Inherited from ClientBase)
LocalCertificateSelectionCallback | Gets or sets the callback used to select a local certificate.
MaxConnectionAttempts | Gets or sets the maximum number of times the client will attempt to connect to the server. (Inherited from ClientBase)
MaxSendQueueSize | Gets or sets the maximum size for the send queue before payloads are dumped from the queue.
Name | Gets or sets the unique identifier of the server. (Inherited from ClientBase)
NetworkCredential | Gets or sets network credential that is used when IntegratedSecurity is set to true.
NoDelay | Gets or sets a boolean value that determines if small packets are delivered to the remote host without delay.
PayloadAware | Gets or sets a boolean value that indicates whether the payload boundaries are to be preserved during transmission.
PayloadEndianOrder | Gets or sets the endian order to apply for encoding and decoding payload size in a PayloadAware transmission.
PayloadMarker | Gets or sets the byte sequence used to mark the beginning of a payload in a PayloadAware transmission.
ReadIndex | Gets or sets current read index for received data buffer incremented at each Read(Byte, Int32, Int32) call. (Inherited from ClientBase)
ReceiveBufferSize | Gets or sets the size of the buffer used by the client for receiving data from the server. (Inherited from ClientBase)
RemoteCertificateValidationCallback | Gets or sets the callback used to verify remote certificates.
SendBufferSize | Gets or sets the size of the buffer used by the client for sending data to the server. (Inherited from ClientBase)
ServerIndex | Gets the current server index, when multiple server end points are defined. (Inherited from ClientBase)
ServerUri | Gets the server URI of the TlsClient. (Overrides ClientBaseServerUri)
SslStream | Gets the SslStream object for the TlsClient.
Statistics | Gets the TransportStatistics for the client connection. (Inherited from ClientBase)
Status | Gets the descriptive status of the client. (Overrides ClientBaseStatus)
TextEncoding | Gets or sets the Encoding to be used for the text sent to the server. (Inherited from ClientBase)
TrackStatistics | Determines whether the base class should track statistics. (Overrides ClientBaseTrackStatistics)
TransportProtocol | Gets the TransportProtocol used by the client for the transportation of data with the server. (Inherited from ClientBase)
TrustedCertificatesPath | Gets or sets the path to the directory containing the trusted certificates.
ValidChainFlags | Gets or sets the set of valid chain flags used when validating remote certificates.
ValidPolicyErrors | Gets or sets the set of valid policy errors when validating remote certificates.

## Methods

Connect | Connects the client to the server synchronously. (Inherited from ClientBase)
ConnectAsync | Connects the TlsClient to the server asynchronously. (Overrides ClientBaseConnectAsync)
Disconnect | When overridden in a derived class, disconnects client from the server synchronously. (Overrides ClientBaseDisconnect)
Dispose | Releases all the resources used by the ClientBase object. (Inherited from ClientBase)
Dispose(Boolean) | Releases the unmanaged resources used by the TlsClient and optionally releases the managed resources. (Overrides ClientBaseDispose(Boolean))
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object)
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object)
GetHashCode | Serves as the default hash function. (Inherited from Object)
GetType | Gets the Type of the current instance. (Inherited from Object)
Initialize | Initializes the client. (Inherited from ClientBase)
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object)
OnConnectionAttempt | Raises the ConnectionAttempt event. (Inherited from ClientBase)
OnConnectionEstablished | Raises the ConnectionEstablished event. (Inherited from ClientBase)
OnConnectionException | Raises the ConnectionException event. (Inherited from ClientBase)
OnConnectionTerminated | Raises the ConnectionTerminated event. (Inherited from ClientBase)
OnReceiveData | Raises the ReceiveData event. (Inherited from ClientBase)
OnReceiveDataComplete | Raises the ReceiveDataComplete event. (Inherited from ClientBase)
OnReceiveDataException(Exception) | Raises the ReceiveDataException event. (Overrides ClientBaseOnReceiveDataException(Exception))
OnReceiveDataException(SocketException) | Raises the ReceiveDataException event.
OnSendDataComplete | Raises the SendDataComplete event. (Inherited from ClientBase)
OnSendDataException | Raises the SendDataException event. (Overrides ClientBaseOnSendDataException(Exception))
OnSendDataStart | Raises the SendDataStart event. (Inherited from ClientBase)
Read | When overridden in a derived class, reads a number of bytes from the current received data buffer and writes those bytes into a byte array at the specified offset. (Overrides ClientBaseRead(Byte, Int32, Int32))
RequestNextServerIndex | Requests that the client attempt to move to the next ServerIndex. (Overrides ClientBaseRequestNextServerIndex)
Send(Byte) | Sends data to the server synchronously. (Inherited from ClientBase)
Send(String) | Sends data to the server synchronously. (Inherited from ClientBase)
Send(Byte, Int32, Int32) | Sends data to the server synchronously. (Inherited from ClientBase)
SendAsync(Byte) | Sends data to the server asynchronously. (Inherited from ClientBase)
SendAsync(String) | Sends data to the server asynchronously. (Inherited from ClientBase)
SendAsync(Byte, Int32, Int32) | Sends data to the server asynchronously. (Inherited from ClientBase)
SendDataAsync | When overridden in a derived class, sends data to the server asynchronously. (Overrides ClientBaseSendDataAsync(Byte, Int32, Int32))
ToString | Returns a string that represents the current object. (Inherited from Object)
UpdateBytesReceived | Updates the Statistics pertaining to bytes received. (Inherited from ClientBase)
UpdateBytesSent | Updates the Statistics pertaining to bytes sent. (Inherited from ClientBase)
ValidateConnectionString | When overridden in a derived class, validates the specified connectionString. (Overrides ClientBaseValidateConnectionString(String))

## Events

ConnectionAttempt | Occurs when client is attempting connection to the server. (Inherited from ClientBase)
ConnectionEstablished | Occurs when client connection to the server is established. (Inherited from ClientBase)
ConnectionException | Occurs when an Exception is encountered during connection attempt to the server. (Inherited from ClientBase)
ConnectionTerminated | Occurs when client connection to the server is terminated. (Inherited from ClientBase)
Disposed | Occurs when the ClientBase has been disposed. (Inherited from ClientBase)
ReceiveData | Occurs when unprocessed data has been received from the server. (Inherited from ClientBase)
ReceiveDataComplete | Occurs when data received from the server has been processed and is ready for consumption. (Inherited from ClientBase)
ReceiveDataException | Occurs when an Exception is encountered when receiving data from the server. (Inherited from ClientBase)
SendDataComplete | Occurs when the client has successfully sent data to the server. (Inherited from ClientBase)
SendDataException | Occurs when an Exception is encountered when sending data to the server. (Inherited from ClientBase)
SendDataStart | Occurs when the client begins sending data to the server. (Inherited from ClientBase)

## Fields

DefaultAllowDualStackSocket | Specifies the default value for the AllowDualStackSocket property.
DefaultConnectionString | Specifies the default value for the ConnectionString property.
DefaultIgnoreInvalidCredentials | Specifies the default value for the IgnoreInvalidCredentials property.
DefaultIntegratedSecurity | Specifies the default value for the IntegratedSecurity property.
DefaultMaxSendQueueSize | Specifies the default value for the MaxSendQueueSize property.
DefaultNoDelay | Specifies the default value for the NoDelay property.
DefaultPayloadAware | Specifies the default value for the PayloadAware property.
DefaultTrustedCertificatesPath | Specifies the default value for the TrustedCertificatesPath property.

## See Also

#### Reference

Gemstone.Communication Namespace
TcpClient