Click or drag to resize

TlsClient Class

Represents a TCP-based communication client with SSL authentication and encryption.
Inheritance Hierarchy
SystemObject
  SystemMarshalByRefObject
    System.ComponentModelComponent
      GSF.CommunicationClientBase
        GSF.CommunicationTlsClient

Namespace: GSF.Communication
Assembly: GSF.Communication (in GSF.Communication.dll) Version: 2.4.218-beta
Syntax
public class TlsClient : ClientBase
View Source

The TlsClient type exposes the following members.

Constructors
 NameDescription
Public methodTlsClient Initializes a new instance of the TlsClient class.
Public methodTlsClient(IContainer) Initializes a new instance of the TlsClient class.
Public methodTlsClient(String) Initializes a new instance of the TlsClient class.
Top
Properties
 NameDescription
Public propertyAllowDualStackSocket Gets or sets a boolean value that determines if dual-mode socket is allowed when endpoint address is IPv6.
Protected propertyCanRaiseEventsGets a value indicating whether the component can raise an event.
(Inherited from Component)
Public propertyCertificate Gets or sets the local certificate selected by the default LocalCertificateSelectionCallback.
Public propertyCertificateChecker Gets or sets the certificate checker used to validate remote certificates.
Public propertyCertificateFile Gets or sets the path to the certificate used for authentication.
Public propertyCheckCertificateRevocation Gets or sets a boolean value that determines whether the certificate revocation list is checked during authentication.
Public propertyClient Gets the Socket object for the TlsClient.
Public propertyClientCertificates Gets the collection of X509 certificates for this client.
Public propertyConnectionString Gets or sets the data required by the client to connect to the server.
(Inherited from ClientBase)
Public propertyConnectionTime Gets the Time for which the client has been connected to the server.
(Inherited from ClientBase)
Public propertyContainerGets the IContainer that contains the Component.
(Inherited from Component)
Public propertyCurrentState Gets the current ClientState.
(Inherited from ClientBase)
Protected propertyDesignModeGets a value that indicates whether the Component is currently in design mode.
(Inherited from Component)
Public propertyEnabled Gets or sets a boolean value that indicates whether the client is currently enabled.
(Inherited from ClientBase)
Public propertyEnabledSslProtocols Gets or sets a set of flags which determine the enabled SslProtocols.
Protected propertyEventsGets the list of event handlers that are attached to this Component.
(Inherited from Component)
Public propertyIgnoreInvalidCredentials Gets or sets a boolean value that indicates whether the server should ignore errors when the client's credentials are invalid.
Public propertyIntegratedSecurity Gets or sets a boolean value that indicates whether the current Windows account credentials are used for authentication.
Public propertyIsDisposed Gets a flag that indicates whether the object has been disposed.
(Inherited from ClientBase)
Public propertyLocalCertificateSelectionCallback Gets or sets the callback used to select a local certificate.
Public propertyMaxConnectionAttempts Gets or sets the maximum number of times the client will attempt to connect to the server.
(Inherited from ClientBase)
Public propertyMaxSendQueueSize Gets or sets the maximum size for the send queue before payloads are dumped from the queue.
Public propertyName Gets the unique identifier of the client.
(Inherited from ClientBase)
Public propertyNetworkCredential Gets or sets network credential that is used when IntegratedSecurity is set to true.
Public propertyNoDelay Gets or sets a boolean value that determines if small packets are delivered to the remote host without delay.
Public propertyPayloadAware Gets or sets a boolean value that indicates whether the payload boundaries are to be preserved during transmission.
Public propertyPayloadEndianOrder Gets or sets the endian order to apply for encoding and decoding payload size in a PayloadAware transmission.
Public propertyPayloadMarker Gets or sets the byte sequence used to mark the beginning of a payload in a PayloadAware transmission.
Public propertyPersistSettings Gets or sets a boolean value that indicates whether the client settings are to be saved to the config file.
(Inherited from ClientBase)
Protected propertyReadIndex Gets or sets current read index for received data buffer incremented at each Read(Byte, Int32, Int32) call.
(Inherited from ClientBase)
Public propertyReceiveBufferSize Gets or sets the size of the buffer used by the client for receiving data from the server.
(Inherited from ClientBase)
Public propertyRemoteCertificateValidationCallback Gets or sets the callback used to verify remote certificates.
Public propertySendBufferSize Gets or sets the size of the buffer used by the client for sending data to the server.
(Inherited from ClientBase)
Public propertyServerIndex Gets the current server index, when multiple server end points are defined.
(Inherited from ClientBase)
Public propertyServerUri Gets the server URI of the TlsClient.
(Overrides ClientBaseServerUri)
Public propertySettingsCategory Gets or sets the category under which the client settings are to be saved to the config file if the PersistSettings property is set to true.
(Inherited from ClientBase)
Public propertySiteGets or sets the ISite of the Component.
(Inherited from Component)
Public propertySslStream Gets the SslStream object for the TlsClient.
Public propertyStatistics Gets the TransportStatistics for the client connection.
(Inherited from ClientBase)
Public propertyStatus Gets the descriptive status of the client.
(Overrides ClientBaseStatus)
Public propertyTextEncoding Gets or sets the Encoding to be used for the text sent to the server.
(Inherited from ClientBase)
Protected propertyTrackStatistics Determines whether the base class should track statistics.
(Overrides ClientBaseTrackStatistics)
Public propertyTransportProtocol Gets the TransportProtocol used by the client for the transportation of data with the server.
(Inherited from ClientBase)
Public propertyTrustedCertificatesPath Gets or sets the path to the directory containing the trusted certificates.
Public propertyValidChainFlags Gets or sets the set of valid chain flags used when validating remote certificates.
Public propertyValidPolicyErrors Gets or sets the set of valid policy errors when validating remote certificates.
Top
Methods
 NameDescription
Public methodBeginInit Performs necessary operations before the client properties are initialized.
(Inherited from ClientBase)
Public methodConnect Connects the client to the server synchronously.
(Inherited from ClientBase)
Public methodConnectAsync Connects the TlsClient to the server asynchronously.
(Overrides ClientBaseConnectAsync)
Public methodCreateObjRefCreates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.
(Inherited from MarshalByRefObject)
Public methodDisconnect When overridden in a derived class, disconnects client from the server synchronously.
(Overrides ClientBaseDisconnect)
Public methodDisposeReleases all resources used by the Component.
(Inherited from Component)
Protected methodDispose(Boolean) Releases the unmanaged resources used by the TlsClient and optionally releases the managed resources.
(Overrides ClientBaseDispose(Boolean))
Public methodEndInit Performs necessary operations after the client properties are initialized.
(Inherited from ClientBase)
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Protected methodFinalizeReleases unmanaged resources and performs other cleanup operations before the Component is reclaimed by garbage collection.
(Inherited from Component)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetLifetimeServiceRetrieves the current lifetime service object that controls the lifetime policy for this instance.
(Inherited from MarshalByRefObject)
Protected methodGetServiceReturns an object that represents a service provided by the Component or by its Container.
(Inherited from Component)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodInitialize Initializes the client.
(Inherited from ClientBase)
Public methodInitializeLifetimeServiceObtains a lifetime service object to control the lifetime policy for this instance.
(Inherited from MarshalByRefObject)
Public methodLoadSettings Loads saved TlsClient settings from the config file if the PersistSettings property is set to true.
(Overrides ClientBaseLoadSettings)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Protected methodMemberwiseClone(Boolean)Creates a shallow copy of the current MarshalByRefObject object.
(Inherited from MarshalByRefObject)
Protected methodOnConnectionAttempt Raises the ConnectionAttempt event.
(Inherited from ClientBase)
Protected methodOnConnectionEstablished Raises the ConnectionEstablished event.
(Inherited from ClientBase)
Protected methodOnConnectionException Raises the ConnectionException event.
(Inherited from ClientBase)
Protected methodOnConnectionTerminated Raises the ConnectionTerminated event.
(Inherited from ClientBase)
Protected methodOnReceiveData Raises the ReceiveData event.
(Inherited from ClientBase)
Protected methodOnReceiveDataComplete Raises the ReceiveDataComplete event.
(Inherited from ClientBase)
Protected methodOnReceiveDataException(Exception) Raises the ReceiveDataException event.
(Overrides ClientBaseOnReceiveDataException(Exception))
Protected methodOnReceiveDataException(SocketException) Raises the ReceiveDataException event.
Protected methodOnSendDataComplete Raises the SendDataComplete event.
(Inherited from ClientBase)
Protected methodOnSendDataException Raises the SendDataException event.
(Overrides ClientBaseOnSendDataException(Exception))
Protected methodOnSendDataStart Raises the SendDataStart event.
(Inherited from ClientBase)
Protected methodOnUnhandledUserException Raises the UnhandledUserException event.
(Inherited from ClientBase)
Public methodRead 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))
Public methodRequestNextServerIndex Requests that the client attempt to move to the next ServerIndex.
(Overrides ClientBaseRequestNextServerIndex)
Public methodSaveSettings Saves TlsClient settings to the config file if the PersistSettings property is set to true.
(Overrides ClientBaseSaveSettings)
Public methodSend(Byte) Sends data to the server synchronously.
(Inherited from ClientBase)
Public methodSend(Object) Sends data to the server synchronously.
(Inherited from ClientBase)
Public methodSend(String) Sends data to the server synchronously.
(Inherited from ClientBase)
Public methodSend(Byte, Int32, Int32) Sends data to the server synchronously.
(Inherited from ClientBase)
Public methodSendAsync(Byte) Sends data to the server asynchronously.
(Inherited from ClientBase)
Public methodSendAsync(Object) Sends data to the server asynchronously.
(Inherited from ClientBase)
Public methodSendAsync(String) Sends data to the server asynchronously.
(Inherited from ClientBase)
Public methodSendAsync(Byte, Int32, Int32) Sends data to the server asynchronously.
(Inherited from ClientBase)
Protected methodSendDataAsync When overridden in a derived class, sends data to the server asynchronously.
(Overrides ClientBaseSendDataAsync(Byte, Int32, Int32))
Public methodToStringReturns a String containing the name of the Component, if any. This method should not be overridden.
(Inherited from Component)
Protected methodUpdateBytesReceived Updates the Statistics pertaining to bytes received.
(Inherited from ClientBase)
Protected methodUpdateBytesSent Updates the Statistics pertaining to bytes sent.
(Inherited from ClientBase)
Protected methodValidateConnectionString When overridden in a derived class, validates the specified connectionString.
(Overrides ClientBaseValidateConnectionString(String))
Top
Events
 NameDescription
Public eventConnectionAttempt Occurs when client is attempting connection to the server.
(Inherited from ClientBase)
Public eventConnectionEstablished Occurs when client connection to the server is established.
(Inherited from ClientBase)
Public eventConnectionException Occurs when an Exception is encountered during connection attempt to the server.
(Inherited from ClientBase)
Public eventConnectionTerminated Occurs when client connection to the server is terminated.
(Inherited from ClientBase)
Public eventDisposedOccurs when the component is disposed by a call to the Dispose method.
(Inherited from Component)
Public eventReceiveData Occurs when unprocessed data has been received from the server.
(Inherited from ClientBase)
Public eventReceiveDataComplete Occurs when data received from the server has been processed and is ready for consumption.
(Inherited from ClientBase)
Public eventReceiveDataException Occurs when an Exception is encountered when receiving data from the server.
(Inherited from ClientBase)
Public eventSendDataComplete Occurs when the client has successfully sent data to the server.
(Inherited from ClientBase)
Public eventSendDataException Occurs when an Exception is encountered when sending data to the server.
(Inherited from ClientBase)
Public eventSendDataStart Occurs when the client begins sending data to the server.
(Inherited from ClientBase)
Public eventUnhandledUserException Occurs when an Exception is encountered in a user-defined function via an event dispatch.
(Inherited from ClientBase)
Top
Fields
 NameDescription
Public fieldStatic memberDefaultAllowDualStackSocket Specifies the default value for the AllowDualStackSocket property.
Public fieldStatic memberDefaultConnectionString Specifies the default value for the ConnectionString property.
Public fieldStatic memberDefaultIgnoreInvalidCredentials Specifies the default value for the IgnoreInvalidCredentials property.
Public fieldStatic memberDefaultIntegratedSecurity Specifies the default value for the IntegratedSecurity property.
Public fieldStatic memberDefaultMaxSendQueueSize Specifies the default value for the MaxSendQueueSize property.
Public fieldStatic memberDefaultNoDelay Specifies the default value for the NoDelay property.
Public fieldStatic memberDefaultPayloadAware Specifies the default value for the PayloadAware property.
Public fieldDefaultTrustedCertificatesPath Specifies the default value for the TrustedCertificatesPath property.
Top
Extension Methods
 NameDescription
Public Extension MethodGetEnumValueOrDefault Gets the enumeration constant for value, if defined in the enumeration, or a default value.
(Defined by EnumExtensions)
Public Extension MethodGetEnumValueOrDefaultT Gets the enumeration constant for this value, if defined in the enumeration, or a default value.
(Defined by EnumExtensions)
Top
See Also