TcpServer

Overview

The TCPServer class is used to create a TCP (Transmission Control Protocol) server object.

Location

 

constructor

 

constructor

 

TcpServer()

 

Sub New()

constructor (IContainer)

 

constructor(container: IContainer)

 

TcpServer(IContainer container)

 

Sub New(container As IContainer)

Parameters:

  • container:

Active    (declared in Server)

Gets or sets the flag defining whether the server is listening for incoming connections.

Setting this property to true or false calls the Open or Close methods, accordingly

 

property Active: Boolean read write;

 

Boolean Active { get; set; }

 

Property Active() As Boolean

BindAddressV4    (declared in Server)

 

property BindAddressV4: IPAddress read write;

 

IPAddress BindAddressV4 { get; set; }

 

Property BindAddressV4() As IPAddress

BindAddressV6    (declared in Server)

 

property BindAddressV6: IPAddress read write;

 

IPAddress BindAddressV6 { get; set; }

 

Property BindAddressV6() As IPAddress

BindingV4    (declared in Server)

Gets the IPv4 ServerBinding instance.

The returned instance can be used to fine-tune the IPv4 server endpoint.

 

property BindingV4: ServerBinding read;

 

ServerBinding BindingV4 { get; }

 

ReadOnly Property BindingV4() As ServerBinding

BindingV6    (declared in Server)

Gets the IPv6 ServerBinding instance.

The returned instance can be used to fine-tune the IPv6 server endpoint.

 

property BindingV6: ServerBinding read;

 

ServerBinding BindingV6 { get; }

 

ReadOnly Property BindingV6() As ServerBinding

BindV4    (declared in Server)

Gets or sets the flag indicating whether the server should listen for IPv4 connections.

Setting this flag doesn't have any immediate effect. Its value is used only when the server is opened (either by setting the Active property to true or by directly calling the Open method).

 

property BindV4: Boolean read write;

 

Boolean BindV4 { get; set; }

 

Property BindV4() As Boolean

BindV6    (declared in Server)

Gets or sets the flag indicating whether the server should listen for IPv6 connections.

Setting this flag doesn't have any immediate effect. Its value is used only when the server is opened (either by setting the Active property to true or by directly calling the Open method).

 

property BindV6: Boolean read write;

 

Boolean BindV6 { get; set; }

 

Property BindV6() As Boolean

Close    (declared in Server)

This method causes the server to stop listening for incoming connections.

 

method Close

 

void Close()

 

Sub Close()

CloseConnectionsOnShutdown    (declared in Server)

Gets or sets the flag indicating whether the currently open client connections should be appropriately closed on server shutdown.

The default value is true.

 

property CloseConnectionsOnShutdown: Boolean read write;

 

Boolean CloseConnectionsOnShutdown { get; set; }

 

Property CloseConnectionsOnShutdown() As Boolean

ConnectionClass    (declared in Server)

Gets or sets an alternative Connection class to be used for incoming data connections. The class described by the assigned Type must be a descendant of the Connection class, and will be used for all connections that are established after the property has been set.

Existing connections are not affected by changing the property.

If the ConnectionType property value is null (default), instances of the Connection base class will be used.

 

property ConnectionClass: Type read write;

 

Type ConnectionClass { get; set; }

 

Property ConnectionClass() As Type

ConnectionFactory    (declared in Server)

Gets or sets an alternative Connection factory instance to be used for incoming data connections. This factory will be used to create corresponding Connection instances for all connections that are established after the property has been set.

Existing connections are not affected by changing the property.

This property has precendence over the ConnectionClass property.

 

property ConnectionFactory: IConnectionFactory read write;

 

IConnectionFactory ConnectionFactory { get; set; }

 

Property ConnectionFactory() As IConnectionFactory

CreateWorker  protected

 

method CreateWorker(owner: Server): Object

 

Object CreateWorker(Server owner)

 

Function CreateWorker(owner As Server) As Object

Parameters:

  • owner:

DefaultPort  protected    (declared in Server)

Gets or sets the default port number.

 

property DefaultPort: Int32 read write;

 

Int32 DefaultPort { get; set; }

 

Property DefaultPort() As Int32

Dispose  protected    (declared in Server)

Disposes of the current instance and releases all resources used by it.

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing:

EnableNagle    (declared in Server)

Gets or the sets flag indicating whether the Nagle's algoritm should be used.

Setting this flag doesn't have any immediate effect. Its value is used only when the server is opened (either by setting the Active property to true or by directly calling the Open method).

 

property EnableNagle: Boolean read write;

 

Boolean EnableNagle { get; set; }

 

Property EnableNagle() As Boolean

HandleTcpConnection  protected

 

method HandleTcpConnection(connection: Connection)

 

void HandleTcpConnection(Connection connection)

 

Sub HandleTcpConnection(connection As Connection)

Parameters:

  • connection:

IsRunningOnMono  protected    (declared in Server)

 

class method IsRunningOnMono: Boolean

 

static Boolean IsRunningOnMono()

 

Shared Function IsRunningOnMono() As Boolean

MaxLineLength    (declared in Server)

Gets or sets the default MaxLineLength value for all newly created Connections.

See the desription of the Connection.MaxLineLength property for details.

 

property MaxLineLength: Int32 read write;

 

Int32 MaxLineLength { get; set; }

 

Property MaxLineLength() As Int32

MaxLineLengthEnabled    (declared in Server)

Gets or sets the default MaxLineLengthEnabled value for all newly created Connections.

See the desription of the Connection.MaxLineLengthEnabled property for details.

 

property MaxLineLengthEnabled: Boolean read write;

 

Boolean MaxLineLengthEnabled { get; set; }

 

Property MaxLineLengthEnabled() As Boolean

OnTcpConnection

 

event OnTcpConnection: EventHandler<ConnectionEventArgs>;

 

delegate EventHandler<ConnectionEventArgs> OnTcpConnection()

 

Event OnTcpConnection As EventHandler<ConnectionEventArgs>

Open    (declared in Server)

This method causes the server to start listening for incoming connections.

 

method Open

 

void Open()

 

Sub Open()

Port    (declared in Server)

Gets or sets the port number on which the server will listen.

 

property Port: Int32 read write;

 

Int32 Port { get; set; }

 

Property Port() As Int32

ShouldSerializePort    (declared in Server)

Returns true when the DefaultPort is not equal to the Port.

 

method ShouldSerializePort: Boolean

 

Boolean ShouldSerializePort()

 

Function ShouldSerializePort() As Boolean

SslOptions    (declared in Server)

Gets the SslConnectionFactory instance that can be used to configure the SSL options of the current Server instance.

 

property SslOptions: SslConnectionFactory read;

 

SslConnectionFactory SslOptions { get; }

 

ReadOnly Property SslOptions() As SslConnectionFactory

Timeout    (declared in Server)

Gets or sets the default Timeout value for all newly created Connections.

See the desription of the Connection.Timeout property for details.

 

property Timeout: Int32 read write;

 

Int32 Timeout { get; set; }

 

Property Timeout() As Int32

TimeoutEnabled    (declared in Server)

Gets or sets the default TimeoutEnabled value for all newly created Connections.

See the desription of the Connection.TimeoutEnabled property for details.

 

property TimeoutEnabled: Boolean read write;

 

Boolean TimeoutEnabled { get; set; }

 

Property TimeoutEnabled() As Boolean

TriggerOnTcpConnection  protected

 

method TriggerOnTcpConnection(connection: Connection)

 

void TriggerOnTcpConnection(Connection connection)

 

Sub TriggerOnTcpConnection(connection As Connection)

Parameters:

  • connection:

 

Active    (declared in Server)

Gets or sets the flag defining whether the server is listening for incoming connections.

Setting this property to true or false calls the Open or Close methods, accordingly

 

property Active: Boolean read write;

 

Boolean Active { get; set; }

 

Property Active() As Boolean

BindAddressV4    (declared in Server)

 

property BindAddressV4: IPAddress read write;

 

IPAddress BindAddressV4 { get; set; }

 

Property BindAddressV4() As IPAddress

BindAddressV6    (declared in Server)

 

property BindAddressV6: IPAddress read write;

 

IPAddress BindAddressV6 { get; set; }

 

Property BindAddressV6() As IPAddress

BindingV4    (declared in Server)

Gets the IPv4 ServerBinding instance.

The returned instance can be used to fine-tune the IPv4 server endpoint.

 

property BindingV4: ServerBinding read;

 

ServerBinding BindingV4 { get; }

 

ReadOnly Property BindingV4() As ServerBinding

BindingV6    (declared in Server)

Gets the IPv6 ServerBinding instance.

The returned instance can be used to fine-tune the IPv6 server endpoint.

 

property BindingV6: ServerBinding read;

 

ServerBinding BindingV6 { get; }

 

ReadOnly Property BindingV6() As ServerBinding

BindV4    (declared in Server)

Gets or sets the flag indicating whether the server should listen for IPv4 connections.

Setting this flag doesn't have any immediate effect. Its value is used only when the server is opened (either by setting the Active property to true or by directly calling the Open method).

 

property BindV4: Boolean read write;

 

Boolean BindV4 { get; set; }

 

Property BindV4() As Boolean

BindV6    (declared in Server)

Gets or sets the flag indicating whether the server should listen for IPv6 connections.

Setting this flag doesn't have any immediate effect. Its value is used only when the server is opened (either by setting the Active property to true or by directly calling the Open method).

 

property BindV6: Boolean read write;

 

Boolean BindV6 { get; set; }

 

Property BindV6() As Boolean

CloseConnectionsOnShutdown    (declared in Server)

Gets or sets the flag indicating whether the currently open client connections should be appropriately closed on server shutdown.

The default value is true.

 

property CloseConnectionsOnShutdown: Boolean read write;

 

Boolean CloseConnectionsOnShutdown { get; set; }

 

Property CloseConnectionsOnShutdown() As Boolean

ConnectionClass    (declared in Server)

Gets or sets an alternative Connection class to be used for incoming data connections. The class described by the assigned Type must be a descendant of the Connection class, and will be used for all connections that are established after the property has been set.

Existing connections are not affected by changing the property.

If the ConnectionType property value is null (default), instances of the Connection base class will be used.

 

property ConnectionClass: Type read write;

 

Type ConnectionClass { get; set; }

 

Property ConnectionClass() As Type

ConnectionFactory    (declared in Server)

Gets or sets an alternative Connection factory instance to be used for incoming data connections. This factory will be used to create corresponding Connection instances for all connections that are established after the property has been set.

Existing connections are not affected by changing the property.

This property has precendence over the ConnectionClass property.

 

property ConnectionFactory: IConnectionFactory read write;

 

IConnectionFactory ConnectionFactory { get; set; }

 

Property ConnectionFactory() As IConnectionFactory

DefaultPort  protected    (declared in Server)

Gets or sets the default port number.

 

property DefaultPort: Int32 read write;

 

Int32 DefaultPort { get; set; }

 

Property DefaultPort() As Int32

EnableNagle    (declared in Server)

Gets or the sets flag indicating whether the Nagle's algoritm should be used.

Setting this flag doesn't have any immediate effect. Its value is used only when the server is opened (either by setting the Active property to true or by directly calling the Open method).

 

property EnableNagle: Boolean read write;

 

Boolean EnableNagle { get; set; }

 

Property EnableNagle() As Boolean

MaxLineLength    (declared in Server)

Gets or sets the default MaxLineLength value for all newly created Connections.

See the desription of the Connection.MaxLineLength property for details.

 

property MaxLineLength: Int32 read write;

 

Int32 MaxLineLength { get; set; }

 

Property MaxLineLength() As Int32

MaxLineLengthEnabled    (declared in Server)

Gets or sets the default MaxLineLengthEnabled value for all newly created Connections.

See the desription of the Connection.MaxLineLengthEnabled property for details.

 

property MaxLineLengthEnabled: Boolean read write;

 

Boolean MaxLineLengthEnabled { get; set; }

 

Property MaxLineLengthEnabled() As Boolean

Port    (declared in Server)

Gets or sets the port number on which the server will listen.

 

property Port: Int32 read write;

 

Int32 Port { get; set; }

 

Property Port() As Int32

SslOptions    (declared in Server)

Gets the SslConnectionFactory instance that can be used to configure the SSL options of the current Server instance.

 

property SslOptions: SslConnectionFactory read;

 

SslConnectionFactory SslOptions { get; }

 

ReadOnly Property SslOptions() As SslConnectionFactory

Timeout    (declared in Server)

Gets or sets the default Timeout value for all newly created Connections.

See the desription of the Connection.Timeout property for details.

 

property Timeout: Int32 read write;

 

Int32 Timeout { get; set; }

 

Property Timeout() As Int32

TimeoutEnabled    (declared in Server)

Gets or sets the default TimeoutEnabled value for all newly created Connections.

See the desription of the Connection.TimeoutEnabled property for details.

 

property TimeoutEnabled: Boolean read write;

 

Boolean TimeoutEnabled { get; set; }

 

Property TimeoutEnabled() As Boolean

 

IsRunningOnMono  protected    (declared in Server)

 

class method IsRunningOnMono: Boolean

 

static Boolean IsRunningOnMono()

 

Shared Function IsRunningOnMono() As Boolean

 

constructor

 

constructor

 

TcpServer()

 

Sub New()

constructor (IContainer)

 

constructor(container: IContainer)

 

TcpServer(IContainer container)

 

Sub New(container As IContainer)

Parameters:

  • container:

Close    (declared in Server)

This method causes the server to stop listening for incoming connections.

 

method Close

 

void Close()

 

Sub Close()

CreateWorker  protected

 

method CreateWorker(owner: Server): Object

 

Object CreateWorker(Server owner)

 

Function CreateWorker(owner As Server) As Object

Parameters:

  • owner:

Dispose  protected    (declared in Server)

Disposes of the current instance and releases all resources used by it.

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing:

HandleTcpConnection  protected

 

method HandleTcpConnection(connection: Connection)

 

void HandleTcpConnection(Connection connection)

 

Sub HandleTcpConnection(connection As Connection)

Parameters:

  • connection:

Open    (declared in Server)

This method causes the server to start listening for incoming connections.

 

method Open

 

void Open()

 

Sub Open()

ShouldSerializePort    (declared in Server)

Returns true when the DefaultPort is not equal to the Port.

 

method ShouldSerializePort: Boolean

 

Boolean ShouldSerializePort()

 

Function ShouldSerializePort() As Boolean

TriggerOnTcpConnection  protected

 

method TriggerOnTcpConnection(connection: Connection)

 

void TriggerOnTcpConnection(Connection connection)

 

Sub TriggerOnTcpConnection(connection As Connection)

Parameters:

  • connection:

 

OnTcpConnection

 

event OnTcpConnection: EventHandler<ConnectionEventArgs>;

 

delegate EventHandler<ConnectionEventArgs> OnTcpConnection()

 

Event OnTcpConnection As EventHandler<ConnectionEventArgs>