commit 90ae2ac2a6ff6ce6e8d30aee854ad32b39f0dad0
parent 1225e3067a317179c5a68468666bea000d64c6e1
Author: Mikolaj Lenczewski <33129490+EnderRifter@users.noreply.github.com>
Date: Sat, 15 Feb 2020 20:30:21 +0000
Can now connect to server after first connection drops. Big memory problem with UDP server though.
Diffstat:
13 files changed, 606 insertions(+), 958 deletions(-)
diff --git a/NetSharp/NetSharp/Client.cs b/NetSharp/NetSharp/Client.cs
@@ -123,15 +123,20 @@ namespace NetSharp
/// </summary>
public void Disconnect()
{
- this.SendSimple(new DisconnectPacket());
+ SendSimpleAsync(new DisconnectPacket(), Timeout.InfiniteTimeSpan).Wait();
socket.Shutdown(SocketShutdown.Both);
- socket.Disconnect(true);
+
+ if (socketOptions is TcpSocketOptions)
+ {
+ socket.Disconnect(true);
+ }
+
socket.Close();
}
/// <inheritdoc />
- public abstract Task SendBytesAsync(byte[] buffer, TimeSpan timeout);
+ public abstract Task<bool> SendBytesAsync(byte[] buffer, TimeSpan timeout);
/// <inheritdoc />
public abstract Task<byte[]> SendBytesWithResponseAsync(byte[] buffer, TimeSpan timeout);
@@ -141,7 +146,7 @@ namespace NetSharp
where Req : IRequestPacket, new() where Rep : IResponsePacket<Req>, new();
/// <inheritdoc />
- public abstract Task SendSimpleAsync<Req>(Req request, TimeSpan timeout) where Req : IRequestPacket, new();
+ public abstract Task<bool> SendSimpleAsync<Req>(Req request, TimeSpan timeout) where Req : IRequestPacket, new();
/// <inheritdoc />
public async Task<bool> TryBindAsync(IPAddress? localAddress, int? localPort, TimeSpan timeout)
diff --git a/NetSharp/NetSharp/Clients/TcpClient.cs b/NetSharp/NetSharp/Clients/TcpClient.cs
@@ -19,10 +19,10 @@ namespace NetSharp.Clients
}
/// <inheritdoc />
- public override async Task SendBytesAsync(byte[] buffer, TimeSpan timeout)
+ public override async Task<bool> SendBytesAsync(byte[] buffer, TimeSpan timeout)
{
SimpleDataPacket packet = new SimpleDataPacket(buffer);
- await SendSimpleAsync(packet, timeout);
+ return await SendSimpleAsync(packet, timeout);
}
/// <inheritdoc />
@@ -53,14 +53,14 @@ namespace NetSharp.Clients
}
/// <inheritdoc />
- public override async Task SendSimpleAsync<Req>(Req request, TimeSpan timeout)
+ public override async Task<bool> SendSimpleAsync<Req>(Req request, TimeSpan timeout)
{
uint packetTypeId = PacketRegistry.GetPacketId<Req>();
request.BeforeSerialisation();
ReadOnlyMemory<byte> serialisedRequest = request.Serialise();
Packet rawRequest = new Packet(serialisedRequest, packetTypeId, NetworkErrorCode.Ok);
- await DoSendPacketAsync(socket, rawRequest, SocketFlags.None, timeout);
+ return await DoSendPacketAsync(socket, rawRequest, SocketFlags.None, timeout);
}
}
}
\ No newline at end of file
diff --git a/NetSharp/NetSharp/Clients/UdpClient.cs b/NetSharp/NetSharp/Clients/UdpClient.cs
@@ -20,10 +20,10 @@ namespace NetSharp.Clients
}
/// <inheritdoc />
- public override async Task SendBytesAsync(byte[] buffer, TimeSpan timeout)
+ public override async Task<bool> SendBytesAsync(byte[] buffer, TimeSpan timeout)
{
SimpleDataPacket packet = new SimpleDataPacket(buffer);
- await SendSimpleAsync(packet, timeout);
+ return await SendSimpleAsync(packet, timeout);
}
/// <inheritdoc />
@@ -57,14 +57,14 @@ namespace NetSharp.Clients
}
/// <inheritdoc />
- public override async Task SendSimpleAsync<Req>(Req request, TimeSpan timeout)
+ public override async Task<bool> SendSimpleAsync<Req>(Req request, TimeSpan timeout)
{
uint packetTypeId = PacketRegistry.GetPacketId<Req>();
request.BeforeSerialisation();
ReadOnlyMemory<byte> serialisedRequest = request.Serialise();
Packet rawRequest = new Packet(serialisedRequest, packetTypeId, NetworkErrorCode.Ok);
- await DoSendPacketToAsync(socket, remoteEndPoint, rawRequest, SocketFlags.None, timeout);
+ return await DoSendPacketToAsync(socket, remoteEndPoint, rawRequest, SocketFlags.None, timeout);
}
}
}
\ No newline at end of file
diff --git a/NetSharp/NetSharp/Connection.cs b/NetSharp/NetSharp/Connection.cs
@@ -17,16 +17,6 @@ namespace NetSharp
public abstract class Connection : IDisposable
{
/// <summary>
- /// Cancellation token source for the <see cref="DoReceivePacketAsync"/> method.
- /// </summary>
- private readonly CancellationTokenSource readBytesCancellationTokenSource;
-
- /// <summary>
- /// Cancellation token source for the <see cref="DoSendPacketAsync"/> method.
- /// </summary>
- private readonly CancellationTokenSource writeBytesCancellationTokenSource;
-
- /// <summary>
/// Represents a packet that was not received correctly.
/// </summary>
protected static readonly Packet NullPacket = new Packet(new byte[0], 0, NetworkErrorCode.Error);
@@ -48,9 +38,6 @@ namespace NetSharp
protected Connection()
{
logger = new Logger(Stream.Null);
-
- readBytesCancellationTokenSource = new CancellationTokenSource();
- writeBytesCancellationTokenSource = new CancellationTokenSource();
}
/// <summary>
@@ -71,12 +58,6 @@ namespace NetSharp
{
if (disposing)
{
- readBytesCancellationTokenSource?.Cancel();
- readBytesCancellationTokenSource?.Dispose();
-
- writeBytesCancellationTokenSource?.Cancel();
- writeBytesCancellationTokenSource?.Dispose();
-
logger.Dispose();
}
}
@@ -92,13 +73,12 @@ namespace NetSharp
/// <returns>The packet that was received. <see cref="NullPacket"/> if not received correctly.</returns>
protected async Task<Packet> DoReceivePacketAsync(Socket remoteSocket, SocketFlags socketFlags, TimeSpan timeout)
{
+ CancellationTokenSource cts = new CancellationTokenSource(timeout);
+
try
{
- readBytesCancellationTokenSource.CancelAfter(timeout);
-
Packet request =
- await NetworkOperations.ReadPacketAsync(remoteSocket, socketFlags,
- readBytesCancellationTokenSource.Token);
+ await NetworkOperations.ReadPacketAsync(remoteSocket, socketFlags, cts.Token);
OnBytesReceived(remoteSocket.RemoteEndPoint, request.TotalSize);
@@ -121,6 +101,10 @@ namespace NetSharp
logger.LogException($"Exception while reading bytes from {remoteSocket.RemoteEndPoint}:", ex);
return NullPacket;
}
+ finally
+ {
+ cts.Dispose();
+ }
}
/// <summary>
@@ -138,13 +122,12 @@ namespace NetSharp
protected async Task<(Packet request, TransmissionResult packetResult)> DoReceivePacketFromAsync(
Socket socket, EndPoint remoteEndPoint, SocketFlags socketFlags, TimeSpan timeout)
{
+ CancellationTokenSource cts = new CancellationTokenSource(timeout);
+
try
{
- readBytesCancellationTokenSource.CancelAfter(timeout);
-
(Packet request, TransmissionResult packetResult) result =
- await NetworkOperations.ReadPacketFromAsync(socket, remoteEndPoint, socketFlags,
- readBytesCancellationTokenSource.Token);
+ await NetworkOperations.ReadPacketFromAsync(socket, remoteEndPoint, socketFlags, cts.Token);
OnBytesReceived(remoteEndPoint, result.request.TotalSize);
@@ -166,6 +149,10 @@ namespace NetSharp
logger.LogException($"Exception while reading bytes from {remoteEndPoint}:", ex);
return (NullPacket, NullTransmissionResult);
}
+ finally
+ {
+ cts.Dispose();
+ }
}
/// <summary>
@@ -180,12 +167,11 @@ namespace NetSharp
/// <returns>Whether the packet was successfully sent.</returns>
protected async Task<bool> DoSendPacketAsync(Socket remoteSocket, Packet packet, SocketFlags socketFlags, TimeSpan timeout)
{
+ CancellationTokenSource cts = new CancellationTokenSource(timeout);
+
try
{
- writeBytesCancellationTokenSource.CancelAfter(timeout);
-
- await NetworkOperations.WritePacketAsync(remoteSocket, packet, socketFlags,
- writeBytesCancellationTokenSource.Token);
+ await NetworkOperations.WritePacketAsync(remoteSocket, packet, socketFlags, cts.Token);
OnBytesSent(remoteSocket.RemoteEndPoint, packet.TotalSize);
@@ -208,6 +194,10 @@ namespace NetSharp
logger.LogException($"Exception while sending bytes to {remoteSocket.RemoteEndPoint}:", ex);
return false;
}
+ finally
+ {
+ cts.Dispose();
+ }
}
/// <summary>
@@ -224,19 +214,19 @@ namespace NetSharp
protected async Task<bool> DoSendPacketToAsync(Socket socket, EndPoint remoteEndPoint, Packet packet,
SocketFlags socketFlags, TimeSpan timeout)
{
+ CancellationTokenSource cts = new CancellationTokenSource(timeout);
+
try
{
- writeBytesCancellationTokenSource.CancelAfter(timeout);
-
if (packet.TotalSize > Constants.UdpMaxBufferSize)
{
- throw new Exception($"The given UDP packet exceeded the maximum allowed size of {Constants.UdpMaxBufferSize}, " +
- "and could not be sent. Consider splitting up the packet into multiple, smaller packets " +
- "that are less likely to get lost due to fragmentation, or using TCP instead.");
+ throw new Exception(
+ $"The given UDP packet exceeded the maximum allowed size of {Constants.UdpMaxBufferSize}, " +
+ "and could not be sent. Consider splitting up the packet into multiple, smaller packets " +
+ "that are less likely to get lost due to fragmentation, or using TCP instead.");
}
- await NetworkOperations.WritePacketToAsync(socket, remoteEndPoint, packet, socketFlags,
- writeBytesCancellationTokenSource.Token);
+ await NetworkOperations.WritePacketToAsync(socket, remoteEndPoint, packet, socketFlags, cts.Token);
OnBytesSent(remoteEndPoint, packet.TotalSize);
@@ -258,6 +248,10 @@ namespace NetSharp
logger.LogException($"Exception while sending bytes to {remoteEndPoint}:", ex);
return false;
}
+ finally
+ {
+ cts.Dispose();
+ }
}
/// <summary>
diff --git a/NetSharp/NetSharp/Extensions/ClientExtensions.cs b/NetSharp/NetSharp/Extensions/ClientExtensions.cs
@@ -17,8 +17,8 @@ namespace NetSharp.Extensions
/// </summary>
/// <param name="instance">The instance on which this extension method should be called.</param>
/// <param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
- public static void SendBytes(this Client instance, byte[] buffer) =>
- instance.SendBytesAsync(buffer, Timeout.InfiniteTimeSpan).Wait();
+ public static bool SendBytes(this Client instance, byte[] buffer) =>
+ instance.SendBytesAsync(buffer, Timeout.InfiniteTimeSpan).Result;
/// <summary>
/// Sends the given byte buffer to the connected remote endpoint. Blocks until the bytes are all sent, whilst
@@ -27,8 +27,8 @@ namespace NetSharp.Extensions
/// <param name="instance">The instance on which this extension method should be called.</param>
/// <param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
/// <param name="timeout">The timeout after which to cancel the transmission attempt.</param>
- public static void SendBytes(this Client instance, byte[] buffer, TimeSpan timeout) =>
- instance.SendBytesAsync(buffer, timeout).Wait();
+ public static bool SendBytes(this Client instance, byte[] buffer, TimeSpan timeout) =>
+ instance.SendBytesAsync(buffer, timeout).Result;
/// <summary>
/// Sends the given byte buffer to the connected remote endpoint asynchronously. Does not block, and does not
@@ -36,7 +36,7 @@ namespace NetSharp.Extensions
/// </summary>
/// <param name="instance">The instance on which this extension method should be called.</param>
/// <param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
- public static async Task SendBytesAsync(this Client instance, byte[] buffer) =>
+ public static async Task<bool> SendBytesAsync(this Client instance, byte[] buffer) =>
await instance.SendBytesAsync(buffer, Timeout.InfiniteTimeSpan);
/// <summary>
@@ -115,8 +115,8 @@ namespace NetSharp.Extensions
/// <typeparam name="Req">The type of request packet to send.</typeparam>
/// <param name="instance">The instance on which this extension method should be called.</param>
/// <param name="request">The request packet to send.</param>
- public static void SendSimple<Req>(this Client instance, Req request) where Req : IRequestPacket, new() =>
- instance.SendSimpleAsync(request, Timeout.InfiniteTimeSpan);
+ public static bool SendSimple<Req>(this Client instance, Req request) where Req : IRequestPacket, new() =>
+ instance.SendSimpleAsync(request, Timeout.InfiniteTimeSpan).Result;
/// <summary>
/// Sends the given request without listening for a response, blocking until it is sent.
@@ -126,8 +126,8 @@ namespace NetSharp.Extensions
/// <param name="instance">The instance on which this extension method should be called.</param>
/// <param name="request">The request packet to send.</param>
/// <param name="timeout">The timeout for which to wait for the operation to complete.</param>
- public static void SendSimple<Req>(this Client instance, Req request, TimeSpan timeout) where Req : IRequestPacket, new() =>
- instance.SendSimpleAsync(request, timeout);
+ public static bool SendSimple<Req>(this Client instance, Req request, TimeSpan timeout) where Req : IRequestPacket, new() =>
+ instance.SendSimpleAsync(request, timeout).Result;
/// <summary>
/// Sends the given request asynchronously without listening for a response, not blocking until it is sent.
@@ -136,7 +136,7 @@ namespace NetSharp.Extensions
/// <typeparam name="Req">The type of request packet to send.</typeparam>
/// <param name="instance">The instance on which this extension method should be called.</param>
/// <param name="request">The request packet to send.</param>
- public static async Task SendSimpleAsync<Req>(this Client instance, Req request) where Req : IRequestPacket, new() =>
+ public static async Task<bool> SendSimpleAsync<Req>(this Client instance, Req request) where Req : IRequestPacket, new() =>
await instance.SendSimpleAsync(request, Timeout.InfiniteTimeSpan);
/// <summary>
diff --git a/NetSharp/NetSharp/Interfaces/IClient.cs b/NetSharp/NetSharp/Interfaces/IClient.cs
@@ -26,7 +26,8 @@ namespace NetSharp.Interfaces
/// </summary>
/// <param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
/// <param name="timeout">The timeout after which to cancel the transmission attempt.</param>
- public Task SendBytesAsync(byte[] buffer, TimeSpan timeout);
+ /// <returns>Whether the transmission attempt was successful.</returns>
+ public Task<bool> SendBytesAsync(byte[] buffer, TimeSpan timeout);
/// <summary>
/// Sends the given byte buffer to the connected remote endpoint and waits for the response asynchronously.
@@ -61,7 +62,8 @@ namespace NetSharp.Interfaces
/// <typeparam name="Req">The type of request packet to send.</typeparam>
/// <param name="request">The request packet to send.</param>
/// <param name="timeout">The timeout for which to wait for the operation to complete.</param>
- public Task SendSimpleAsync<Req>(Req request, TimeSpan timeout) where Req : IRequestPacket, new();
+ /// <returns>Whether the transmission attempt was successful.</returns>
+ public Task<bool> SendSimpleAsync<Req>(Req request, TimeSpan timeout) where Req : IRequestPacket, new();
/// <summary>
/// Attempts to asynchronously bind the underlying socket to the given local address and port. Does not block.
diff --git a/NetSharp/NetSharp/NetSharp.csproj b/NetSharp/NetSharp/NetSharp.csproj
@@ -17,9 +17,8 @@
</PropertyGroup>
<ItemGroup>
- <PackageReference Include="Microsoft.CSharp" Version="4.6.0" />
+ <PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
<PackageReference Include="System.Dynamic.Runtime" Version="4.3.0" />
- <PackageReference Include="System.Text.Json" Version="4.6.0" />
- <PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.10.0" />
+ <PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.11.0" />
</ItemGroup>
</Project>
\ No newline at end of file
diff --git a/NetSharp/NetSharp/NetSharp.xml b/NetSharp/NetSharp/NetSharp.xml
@@ -4,193 +4,183 @@
<name>NetSharp</name>
</assembly>
<members>
- <member name="T:NetworkLib.Client">
+ <member name="T:NetSharp.Client">
<summary>
- Provides methods for connecting to and talking with a <see cref="T:NetworkLib.Interfaces.IServer"/> instance.
+ Provides methods for connecting to and talking with a <see cref="T:NetSharp.Interfaces.IServer"/> instance.
</summary>
</member>
- <member name="F:NetworkLib.Client.cancellationTokenSource">
+ <member name="F:NetSharp.Client.cancellationTokenSource">
<summary>
Provides <see cref="T:System.Threading.CancellationToken"/> instances for cancelling methods after a timeout period.
</summary>
</member>
- <member name="F:NetworkLib.Client.socket">
+ <member name="F:NetSharp.Client.socket">
<summary>
The <see cref="T:System.Net.Sockets.Socket"/> underlying the connection.
</summary>
</member>
- <member name="F:NetworkLib.Client.socketOptions">
+ <member name="F:NetSharp.Client.socketOptions">
<summary>
- Backing field for the <see cref="P:NetworkLib.Client.SocketOptions"/> property.
+ Backing field for the <see cref="P:NetSharp.Client.SocketOptions"/> property.
</summary>
</member>
- <member name="F:NetworkLib.Client.remoteEndPoint">
+ <member name="F:NetSharp.Client.remoteEndPoint">
<summary>
The remote endpoint with which this client communicates.
</summary>
</member>
- <member name="M:NetworkLib.Client.#ctor">
+ <member name="M:NetSharp.Client.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Client"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Client"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Client.#ctor(System.Net.Sockets.SocketType,System.Net.Sockets.ProtocolType,NetworkLib.Utils.Socket_Options.SocketOptionManager)">
+ <member name="M:NetSharp.Client.#ctor(System.Net.Sockets.SocketType,System.Net.Sockets.ProtocolType,NetSharp.Utils.Socket_Options.SocketOptionManager)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Client"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Client"/> class.
</summary>
<param name="socketType">The socket type for the underlying socket.</param>
<param name="protocolType">The protocol type for the underlying socket.</param>
- <param name="socketManager">The <see cref="T:NetworkLib.Utils.Socket_Options.SocketOptions"/> manager to use.</param>
+ <param name="socketManager">The <see cref="T:NetSharp.Utils.Socket_Options.SocketOptions"/> manager to use.</param>
</member>
- <member name="M:NetworkLib.Client.Finalize">
+ <member name="M:NetSharp.Client.Finalize">
<summary>
- Destroys an instance of the <see cref="T:NetworkLib.Client"/> class.
+ Destroys an instance of the <see cref="T:NetSharp.Client"/> class.
</summary>
</member>
- <member name="E:NetworkLib.Client.Connected">
+ <member name="E:NetSharp.Client.Connected">
<inheritdoc />
</member>
- <member name="E:NetworkLib.Client.Disconnected">
+ <member name="E:NetSharp.Client.Disconnected">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Client.SocketOptions">
+ <member name="P:NetSharp.Client.SocketOptions">
<summary>
The configured socket options for the underlying connection.
</summary>
</member>
- <member name="M:NetworkLib.Client.Dispose(System.Boolean)">
+ <member name="M:NetSharp.Client.Dispose(System.Boolean)">
<summary>
- Disposes of this <see cref="T:NetworkLib.Client"/> instance.
+ Disposes of this <see cref="T:NetSharp.Client"/> instance.
</summary>
<param name="disposing">Whether this instance is being disposed.</param>
</member>
- <member name="M:NetworkLib.Client.OnConnected(System.Net.EndPoint)">
+ <member name="M:NetSharp.Client.OnConnected(System.Net.EndPoint)">
<summary>
- Invokes the <see cref="E:NetworkLib.Client.Connected"/> event.
+ Invokes the <see cref="E:NetSharp.Client.Connected"/> event.
</summary>
<param name="endPoint">The remote endpoint with which a connection was made.</param>
</member>
- <member name="M:NetworkLib.Client.OnDisconnected(System.Net.EndPoint)">
+ <member name="M:NetSharp.Client.OnDisconnected(System.Net.EndPoint)">
<summary>
- Invokes the <see cref="E:NetworkLib.Client.Disconnected"/> event.
+ Invokes the <see cref="E:NetSharp.Client.Disconnected"/> event.
</summary>
<param name="endPoint">The remote endpoint with which a connection was lost.</param>
</member>
- <member name="M:NetworkLib.Client.Disconnect">
+ <member name="M:NetSharp.Client.Disconnect">
<summary>
Disconnects the client from the remote endpoint.
</summary>
</member>
- <member name="M:NetworkLib.Client.SendBytesAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Client.SendBytesAsync(System.Byte[],System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Client.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Client.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Client.SendComplexAsync``2(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Client.SendComplexAsync``2(``0,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Client.SendSimpleAsync``1(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Client.SendSimpleAsync``1(``0,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Client.TryBindAsync(System.Net.IPAddress,System.Nullable{System.Int32},System.TimeSpan)">
+ <member name="M:NetSharp.Client.TryBindAsync(System.Net.IPAddress,System.Nullable{System.Int32},System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Client.TryConnectAsync(System.Net.IPAddress,System.Int32,System.TimeSpan)">
+ <member name="M:NetSharp.Client.TryConnectAsync(System.Net.IPAddress,System.Int32,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Clients.TcpClient">
+ <member name="T:NetSharp.Clients.TcpClient">
<summary>
- Provides methods for TCP communication with a connected <see cref="T:NetworkLib.Servers.TcpServer"/> instance.
+ Provides methods for TCP communication with a connected <see cref="T:NetSharp.Servers.TcpServer"/> instance.
</summary>
</member>
- <member name="M:NetworkLib.Clients.TcpClient.#ctor">
+ <member name="M:NetSharp.Clients.TcpClient.#ctor">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.TcpClient.SendBytesAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Clients.TcpClient.SendBytesAsync(System.Byte[],System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.TcpClient.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Clients.TcpClient.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.TcpClient.SendComplexAsync``2(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Clients.TcpClient.SendComplexAsync``2(``0,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.TcpClient.SendSimpleAsync``1(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Clients.TcpClient.SendSimpleAsync``1(``0,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Clients.UdpClient">
+ <member name="T:NetSharp.Clients.UdpClient">
<summary>
- Provides methods for UDP communication with a connected <see cref="T:NetworkLib.Servers.UdpServer"/> instance.
+ Provides methods for UDP communication with a connected <see cref="T:NetSharp.Servers.UdpServer"/> instance.
</summary>
</member>
- <member name="M:NetworkLib.Clients.UdpClient.#ctor">
+ <member name="M:NetSharp.Clients.UdpClient.#ctor">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.UdpClient.SendBytesAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Clients.UdpClient.SendBytesAsync(System.Byte[],System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.UdpClient.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Clients.UdpClient.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.UdpClient.SendComplexAsync``2(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Clients.UdpClient.SendComplexAsync``2(``0,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Clients.UdpClient.SendSimpleAsync``1(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Clients.UdpClient.SendSimpleAsync``1(``0,System.TimeSpan)">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Connection">
+ <member name="T:NetSharp.Connection">
<summary>
- Base class for connections, holding methods shared between the <see cref="T:NetworkLib.Client"/> and <see cref="T:NetworkLib.Server"/> classes.
+ Base class for connections, holding methods shared between the <see cref="T:NetSharp.Client"/> and <see cref="T:NetSharp.Server"/> classes.
</summary>
</member>
- <member name="F:NetworkLib.Connection.readBytesCancellationTokenSource">
- <summary>
- Cancellation token source for the <see cref="M:NetworkLib.Connection.DoReceivePacketAsync(System.Net.Sockets.Socket,System.Net.Sockets.SocketFlags,System.TimeSpan)"/> method.
- </summary>
- </member>
- <member name="F:NetworkLib.Connection.writeBytesCancellationTokenSource">
- <summary>
- Cancellation token source for the <see cref="M:NetworkLib.Connection.DoSendPacketAsync(System.Net.Sockets.Socket,NetworkLib.Packets.Packet,System.Net.Sockets.SocketFlags,System.TimeSpan)"/> method.
- </summary>
- </member>
- <member name="F:NetworkLib.Connection.NullPacket">
+ <member name="F:NetSharp.Connection.NullPacket">
<summary>
Represents a packet that was not received correctly.
</summary>
</member>
- <member name="F:NetworkLib.Connection.NullTransmissionResult">
+ <member name="F:NetSharp.Connection.NullTransmissionResult">
<summary>
Represents a transmission result of an incorrect transmission.
</summary>
</member>
- <member name="F:NetworkLib.Connection.logger">
+ <member name="F:NetSharp.Connection.logger">
<summary>
The logger to which the server can log messages.
</summary>
</member>
- <member name="M:NetworkLib.Connection.#ctor">
+ <member name="M:NetSharp.Connection.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Connection"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Connection"/> class.
</summary>
</member>
- <member name="E:NetworkLib.Connection.BytesReceived">
+ <member name="E:NetSharp.Connection.BytesReceived">
<summary>
Signifies that some data has been received from the remote endpoint.
</summary>
</member>
- <member name="E:NetworkLib.Connection.BytesSent">
+ <member name="E:NetSharp.Connection.BytesSent">
<summary>
Signifies that some data was sent to the remote endpoint.
</summary>
</member>
- <member name="M:NetworkLib.Connection.Dispose(System.Boolean)">
+ <member name="M:NetSharp.Connection.Dispose(System.Boolean)">
<summary>
- Disposes of this <see cref="T:NetworkLib.Connection"/> instance.
+ Disposes of this <see cref="T:NetSharp.Connection"/> instance.
</summary>
<param name="disposing">Whether this instance is being disposed.</param>
</member>
- <member name="M:NetworkLib.Connection.DoReceivePacketAsync(System.Net.Sockets.Socket,System.Net.Sockets.SocketFlags,System.TimeSpan)">
+ <member name="M:NetSharp.Connection.DoReceivePacketAsync(System.Net.Sockets.Socket,System.Net.Sockets.SocketFlags,System.TimeSpan)">
<summary>
Listens for a packet to be received asynchronously within the given timeout, and returns the received packet.
</summary>
@@ -199,9 +189,9 @@
<param name="timeout">
The timespan within which to wait for a packet, returning a null packet if this limit is exceeded.
</param>
- <returns>The packet that was received. <see cref="F:NetworkLib.Connection.NullPacket"/> if not received correctly.</returns>
+ <returns>The packet that was received. <see cref="F:NetSharp.Connection.NullPacket"/> if not received correctly.</returns>
</member>
- <member name="M:NetworkLib.Connection.DoReceivePacketFromAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.Net.Sockets.SocketFlags,System.TimeSpan)">
+ <member name="M:NetSharp.Connection.DoReceivePacketFromAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.Net.Sockets.SocketFlags,System.TimeSpan)">
<summary>
Listens for a packet to be received asynchronously within the given timeout, and returns the received packet.
</summary>
@@ -212,10 +202,10 @@
The timespan within which to wait for a packet, returning a null packet if this limit is exceeded.
</param>
<returns>
- The packet that was received and the associated transmission result. <see cref="F:NetworkLib.Connection.NullPacket"/> if not received correctly.
+ The packet that was received and the associated transmission result. <see cref="F:NetSharp.Connection.NullPacket"/> if not received correctly.
</returns>
</member>
- <member name="M:NetworkLib.Connection.DoSendPacketAsync(System.Net.Sockets.Socket,NetworkLib.Packets.Packet,System.Net.Sockets.SocketFlags,System.TimeSpan)">
+ <member name="M:NetSharp.Connection.DoSendPacketAsync(System.Net.Sockets.Socket,NetSharp.Packets.Packet,System.Net.Sockets.SocketFlags,System.TimeSpan)">
<summary>
Sends the given packet asynchronously within the given timeout.
</summary>
@@ -227,7 +217,7 @@
</param>
<returns>Whether the packet was successfully sent.</returns>
</member>
- <member name="M:NetworkLib.Connection.DoSendPacketToAsync(System.Net.Sockets.Socket,System.Net.EndPoint,NetworkLib.Packets.Packet,System.Net.Sockets.SocketFlags,System.TimeSpan)">
+ <member name="M:NetSharp.Connection.DoSendPacketToAsync(System.Net.Sockets.Socket,System.Net.EndPoint,NetSharp.Packets.Packet,System.Net.Sockets.SocketFlags,System.TimeSpan)">
<summary>
Sends the given packet asynchronously within the given timeout.
</summary>
@@ -240,21 +230,21 @@
</param>
<returns>Whether the packet was successfully sent.</returns>
</member>
- <member name="M:NetworkLib.Connection.OnBytesReceived(System.Net.EndPoint,System.Int32)">
+ <member name="M:NetSharp.Connection.OnBytesReceived(System.Net.EndPoint,System.Int32)">
<summary>
- Invokes the <see cref="E:NetworkLib.Connection.BytesReceived"/> event.
+ Invokes the <see cref="E:NetSharp.Connection.BytesReceived"/> event.
</summary>
<param name="remoteEndPoint">The remote endpoint from which the bytes were received.</param>
<param name="bytesReceived">The number of bytes that were received from the remote endpoint.</param>
</member>
- <member name="M:NetworkLib.Connection.OnBytesSent(System.Net.EndPoint,System.Int32)">
+ <member name="M:NetSharp.Connection.OnBytesSent(System.Net.EndPoint,System.Int32)">
<summary>
- Invokes the <see cref="E:NetworkLib.Connection.BytesSent"/> event.
+ Invokes the <see cref="E:NetSharp.Connection.BytesSent"/> event.
</summary>
<param name="remoteEndPoint">The remote endpoint to which the bytes were sent.</param>
<param name="bytesSent">The number of bytes that were sent to the remote endpoint.</param>
</member>
- <member name="M:NetworkLib.Connection.ChangeLoggingStream(System.IO.Stream,NetworkLib.Logging.LogLevel)">
+ <member name="M:NetSharp.Connection.ChangeLoggingStream(System.IO.Stream,NetSharp.Logging.LogLevel)">
<summary>
Makes the client log to the given stream.
</summary>
@@ -263,15 +253,15 @@
The minimum severity level that new messages must have to be logged to the stream.
</param>
</member>
- <member name="M:NetworkLib.Connection.Dispose">
+ <member name="M:NetSharp.Connection.Dispose">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Extensions.ClientExtensions">
+ <member name="T:NetSharp.Extensions.ClientExtensions">
<summary>
- Provides additional methods and functionality to the <see cref="T:NetworkLib.Client"/> class.
+ Provides additional methods and functionality to the <see cref="T:NetSharp.Client"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendBytes(NetworkLib.Client,System.Byte[])">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendBytes(NetSharp.Client,System.Byte[])">
<summary>
Sends the given byte buffer to the connected remote endpoint. Blocks until the bytes are all sent, and does
not timeout.
@@ -279,7 +269,7 @@
<param name="instance">The instance on which this extension method should be called.</param>
<param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendBytes(NetworkLib.Client,System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendBytes(NetSharp.Client,System.Byte[],System.TimeSpan)">
<summary>
Sends the given byte buffer to the connected remote endpoint. Blocks until the bytes are all sent, whilst
observing a timeout of the given length.
@@ -288,7 +278,7 @@
<param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
<param name="timeout">The timeout after which to cancel the transmission attempt.</param>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendBytesAsync(NetworkLib.Client,System.Byte[])">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendBytesAsync(NetSharp.Client,System.Byte[])">
<summary>
Sends the given byte buffer to the connected remote endpoint asynchronously. Does not block, and does not
timeout.
@@ -296,7 +286,7 @@
<param name="instance">The instance on which this extension method should be called.</param>
<param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendBytesWithResponse(NetworkLib.Client,System.Byte[])">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendBytesWithResponse(NetSharp.Client,System.Byte[])">
<summary>
Sends the given byte buffer to the connected remote endpoint and waits for the response. Blocks until the
bytes are all sent and the response has been received, and does not timeout.
@@ -305,7 +295,7 @@
<param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
<returns>The byte buffer that was received as a response.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendBytesWithResponse(NetworkLib.Client,System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendBytesWithResponse(NetSharp.Client,System.Byte[],System.TimeSpan)">
<summary>
Sends the given byte buffer to the connected remote endpoint and waits for the response. Blocks until the
bytes are all sent and the response has been received, whilst observing a timeout of the given length.
@@ -315,7 +305,7 @@
<param name="timeout">The timeout after which to cancel the transmission attempt.</param>
<returns>The byte buffer that was received as a response.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendBytesWithResponseAsync(NetworkLib.Client,System.Byte[])">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendBytesWithResponseAsync(NetSharp.Client,System.Byte[])">
<summary>
Sends the given byte buffer to the connected remote endpoint and waits for the response asynchronously.
Does not block, and does not timeout.
@@ -324,7 +314,7 @@
<param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
<returns>The byte buffer received as a response to the sent buffer.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendComplex``2(NetworkLib.Client,``0)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendComplex``2(NetSharp.Client,``0)">
<summary>
Sends the given request and listens for a response of the given type. Blocks until the response is received.
Does not timeout.
@@ -335,7 +325,7 @@
<param name="request">The request packet to send.</param>
<returns>The received instance.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendComplex``2(NetworkLib.Client,``0,System.TimeSpan)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendComplex``2(NetSharp.Client,``0,System.TimeSpan)">
<summary>
Sends the given request and listens for a response of the given type. Blocks until the response is received.
Cancels the operation if the given timeout is exceeded.
@@ -347,7 +337,7 @@
<param name="timeout">The timeout for which to wait for the operation to complete.</param>
<returns>The received instance.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendComplexAsync``2(NetworkLib.Client,``0)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendComplexAsync``2(NetSharp.Client,``0)">
<summary>
Sends the given request and listens for a response of the given type asynchronously. Does not block. Does not timeout.
</summary>
@@ -357,7 +347,7 @@
<param name="request">The request packet to send.</param>
<returns>The received instance.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendSimple``1(NetworkLib.Client,``0)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendSimple``1(NetSharp.Client,``0)">
<summary>
Sends the given request without listening for a response, blocking until it is sent. Does not timeout.
</summary>
@@ -365,7 +355,7 @@
<param name="instance">The instance on which this extension method should be called.</param>
<param name="request">The request packet to send.</param>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendSimple``1(NetworkLib.Client,``0,System.TimeSpan)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendSimple``1(NetSharp.Client,``0,System.TimeSpan)">
<summary>
Sends the given request without listening for a response, blocking until it is sent.
Cancels the operation if the given timeout is exceeded.
@@ -375,7 +365,7 @@
<param name="request">The request packet to send.</param>
<param name="timeout">The timeout for which to wait for the operation to complete.</param>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.SendSimpleAsync``1(NetworkLib.Client,``0)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.SendSimpleAsync``1(NetSharp.Client,``0)">
<summary>
Sends the given request asynchronously without listening for a response, not blocking until it is sent.
Does not timeout.
@@ -384,7 +374,7 @@
<param name="instance">The instance on which this extension method should be called.</param>
<param name="request">The request packet to send.</param>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.TryBind(NetworkLib.Client,System.Net.IPAddress,System.Nullable{System.Int32})">
+ <member name="M:NetSharp.Extensions.ClientExtensions.TryBind(NetSharp.Client,System.Net.IPAddress,System.Nullable{System.Int32})">
<summary>
Attempts to synchronously bind the underlying socket to the given local address and port. Blocks. Does not timeout.
</summary>
@@ -393,7 +383,7 @@
<param name="localPort">The local port to bind to. Null if any port will suffice.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.TryBind(NetworkLib.Client,System.Net.IPAddress,System.Nullable{System.Int32},System.TimeSpan)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.TryBind(NetSharp.Client,System.Net.IPAddress,System.Nullable{System.Int32},System.TimeSpan)">
<summary>
Attempts to synchronously bind the underlying socket to the given local address and port. Blocks.
If the timeout is exceeded the binding attempt is aborted and the method returns false.
@@ -404,7 +394,7 @@
<param name="timeout">The timeout within which to attempt the binding.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.TryBindAsync(NetworkLib.Client,System.Net.IPAddress,System.Nullable{System.Int32})">
+ <member name="M:NetSharp.Extensions.ClientExtensions.TryBindAsync(NetSharp.Client,System.Net.IPAddress,System.Nullable{System.Int32})">
<summary>
Attempts to asynchronously bind the underlying socket to the given local address and port. Does not block.
Does not timeout.
@@ -414,9 +404,9 @@
<param name="localPort">The local port to bind to. Null if any port will suffice.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.TryConnect(NetworkLib.Client,System.Net.IPAddress,System.Int32)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.TryConnect(NetSharp.Client,System.Net.IPAddress,System.Int32)">
<summary>
- Attempts to connect to the remote <see cref="T:NetworkLib.Server"/> at the given <see cref="T:System.Net.IPAddress"/> and over the
+ Attempts to connect to the remote <see cref="T:NetSharp.Server"/> at the given <see cref="T:System.Net.IPAddress"/> and over the
given port. Does not timeout.
</summary>
<param name="instance">The instance on which this extension method should be called.</param>
@@ -424,9 +414,9 @@
<param name="remotePort">The remote port to connect over.</param>
<returns>Whether the connection was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.TryConnect(NetworkLib.Client,System.Net.IPAddress,System.Int32,System.TimeSpan)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.TryConnect(NetSharp.Client,System.Net.IPAddress,System.Int32,System.TimeSpan)">
<summary>
- Attempts to connect to the remote <see cref="T:NetworkLib.Server"/> at the given <see cref="T:System.Net.IPAddress"/> and over the
+ Attempts to connect to the remote <see cref="T:NetSharp.Server"/> at the given <see cref="T:System.Net.IPAddress"/> and over the
given port. If the timeout is exceeded the connection attempt is aborted and the method returns false.
</summary>
<param name="instance">The instance on which this extension method should be called.</param>
@@ -435,9 +425,9 @@
<param name="timeout">The timeout within which to attempt the connection.</param>
<returns>Whether the connection was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Extensions.ClientExtensions.TryConnectAsync(NetworkLib.Client,System.Net.IPAddress,System.Int32)">
+ <member name="M:NetSharp.Extensions.ClientExtensions.TryConnectAsync(NetSharp.Client,System.Net.IPAddress,System.Int32)">
<summary>
- Attempts to connect asynchronously to the remote <see cref="T:NetworkLib.Server"/> at the given <see cref="T:System.Net.IPAddress"/>
+ Attempts to connect asynchronously to the remote <see cref="T:NetSharp.Server"/> at the given <see cref="T:System.Net.IPAddress"/>
and over the given port. Does not timeout.
</summary>
<param name="instance">The instance on which this extension method should be called.</param>
@@ -445,12 +435,12 @@
<param name="remotePort">The remote port to connect over.</param>
<returns>Whether the connection was successful or not.</returns>
</member>
- <member name="T:NetworkLib.Extensions.ServerExtensions">
+ <member name="T:NetSharp.Extensions.ServerExtensions">
<summary>
- Provides additional methods and functionality to the <see cref="T:NetworkLib.Server"/> class.
+ Provides additional methods and functionality to the <see cref="T:NetSharp.Server"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Extensions.ServerExtensions.Run(NetworkLib.Server,System.Net.IPAddress,System.Int32)">
+ <member name="M:NetSharp.Extensions.ServerExtensions.Run(NetSharp.Server,System.Net.IPAddress,System.Int32)">
<summary>
Starts the server synchronously and starts accepting client connections. Blocks.
</summary>
@@ -458,14 +448,14 @@
<param name="localAddress">The local IP address to bind to.</param>
<param name="localPort">The local port to bind to.</param>
</member>
- <member name="M:NetworkLib.Extensions.ServerExtensions.Run(NetworkLib.Server,System.Net.IPAddress)">
+ <member name="M:NetSharp.Extensions.ServerExtensions.Run(NetSharp.Server,System.Net.IPAddress)">
<summary>
Starts the server synchronously and starts accepting client connections. Blocks. Uses the default connection port.
</summary>
<param name="instance">The instance on which this extension method should be called.</param>
<param name="localAddress">The local IP address to bind to.</param>
</member>
- <member name="M:NetworkLib.Extensions.ServerExtensions.RunAsync(NetworkLib.Server,System.Net.IPAddress)">
+ <member name="M:NetSharp.Extensions.ServerExtensions.RunAsync(NetSharp.Server,System.Net.IPAddress)">
<summary>
Starts the server asynchronously and starts accepting client connections. Does not block. Uses the default
connection port.
@@ -473,7 +463,7 @@
<param name="instance">The instance on which this extension method should be called.</param>
<param name="localAddress">The local IP address to bind to.</param>
</member>
- <member name="M:NetworkLib.Extensions.ServerExtensions.RunAsync(NetworkLib.Server,System.Net.IPAddress,System.Int32)">
+ <member name="M:NetSharp.Extensions.ServerExtensions.RunAsync(NetSharp.Server,System.Net.IPAddress,System.Int32)">
<summary>
Starts the server asynchronously and starts accepting client connections. Does not block.
</summary>
@@ -481,22 +471,22 @@
<param name="localAddress">The local IP address to bind to.</param>
<param name="localPort">The local port to bind to.</param>
</member>
- <member name="T:NetworkLib.Interfaces.IClient">
+ <member name="T:NetSharp.Interfaces.IClient">
<summary>
- Describes a client capable of asynchronous communication with an <see cref="T:NetworkLib.Interfaces.IServer"/> connection.
+ Describes a client capable of asynchronous communication with an <see cref="T:NetSharp.Interfaces.IServer"/> connection.
</summary>
</member>
- <member name="E:NetworkLib.Interfaces.IClient.Connected">
+ <member name="E:NetSharp.Interfaces.IClient.Connected">
<summary>
Signifies that a connection with the remote endpoint has been made.
</summary>
</member>
- <member name="E:NetworkLib.Interfaces.IClient.Disconnected">
+ <member name="E:NetSharp.Interfaces.IClient.Disconnected">
<summary>
Signifies that the connection with the remote endpoint was severed.
</summary>
</member>
- <member name="M:NetworkLib.Interfaces.IClient.SendBytesAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Interfaces.IClient.SendBytesAsync(System.Byte[],System.TimeSpan)">
<summary>
Sends the given byte buffer to the connected remote endpoint asynchronously. Does not block, and observes
a timeout of the given length.
@@ -504,8 +494,9 @@
</summary>
<param name="buffer">The bytes that should be sent to the connected remote endpoint.</param>
<param name="timeout">The timeout after which to cancel the transmission attempt.</param>
+ <returns>Whether the transmission attempt was successful.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IClient.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
+ <member name="M:NetSharp.Interfaces.IClient.SendBytesWithResponseAsync(System.Byte[],System.TimeSpan)">
<summary>
Sends the given byte buffer to the connected remote endpoint and waits for the response asynchronously.
Does not block, and observes a timeout of the given length.
@@ -519,7 +510,7 @@
</param>
<returns>The byte buffer received as a response to the sent buffer.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IClient.SendComplexAsync``2(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Interfaces.IClient.SendComplexAsync``2(``0,System.TimeSpan)">
<summary>
Sends the given request and listens for a response of the given type asynchronously. Does not block.
Cancels the operation if the given timeout is exceeded
@@ -530,7 +521,7 @@
<param name="timeout">The timeout for which to wait for the operation to complete.</param>
<returns>The received instance.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IClient.SendSimpleAsync``1(``0,System.TimeSpan)">
+ <member name="M:NetSharp.Interfaces.IClient.SendSimpleAsync``1(``0,System.TimeSpan)">
<summary>
Sends the given request asynchronously without listening for a response, not blocking until it is sent.
Cancels the operation if the given timeout is exceeded.
@@ -538,8 +529,9 @@
<typeparam name="Req">The type of request packet to send.</typeparam>
<param name="request">The request packet to send.</param>
<param name="timeout">The timeout for which to wait for the operation to complete.</param>
+ <returns>Whether the transmission attempt was successful.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IClient.TryBindAsync(System.Net.IPAddress,System.Nullable{System.Int32},System.TimeSpan)">
+ <member name="M:NetSharp.Interfaces.IClient.TryBindAsync(System.Net.IPAddress,System.Nullable{System.Int32},System.TimeSpan)">
<summary>
Attempts to asynchronously bind the underlying socket to the given local address and port. Does not block.
If the timeout is exceeded the binding attempt is aborted and the method returns false.
@@ -549,9 +541,9 @@
<param name="timeout">The timeout within which to attempt the binding.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IClient.TryConnectAsync(System.Net.IPAddress,System.Int32,System.TimeSpan)">
+ <member name="M:NetSharp.Interfaces.IClient.TryConnectAsync(System.Net.IPAddress,System.Int32,System.TimeSpan)">
<summary>
- Attempts to connect asynchronously to the remote <see cref="T:NetworkLib.Server"/> at the given <see cref="T:System.Net.IPAddress"/>
+ Attempts to connect asynchronously to the remote <see cref="T:NetSharp.Server"/> at the given <see cref="T:System.Net.IPAddress"/>
and over the given port. If the timeout is exceeded the connection attempt is aborted and the method returns false.
</summary>
<param name="remoteAddress">The remote IP address to connect to.</param>
@@ -559,91 +551,91 @@
<param name="timeout">The timeout within which to attempt the connection.</param>
<returns>Whether the connection was successful or not.</returns>
</member>
- <member name="T:NetworkLib.Interfaces.INetworkSerialisable">
+ <member name="T:NetSharp.Interfaces.INetworkSerialisable">
<summary>
Describes an object that can be serialised to be sent across the network.
</summary>
</member>
- <member name="M:NetworkLib.Interfaces.INetworkSerialisable.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Interfaces.INetworkSerialisable.Deserialise(System.ReadOnlyMemory{System.Byte})">
<summary>
Deserialises the object instance from a byte array.
</summary>
<param name="serialisedObject">The memory containing the serialised object instance.</param>
</member>
- <member name="M:NetworkLib.Interfaces.INetworkSerialisable.Serialise">
+ <member name="M:NetSharp.Interfaces.INetworkSerialisable.Serialise">
<summary>
Serialises the object instance into a byte array.
</summary>
<returns>The memory containing the serialised object instance.</returns>
</member>
- <member name="T:NetworkLib.Interfaces.IPacket">
+ <member name="T:NetSharp.Interfaces.IPacket">
<summary>
Describes the methods and properties that every packet
</summary>
</member>
- <member name="M:NetworkLib.Interfaces.IPacket.AfterDeserialisation">
+ <member name="M:NetSharp.Interfaces.IPacket.AfterDeserialisation">
<summary>
Allows for custom fields to be converted from their serialised format, after being received from the network.
</summary>
</member>
- <member name="M:NetworkLib.Interfaces.IPacket.BeforeSerialisation">
+ <member name="M:NetSharp.Interfaces.IPacket.BeforeSerialisation">
<summary>
Allows for custom fields to be converted into another format prior to being sent via the network.
</summary>
</member>
- <member name="T:NetworkLib.Interfaces.IRequestPacket">
+ <member name="T:NetSharp.Interfaces.IRequestPacket">
<summary>
Describes a request packet.
</summary>
</member>
- <member name="T:NetworkLib.Interfaces.IResponsePacket`1">
+ <member name="T:NetSharp.Interfaces.IResponsePacket`1">
<summary>
Describes a response packet to a request packet.
</summary>
<typeparam name="TReq">The request packet that this type is a response to.</typeparam>
</member>
- <member name="P:NetworkLib.Interfaces.IResponsePacket`1.RequestPacket">
+ <member name="P:NetSharp.Interfaces.IResponsePacket`1.RequestPacket">
<summary>
The request packet that was handled with this response packet.
</summary>
</member>
- <member name="T:NetworkLib.Interfaces.IServer">
+ <member name="T:NetSharp.Interfaces.IServer">
<summary>
- Describes a server capable of asynchronously handling multiple <see cref="T:NetworkLib.Interfaces.IClient"/> connections at once.
+ Describes a server capable of asynchronously handling multiple <see cref="T:NetSharp.Interfaces.IClient"/> connections at once.
</summary>
</member>
- <member name="E:NetworkLib.Interfaces.IServer.ClientConnected">
+ <member name="E:NetSharp.Interfaces.IServer.ClientConnected">
<summary>
Signifies that a connection with a remote endpoint has been made.
</summary>
</member>
- <member name="E:NetworkLib.Interfaces.IServer.ClientDisconnected">
+ <member name="E:NetSharp.Interfaces.IServer.ClientDisconnected">
<summary>
Signifies that a connection with a remote endpoint has been lost.
</summary>
</member>
- <member name="E:NetworkLib.Interfaces.IServer.ServerStarted">
+ <member name="E:NetSharp.Interfaces.IServer.ServerStarted">
<summary>
Signifies that the server was started and clients will start being accepted.
</summary>
</member>
- <member name="E:NetworkLib.Interfaces.IServer.ServerStopped">
+ <member name="E:NetSharp.Interfaces.IServer.ServerStopped">
<summary>
Signifies that the server was stopped and clients will stop being accepted.
</summary>
</member>
- <member name="M:NetworkLib.Interfaces.IServer.RunAsync(System.Net.EndPoint)">
+ <member name="M:NetSharp.Interfaces.IServer.RunAsync(System.Net.EndPoint)">
<summary>
Starts the server asynchronously and starts accepting client connections. Does not block.
</summary>
<param name="localEndPoint">The local endpoint to bind to.</param>
</member>
- <member name="M:NetworkLib.Interfaces.IServer.Shutdown">
+ <member name="M:NetSharp.Interfaces.IServer.Shutdown">
<summary>
Shuts down the server.
</summary>
</member>
- <member name="M:NetworkLib.Interfaces.IServer.TryDeregisterComplexPacketHandler``2(NetworkLib.ComplexPacketHandler{``0,``1}@)">
+ <member name="M:NetSharp.Interfaces.IServer.TryDeregisterComplexPacketHandler``2(NetSharp.ComplexPacketHandler{``0,``1}@)">
<summary>
Attempts to deregister the complex packet handler delegate for all packets of the given type. If a handler
method doesn't exist for the given packet type, <paramref name="oldHandlerDelegate"/> will be <c>default</c>.
@@ -653,7 +645,7 @@
<param name="oldHandlerDelegate">The old handler delegate method that was previously registered.</param>
<returns>Whether the packet handler delegate was successfully deregistered.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IServer.TryDeregisterSimplePacketHandler``1(NetworkLib.SimplePacketHandler{``0}@)">
+ <member name="M:NetSharp.Interfaces.IServer.TryDeregisterSimplePacketHandler``1(NetSharp.SimplePacketHandler{``0}@)">
<summary>
Attempts to deregister the simple packet handler delegate for all packets of the given type. If a handler
method doesn't exist for the given packet type, <paramref name="oldHandlerDelegate"/> will be <c>default</c>.
@@ -662,7 +654,7 @@
<param name="oldHandlerDelegate">The old handler delegate method that was previously registered.</param>
<returns>Whether the packet handler delegate was successfully deregistered.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IServer.TryRegisterComplexPacketHandler``2(NetworkLib.ComplexPacketHandler{``0,``1})">
+ <member name="M:NetSharp.Interfaces.IServer.TryRegisterComplexPacketHandler``2(NetSharp.ComplexPacketHandler{``0,``1})">
<summary>
Attempts to register a complex packet handler delegate for all packets of the given type. If a handler
method already exists for the given packet type, it will be updated and replaced with the given one.
@@ -672,7 +664,7 @@
<param name="handlerDelegate">The delegate method to register as the complex packet handler.</param>
<returns>Whether the packet handler delegate was successfully registered.</returns>
</member>
- <member name="M:NetworkLib.Interfaces.IServer.TryRegisterSimplePacketHandler``1(NetworkLib.SimplePacketHandler{``0})">
+ <member name="M:NetSharp.Interfaces.IServer.TryRegisterSimplePacketHandler``1(NetSharp.SimplePacketHandler{``0})">
<summary>
Attempts to register a simple packet handler delegate for all packets of the given type. If a handler
method already exists for the given packet type, it will be updated and replaced with the given one.
@@ -681,61 +673,61 @@
<param name="handlerDelegate">The delegate method to register as the simple packet handler.</param>
<returns>Whether the packet handler delegate was successfully registered.</returns>
</member>
- <member name="T:NetworkLib.Logging.LogLevel">
+ <member name="T:NetSharp.Logging.LogLevel">
<summary>
Specifies the severity level of a log message.
</summary>
</member>
- <member name="F:NetworkLib.Logging.LogLevel.Info">
+ <member name="F:NetSharp.Logging.LogLevel.Info">
<summary>
The logged message contains some information. Lowest severity.
</summary>
</member>
- <member name="F:NetworkLib.Logging.LogLevel.Warn">
+ <member name="F:NetSharp.Logging.LogLevel.Warn">
<summary>
The logged message contains a warning. Higher severity.
</summary>
</member>
- <member name="F:NetworkLib.Logging.LogLevel.Error">
+ <member name="F:NetSharp.Logging.LogLevel.Error">
<summary>
The logged message contains details about an error. Higher severity.
</summary>
</member>
- <member name="F:NetworkLib.Logging.LogLevel.Exception">
+ <member name="F:NetSharp.Logging.LogLevel.Exception">
<summary>
The logged message contains details about an exception. Highest severity.
</summary>
</member>
- <member name="T:NetworkLib.Logging.Logger">
+ <member name="T:NetSharp.Logging.Logger">
<summary>
A simple logger capable of writing text to a stream.
</summary>
</member>
- <member name="F:NetworkLib.Logging.Logger.loggingStream">
+ <member name="F:NetSharp.Logging.Logger.loggingStream">
<summary>
The stream to which messages will be logged.
</summary>
</member>
- <member name="F:NetworkLib.Logging.Logger.writer">
+ <member name="F:NetSharp.Logging.Logger.writer">
<summary>
The text writer we will use to log messages to the underlying stream.
</summary>
</member>
- <member name="F:NetworkLib.Logging.Logger.minimumSeverity">
+ <member name="F:NetSharp.Logging.Logger.minimumSeverity">
<summary>
The minimum severity that log messages need to be logged to the underlying stream.
</summary>
</member>
- <member name="M:NetworkLib.Logging.Logger.#ctor(System.IO.Stream)">
+ <member name="M:NetSharp.Logging.Logger.#ctor(System.IO.Stream)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Logging.Logger"/> struct.
+ Initialises a new instance of the <see cref="T:NetSharp.Logging.Logger"/> struct.
</summary>
<param name="streamToLogTo">The stream that the logger instance should log messages to.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.Dispose">
+ <member name="M:NetSharp.Logging.Logger.Dispose">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Logging.Logger.Log(System.String,System.Exception,NetworkLib.Logging.LogLevel)">
+ <member name="M:NetSharp.Logging.Logger.Log(System.String,System.Exception,NetSharp.Logging.LogLevel)">
<summary>
Logs a message to the underlying stream, along with the given exception and at the given severity.
</summary>
@@ -743,7 +735,7 @@
<param name="exception">The exception that occurred (if any).</param>
<param name="severity">The severity of the message that is being logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogAsync(System.String,System.Exception,NetworkLib.Logging.LogLevel)">
+ <member name="M:NetSharp.Logging.Logger.LogAsync(System.String,System.Exception,NetSharp.Logging.LogLevel)">
<summary>
Logs a message asynchronously to the underlying stream, along with the given exception and at the given severity.
</summary>
@@ -751,476 +743,476 @@
<param name="exception">The exception that occurred (if any).</param>
<param name="severity">The severity of the message that is being logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogError(System.String)">
+ <member name="M:NetSharp.Logging.Logger.LogError(System.String)">
<summary>
- Logs an error to the underlying stream, with severity <see cref="F:NetworkLib.Logging.LogLevel.Info"/>.
+ Logs an error to the underlying stream, with severity <see cref="F:NetSharp.Logging.LogLevel.Info"/>.
</summary>
<param name="message">The error that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogErrorAsync(System.String)">
+ <member name="M:NetSharp.Logging.Logger.LogErrorAsync(System.String)">
<summary>
- Logs an error to the underlying stream asynchronously, with severity <see cref="F:NetworkLib.Logging.LogLevel.Error"/>.
+ Logs an error to the underlying stream asynchronously, with severity <see cref="F:NetSharp.Logging.LogLevel.Error"/>.
</summary>
<param name="message">The error that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogException(System.Exception)">
+ <member name="M:NetSharp.Logging.Logger.LogException(System.Exception)">
<summary>
- Logs an exception to the underlying stream, with severity <see cref="F:NetworkLib.Logging.LogLevel.Exception"/>.
+ Logs an exception to the underlying stream, with severity <see cref="F:NetSharp.Logging.LogLevel.Exception"/>.
</summary>
<param name="exception">The exception that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogException(System.String,System.Exception)">
+ <member name="M:NetSharp.Logging.Logger.LogException(System.String,System.Exception)">
<summary>
Logs an exception to the underlying stream, along with a short debug message, with severity
- <see cref="F:NetworkLib.Logging.LogLevel.Exception"/>.
+ <see cref="F:NetSharp.Logging.LogLevel.Exception"/>.
</summary>
<param name="message">The debug message that should be logged with the exception.</param>
<param name="exception">The exception that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogExceptionAsync(System.Exception)">
+ <member name="M:NetSharp.Logging.Logger.LogExceptionAsync(System.Exception)">
<summary>
- Logs an exception to the underlying stream asynchronously, with severity <see cref="F:NetworkLib.Logging.LogLevel.Exception"/>.
+ Logs an exception to the underlying stream asynchronously, with severity <see cref="F:NetSharp.Logging.LogLevel.Exception"/>.
</summary>
<param name="exception">The exception that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogExceptionAsync(System.String,System.Exception)">
+ <member name="M:NetSharp.Logging.Logger.LogExceptionAsync(System.String,System.Exception)">
<summary>
Logs an exception to the underlying stream asynchronously, along with a short debug message, with severity
- <see cref="F:NetworkLib.Logging.LogLevel.Exception"/>.
+ <see cref="F:NetSharp.Logging.LogLevel.Exception"/>.
</summary>
<param name="message">The debug message that should be logged with the exception.</param>
<param name="exception">The exception that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogMessage(System.String)">
+ <member name="M:NetSharp.Logging.Logger.LogMessage(System.String)">
<summary>
- Logs a message to the underlying stream, with severity <see cref="F:NetworkLib.Logging.LogLevel.Info"/>.
+ Logs a message to the underlying stream, with severity <see cref="F:NetSharp.Logging.LogLevel.Info"/>.
</summary>
<param name="message">The message that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogMessageAsync(System.String)">
+ <member name="M:NetSharp.Logging.Logger.LogMessageAsync(System.String)">
<summary>
- Logs a message to the underlying stream asynchronously, with severity <see cref="F:NetworkLib.Logging.LogLevel.Info"/>.
+ Logs a message to the underlying stream asynchronously, with severity <see cref="F:NetSharp.Logging.LogLevel.Info"/>.
</summary>
<param name="message">The message that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogWarning(System.String)">
+ <member name="M:NetSharp.Logging.Logger.LogWarning(System.String)">
<summary>
- Logs a warning to the underlying stream, with severity <see cref="F:NetworkLib.Logging.LogLevel.Info"/>.
+ Logs a warning to the underlying stream, with severity <see cref="F:NetSharp.Logging.LogLevel.Info"/>.
</summary>
<param name="message">The warning that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.LogWarningAsync(System.String)">
+ <member name="M:NetSharp.Logging.Logger.LogWarningAsync(System.String)">
<summary>
- Logs a warning to the underlying stream asynchronously, with severity <see cref="F:NetworkLib.Logging.LogLevel.Warn"/>.
+ Logs a warning to the underlying stream asynchronously, with severity <see cref="F:NetSharp.Logging.LogLevel.Warn"/>.
</summary>
<param name="message">The warning that should be logged.</param>
</member>
- <member name="M:NetworkLib.Logging.Logger.SetMinimumLogSeverity(NetworkLib.Logging.LogLevel)">
+ <member name="M:NetSharp.Logging.Logger.SetMinimumLogSeverity(NetSharp.Logging.LogLevel)">
<summary>
Sets the minimum severity level that new messages need to be logged to the underlying stream.
</summary>
<param name="minimumSeverityLevel">The new minimum severity level.</param>
</member>
- <member name="T:NetworkLib.Packets.Builtin.ConnectPacket">
+ <member name="T:NetSharp.Packets.Builtin.ConnectPacket">
<summary>
A simple connection request packet for the UDP protocol.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectPacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.ConnectPacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectPacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.ConnectPacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.ConnectPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectPacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.ConnectPacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.ConnectResponsePacket">
+ <member name="T:NetSharp.Packets.Builtin.ConnectResponsePacket">
<summary>
- A response packet for the <see cref="T:NetworkLib.Packets.Builtin.ConnectPacket"/>.
+ A response packet for the <see cref="T:NetSharp.Packets.Builtin.ConnectPacket"/>.
</summary>
</member>
- <member name="P:NetworkLib.Packets.Builtin.ConnectResponsePacket.RequestPacket">
+ <member name="P:NetSharp.Packets.Builtin.ConnectResponsePacket.RequestPacket">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectResponsePacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.ConnectResponsePacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectResponsePacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.ConnectResponsePacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectResponsePacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.ConnectResponsePacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.ConnectResponsePacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.ConnectResponsePacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.DataPacket">
+ <member name="T:NetSharp.Packets.Builtin.DataPacket">
<summary>
A simple data transfer packet, that allows for the transmission of an arbitrary number of frames.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Builtin.DataPacket.RequestBuffer">
+ <member name="F:NetSharp.Packets.Builtin.DataPacket.RequestBuffer">
<summary>
The data that should be transferred across the network.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataPacket.#ctor">
+ <member name="M:NetSharp.Packets.Builtin.DataPacket.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Builtin.DataPacket"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Builtin.DataPacket"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataPacket.#ctor(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.DataPacket.#ctor(System.ReadOnlyMemory{System.Byte})">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Builtin.DataPacket"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Builtin.DataPacket"/> class.
</summary>
<param name="buffer">The data that this request packet should contain.</param>
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataPacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.DataPacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataPacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.DataPacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.DataPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataPacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.DataPacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.DataResponsePacket">
+ <member name="T:NetSharp.Packets.Builtin.DataResponsePacket">
<summary>
- A response packet for the <see cref="T:NetworkLib.Packets.Builtin.DataPacket"/>.
+ A response packet for the <see cref="T:NetSharp.Packets.Builtin.DataPacket"/>.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Builtin.DataResponsePacket.ResponseBuffer">
+ <member name="F:NetSharp.Packets.Builtin.DataResponsePacket.ResponseBuffer">
<summary>
The data that should be transferred across the network.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataResponsePacket.#ctor">
+ <member name="M:NetSharp.Packets.Builtin.DataResponsePacket.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Builtin.DataResponsePacket"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Builtin.DataResponsePacket"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataResponsePacket.#ctor(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.DataResponsePacket.#ctor(System.ReadOnlyMemory{System.Byte})">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Builtin.DataResponsePacket"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Builtin.DataResponsePacket"/> class.
</summary>
<param name="buffer">The data that this response packet should contain.</param>
</member>
- <member name="P:NetworkLib.Packets.Builtin.DataResponsePacket.RequestPacket">
+ <member name="P:NetSharp.Packets.Builtin.DataResponsePacket.RequestPacket">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataResponsePacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.DataResponsePacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataResponsePacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.DataResponsePacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataResponsePacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.DataResponsePacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DataResponsePacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.DataResponsePacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.DisconnectPacket">
+ <member name="T:NetSharp.Packets.Builtin.DisconnectPacket">
<summary>
A simple disconnect packet for the UDP protocol.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.DisconnectPacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.DisconnectPacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DisconnectPacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.DisconnectPacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DisconnectPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.DisconnectPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.DisconnectPacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.DisconnectPacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.PingPacket">
+ <member name="T:NetSharp.Packets.Builtin.PingPacket">
<summary>
A simple ping request packet for heartbeat monitoring and RTT measurement.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingPacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.PingPacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingPacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.PingPacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.PingPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingPacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.PingPacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.PingResponsePacket">
+ <member name="T:NetSharp.Packets.Builtin.PingResponsePacket">
<summary>
- A response packet for the <see cref="T:NetworkLib.Packets.Builtin.PingPacket"/>.
+ A response packet for the <see cref="T:NetSharp.Packets.Builtin.PingPacket"/>.
</summary>
</member>
- <member name="P:NetworkLib.Packets.Builtin.PingResponsePacket.RequestPacket">
+ <member name="P:NetSharp.Packets.Builtin.PingResponsePacket.RequestPacket">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingResponsePacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.PingResponsePacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingResponsePacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.PingResponsePacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingResponsePacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.PingResponsePacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.PingResponsePacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.PingResponsePacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.Builtin.SimpleDataPacket">
+ <member name="T:NetSharp.Packets.Builtin.SimpleDataPacket">
<summary>
A simple one-time-use data transfer packet, that allows for the transmission of an arbitrary number of frames.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Builtin.SimpleDataPacket.RequestBuffer">
+ <member name="F:NetSharp.Packets.Builtin.SimpleDataPacket.RequestBuffer">
<summary>
The data that should be transferred across the network.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.SimpleDataPacket.#ctor">
+ <member name="M:NetSharp.Packets.Builtin.SimpleDataPacket.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Builtin.SimpleDataPacket"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Builtin.SimpleDataPacket"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Builtin.SimpleDataPacket.#ctor(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.SimpleDataPacket.#ctor(System.ReadOnlyMemory{System.Byte})">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Builtin.SimpleDataPacket"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Builtin.SimpleDataPacket"/> class.
</summary>
<param name="buffer">The data that this request packet should contain.</param>
</member>
- <member name="M:NetworkLib.Packets.Builtin.SimpleDataPacket.AfterDeserialisation">
+ <member name="M:NetSharp.Packets.Builtin.SimpleDataPacket.AfterDeserialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.SimpleDataPacket.BeforeSerialisation">
+ <member name="M:NetSharp.Packets.Builtin.SimpleDataPacket.BeforeSerialisation">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.SimpleDataPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
+ <member name="M:NetSharp.Packets.Builtin.SimpleDataPacket.Deserialise(System.ReadOnlyMemory{System.Byte})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Packets.Builtin.SimpleDataPacket.Serialise">
+ <member name="M:NetSharp.Packets.Builtin.SimpleDataPacket.Serialise">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Packets.NetworkErrorCode">
+ <member name="T:NetSharp.Packets.NetworkErrorCode">
<summary>
Enumerates the possible error codes for network operations, being held in the packet.
</summary>
</member>
- <member name="F:NetworkLib.Packets.NetworkErrorCode.Ok">
+ <member name="F:NetSharp.Packets.NetworkErrorCode.Ok">
<summary>
Signifies that there was no error during transmission.
</summary>
</member>
- <member name="F:NetworkLib.Packets.NetworkErrorCode.Error">
+ <member name="F:NetSharp.Packets.NetworkErrorCode.Error">
<summary>
A generic error occurred during packet transmission.
</summary>
</member>
- <member name="T:NetworkLib.Packets.Packet">
+ <member name="T:NetSharp.Packets.Packet">
<summary>
Represents a packet that is transmitted over the network.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Packet.HeaderSize">
+ <member name="F:NetSharp.Packets.Packet.HeaderSize">
<summary>
The size of the packet header in bytes.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Packet.Buffer">
+ <member name="F:NetSharp.Packets.Packet.Buffer">
<summary>
The data held in this packet.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Packet.Count">
+ <member name="F:NetSharp.Packets.Packet.Count">
<summary>
The size of the packet's data.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Packet.ErrorCode">
+ <member name="F:NetSharp.Packets.Packet.ErrorCode">
<summary>
The error code for this packet.
</summary>
</member>
- <member name="F:NetworkLib.Packets.Packet.Type">
+ <member name="F:NetSharp.Packets.Packet.Type">
<summary>
The packet type.
</summary>
</member>
- <member name="M:NetworkLib.Packets.Packet.#ctor(System.ReadOnlyMemory{System.Byte},System.UInt32,NetworkLib.Packets.NetworkErrorCode)">
+ <member name="M:NetSharp.Packets.Packet.#ctor(System.ReadOnlyMemory{System.Byte},System.UInt32,NetSharp.Packets.NetworkErrorCode)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.Packet"/> struct.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.Packet"/> struct.
</summary>
<param name="data">The data that should be transmitted in the packet.</param>
<param name="type">The packet type.</param>
<param name="errorCode">The error code associated with this transmission.</param>
</member>
- <member name="P:NetworkLib.Packets.Packet.TotalSize">
+ <member name="P:NetSharp.Packets.Packet.TotalSize">
<summary>
Returns the total size of the serialised packet (including the header) in bytes.
</summary>
<returns>The total size of the serialised packet (including the header) in bytes.</returns>
</member>
- <member name="M:NetworkLib.Packets.Packet.Deserialise(System.Memory{System.Byte})">
+ <member name="M:NetSharp.Packets.Packet.Deserialise(System.Memory{System.Byte})">
<summary>
Deserialises the given buffer into a packet instance.
</summary>
<param name="buffer">The byte buffer to serialise.</param>
<returns>The deserialised packet instance.</returns>
</member>
- <member name="M:NetworkLib.Packets.Packet.Serialise(NetworkLib.Packets.Packet)">
+ <member name="M:NetSharp.Packets.Packet.Serialise(NetSharp.Packets.Packet)">
<summary>
Serialises the given packet instance into a single byte buffer.
</summary>
<param name="instance">The packet instance to serialise.</param>
<returns>The byte buffer that represents the packet instance.</returns>
</member>
- <member name="T:NetworkLib.Packets.PacketRegistry">
+ <member name="T:NetSharp.Packets.PacketRegistry">
<summary>
Provides method of registering request packets and their relevant response packets, as well as mapping their ids.
</summary>
</member>
- <member name="F:NetworkLib.Packets.PacketRegistry.AutomaticPacketTypeIdStartPoint">
+ <member name="F:NetSharp.Packets.PacketRegistry.AutomaticPacketTypeIdStartPoint">
<summary>
The start id for automatically generated packet type ids. Any custom packet type ids lower than this value
that come from external assemblies will be incremented by this value, to ensure that there are no clashes.
</summary>
</member>
- <member name="F:NetworkLib.Packets.PacketRegistry.currentAutomaticPacketTypeIdCounterLockObject">
+ <member name="F:NetSharp.Packets.PacketRegistry.currentAutomaticPacketTypeIdCounterLockObject">
<summary>
- The lock object for synchronising access to the <see cref="F:NetworkLib.Packets.PacketRegistry.currentAutomaticPacketTypeIdCounter"/> field.
+ The lock object for synchronising access to the <see cref="F:NetSharp.Packets.PacketRegistry.currentAutomaticPacketTypeIdCounter"/> field.
</summary>
</member>
- <member name="F:NetworkLib.Packets.PacketRegistry.idToPacketTypeMap">
+ <member name="F:NetSharp.Packets.PacketRegistry.idToPacketTypeMap">
<summary>
Maps a packet type id to its relevant packet type, and vice-versa.
</summary>
</member>
- <member name="F:NetworkLib.Packets.PacketRegistry.LibraryAssembly">
+ <member name="F:NetSharp.Packets.PacketRegistry.LibraryAssembly">
<summary>
The assembly that represents the library, where all of the builtin packets are defined.
</summary>
</member>
- <member name="F:NetworkLib.Packets.PacketRegistry.requestToResponseMap">
+ <member name="F:NetSharp.Packets.PacketRegistry.requestToResponseMap">
<summary>
Maps a request packet to its relevant response packet, and vice-versa.
</summary>
</member>
- <member name="F:NetworkLib.Packets.PacketRegistry.currentAutomaticPacketTypeIdCounter">
+ <member name="F:NetSharp.Packets.PacketRegistry.currentAutomaticPacketTypeIdCounter">
<summary>
The current id for registered packets.
</summary>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.#cctor">
+ <member name="M:NetSharp.Packets.PacketRegistry.#cctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.PacketRegistry"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.PacketRegistry"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetNewPacketTypeId(System.Type)">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetNewPacketTypeId(System.Type)">
<summary>
Fetches the packet type id of the given packet type. If the packet type is declared outside of the library
- assembly, then its value is incremented by the <see cref="F:NetworkLib.Packets.PacketRegistry.AutomaticPacketTypeIdStartPoint"/> value. This ensure that
+ assembly, then its value is incremented by the <see cref="F:NetSharp.Packets.PacketRegistry.AutomaticPacketTypeIdStartPoint"/> value. This ensure that
there are no clashes between the packet type ids of packets declared in the library and external packets.
</summary>
<param name="packetType">The packet type whose id should be fetched.</param>
<returns>The id of the given packet type.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.DeregisterPacketType(System.Type,System.Type)">
+ <member name="M:NetSharp.Packets.PacketRegistry.DeregisterPacketType(System.Type,System.Type)">
<summary>
Deregisters the given packet type from the registry.
</summary>
<param name="requestPacketType">The request packet type to deregister, if it is registered.</param>
<param name="responsePacketType">The response packet associated with the request packet.</param>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.DeregisterPacketTypes(System.Collections.Generic.Dictionary{System.Type,System.Type})">
+ <member name="M:NetSharp.Packets.PacketRegistry.DeregisterPacketTypes(System.Collections.Generic.Dictionary{System.Type,System.Type})">
<summary>
Deregisters the given packet types from the registry.
</summary>
<param name="requestToResponsePacketTypeMap">The list of packet types to deregister, if they are registered.</param>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetPacketId(System.Type)">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetPacketId(System.Type)">
<summary>
Returns the packet type id associated with the given packet type.
</summary>
<param name="packetType">The packet type whose id to fetch.</param>
<returns>The id of the packet type given.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetPacketId``1">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetPacketId``1">
<summary>
Returns the packet type id associated with the given packet type.
</summary>
<typeparam name="TPacket">The packet type whose id to fetch.</typeparam>
<returns>The id of the packet type given.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetPacketType(System.UInt32)">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetPacketType(System.UInt32)">
<summary>
Returns the packet type associated with the given id.
</summary>
<param name="packetTypeId">The packet id whose mapped type to fetch.</param>
<returns>The packet type mapped by the given id.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetRequestPacketType``1">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetRequestPacketType``1">
<summary>
Returns the type of request packet mapped by the given response packet type.
</summary>
<typeparam name="TResponse">The response packet type whose request packet type to fetch.</typeparam>
<returns>The request packet type, <c>null</c> if no type is mapped.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetRequestPacketType(System.Type)">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetRequestPacketType(System.Type)">
<summary>
Returns the type of request packet mapped by the given response packet type.
</summary>
<param name="responsePacketType">The response packet type whose request packet type to fetch.</param>
<returns>The request packet type, <c>null</c> if no type is mapped.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetResponsePacketType``1">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetResponsePacketType``1">
<summary>
Returns the type of response packet mapped by the given request packet type.
</summary>
<typeparam name="TRequest">The request packet type whose response packet type to fetch.</typeparam>
<returns>The response packet type, <c>null</c> if no type is mapped.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.GetResponsePacketType(System.Type)">
+ <member name="M:NetSharp.Packets.PacketRegistry.GetResponsePacketType(System.Type)">
<summary>
Returns the type of response packet mapped by the given request packet type.
</summary>
<param name="requestPacketType">The request packet type whose response packet type to fetch.</param>
<returns>The response packet type, <c>null</c> if no type is mapped.</returns>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.RegisterPacketSourceAssemblies(System.Reflection.Assembly[])">
+ <member name="M:NetSharp.Packets.PacketRegistry.RegisterPacketSourceAssemblies(System.Reflection.Assembly[])">
<summary>
- Rebuilds the packet registry, by registering every <see cref="T:NetworkLib.Interfaces.IPacket"/> inheritor in the given assemblies.
+ Rebuilds the packet registry, by registering every <see cref="T:NetSharp.Interfaces.IPacket"/> inheritor in the given assemblies.
</summary>
<param name="packetSourceAssemblies">
The assemblies from which the packet types to register are sourced.
</param>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.RegisterPacketSourceAssembly(System.Reflection.Assembly)">
+ <member name="M:NetSharp.Packets.PacketRegistry.RegisterPacketSourceAssembly(System.Reflection.Assembly)">
<summary>
- Registers all the <see cref="T:NetworkLib.Interfaces.IPacket"/> implementors in the given assembly.
+ Registers all the <see cref="T:NetSharp.Interfaces.IPacket"/> implementors in the given assembly.
</summary>
<param name="packetSourceAssembly">The assembly whose packet types to register.</param>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.RegisterPacketType(System.Type,System.Type)">
+ <member name="M:NetSharp.Packets.PacketRegistry.RegisterPacketType(System.Type,System.Type)">
<summary>
Registers the given packet type to the registry.
</summary>
<param name="requestPacketType">The request packet type to register, if it is not registered.</param>
<param name="responsePacketType">The response packet associated with the request packet.</param>
</member>
- <member name="M:NetworkLib.Packets.PacketRegistry.RegisterPacketTypes(System.Collections.Generic.Dictionary{System.Type,System.Type})">
+ <member name="M:NetSharp.Packets.PacketRegistry.RegisterPacketTypes(System.Collections.Generic.Dictionary{System.Type,System.Type})">
<summary>
Registers the given packet types to the registry.
</summary>
@@ -1229,24 +1221,24 @@
The response packet type can be null; then the request packet type is treated as a 'simple' packet.
</param>
</member>
- <member name="T:NetworkLib.Packets.PacketTypeIdAttribute">
+ <member name="T:NetSharp.Packets.PacketTypeIdAttribute">
<summary>
Allows the placing of a custom packet type on a class or struct. This is used if the class or struct
- inherits from <see cref="T:NetworkLib.Interfaces.IRequestPacket"/> or <see cref="T:NetworkLib.Interfaces.IResponsePacket`1"/>.
+ inherits from <see cref="T:NetSharp.Interfaces.IRequestPacket"/> or <see cref="T:NetSharp.Interfaces.IResponsePacket`1"/>.
</summary>
</member>
- <member name="M:NetworkLib.Packets.PacketTypeIdAttribute.#ctor(System.UInt32)">
+ <member name="M:NetSharp.Packets.PacketTypeIdAttribute.#ctor(System.UInt32)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Packets.PacketTypeIdAttribute"/> attribute.
+ Initialises a new instance of the <see cref="T:NetSharp.Packets.PacketTypeIdAttribute"/> attribute.
</summary>
<param name="type">The custom type id that the decorated packet type should have.</param>
</member>
- <member name="P:NetworkLib.Packets.PacketTypeIdAttribute.Id">
+ <member name="P:NetSharp.Packets.PacketTypeIdAttribute.Id">
<summary>
The custom type id that the decorated packet type should have. This overrides the automatically generated id.
</summary>
</member>
- <member name="T:NetworkLib.ComplexPacketHandler`2">
+ <member name="T:NetSharp.ComplexPacketHandler`2">
<summary>
Represents a method that receives a request packet of the given type (<typeparamref name="TReq"/>) and
handles the request, returning a response packet of the given type (<typeparamref name="TRep"/>).
@@ -1257,7 +1249,7 @@
<param name="remoteEndPoint">The remote endpoint from which the request originated.</param>
<returns>The response packet to send back to the remote endpoint from which the request originated.</returns>
</member>
- <member name="T:NetworkLib.SimplePacketHandler`1">
+ <member name="T:NetSharp.SimplePacketHandler`1">
<summary>
Represents a method that receives a simple request packet of the given type (<typeparamref name="TReq"/>) and
handles the request, not returning any response packets.
@@ -1266,144 +1258,144 @@
<param name="requestPacket">The request packet that should be handled by this delegate method.</param>
<param name="remoteEndPoint">The remote endpoint from which the request originated.</param>
</member>
- <member name="T:NetworkLib.Server">
+ <member name="T:NetSharp.Server">
<summary>
- Provides methods for handling connected <see cref="T:NetworkLib.Interfaces.IClient"/> instances.
+ Provides methods for handling connected <see cref="T:NetSharp.Interfaces.IClient"/> instances.
</summary>
</member>
- <member name="F:NetworkLib.Server.bindSocketCancellationTokenSource">
+ <member name="F:NetSharp.Server.bindSocketCancellationTokenSource">
<summary>
- Cancellation token source for the <see cref="M:NetworkLib.Server.TryBindAsync(System.Net.IPAddress,System.Int32)"/> method.
+ Cancellation token source for the <see cref="M:NetSharp.Server.TryBindAsync(System.Net.IPAddress,System.Int32)"/> method.
</summary>
</member>
- <member name="F:NetworkLib.Server.complexPacketHandlers">
+ <member name="F:NetSharp.Server.complexPacketHandlers">
<summary>
Maps a packet type id to the complex packet handler for that packet type.
</summary>
</member>
- <member name="F:NetworkLib.Server.requestPacketDeserialisers">
+ <member name="F:NetSharp.Server.requestPacketDeserialisers">
<summary>
Maps a packet type id to the raw packet deserialiser that deserialises raw packets to
- <see cref="T:NetworkLib.Interfaces.IRequestPacket"/> implementors.
+ <see cref="T:NetSharp.Interfaces.IRequestPacket"/> implementors.
</summary>
</member>
- <member name="F:NetworkLib.Server.simplePacketHandlers">
+ <member name="F:NetSharp.Server.simplePacketHandlers">
<summary>
Maps a packet type id to the simple packet handler for that packet type.
</summary>
</member>
- <member name="F:NetworkLib.Server.PendingConnectionBacklog">
+ <member name="F:NetSharp.Server.PendingConnectionBacklog">
<summary>
The maximum number of connections that are allowed in the connection backlog.
</summary>
</member>
- <member name="F:NetworkLib.Server.DefaultNetworkOperationTimeout">
+ <member name="F:NetSharp.Server.DefaultNetworkOperationTimeout">
<summary>
The default timeout value for all network operations.
</summary>
</member>
- <member name="F:NetworkLib.Server.serverShutdownCancellationTokenSource">
+ <member name="F:NetSharp.Server.serverShutdownCancellationTokenSource">
<summary>
Cancellation token source to stop handling client sockets when the server should be shut down.
</summary>
</member>
- <member name="F:NetworkLib.Server.socket">
+ <member name="F:NetSharp.Server.socket">
<summary>
The <see cref="T:System.Net.Sockets.Socket"/> underlying the connection.
</summary>
</member>
- <member name="F:NetworkLib.Server.socketOptions">
+ <member name="F:NetSharp.Server.socketOptions">
<summary>
- Backing field for the <see cref="P:NetworkLib.Server.SocketOptions"/> property.
+ Backing field for the <see cref="P:NetSharp.Server.SocketOptions"/> property.
</summary>
</member>
- <member name="F:NetworkLib.Server.runServer">
+ <member name="F:NetSharp.Server.runServer">
<summary>
Whether the server should be ran.
</summary>
</member>
- <member name="M:NetworkLib.Server.#ctor">
+ <member name="M:NetSharp.Server.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Server"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Server"/> class.
</summary>
</member>
- <member name="M:NetworkLib.Server.#ctor(System.Net.Sockets.SocketType,System.Net.Sockets.ProtocolType,NetworkLib.Utils.Socket_Options.SocketOptionManager)">
+ <member name="M:NetSharp.Server.#ctor(System.Net.Sockets.SocketType,System.Net.Sockets.ProtocolType,NetSharp.Utils.Socket_Options.SocketOptionManager)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Server"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Server"/> class.
</summary>
<param name="socketType">The socket type for the underlying socket.</param>
<param name="protocolType">The protocol type for the underlying socket.</param>
- <param name="socketManager">The <see cref="T:NetworkLib.Utils.Socket_Options.SocketOptions"/> manager to use.</param>
+ <param name="socketManager">The <see cref="T:NetSharp.Utils.Socket_Options.SocketOptions"/> manager to use.</param>
</member>
- <member name="M:NetworkLib.Server.Finalize">
+ <member name="M:NetSharp.Server.Finalize">
<summary>
- Destroys an instance of the <see cref="T:NetworkLib.Server"/> class.
+ Destroys an instance of the <see cref="T:NetSharp.Server"/> class.
</summary>
</member>
- <member name="T:NetworkLib.Server.RawRequestPacketDeserialiser">
+ <member name="T:NetSharp.Server.RawRequestPacketDeserialiser">
<summary>
- Represents a method that receives a raw packet, and deserialises it into an <see cref="T:NetworkLib.Interfaces.IRequestPacket"/> implementor.
+ Represents a method that receives a raw packet, and deserialises it into an <see cref="T:NetSharp.Interfaces.IRequestPacket"/> implementor.
</summary>
<param name="rawPacket">The raw packet that was received from the network.</param>
<returns>The deserialised instance of the packet.</returns>
</member>
- <member name="E:NetworkLib.Server.ClientConnected">
+ <member name="E:NetSharp.Server.ClientConnected">
<summary>
Signifies that a connection with a remote endpoint has been made.
</summary>
</member>
- <member name="E:NetworkLib.Server.ClientDisconnected">
+ <member name="E:NetSharp.Server.ClientDisconnected">
<summary>
Signifies that a connection with a remote endpoint has been lost.
</summary>
</member>
- <member name="E:NetworkLib.Server.ServerStarted">
+ <member name="E:NetSharp.Server.ServerStarted">
<summary>
Signifies that the server was started and clients will start being accepted.
</summary>
</member>
- <member name="E:NetworkLib.Server.ServerStopped">
+ <member name="E:NetSharp.Server.ServerStopped">
<summary>
Signifies that the server was stopped and clients will stop being accepted.
</summary>
</member>
- <member name="P:NetworkLib.Server.SocketOptions">
+ <member name="P:NetSharp.Server.SocketOptions">
<summary>
The configured socket options for the underlying connection.
</summary>
</member>
- <member name="M:NetworkLib.Server.RegisterInternalPacketHandlers">
+ <member name="M:NetSharp.Server.RegisterInternalPacketHandlers">
<summary>
Registers packet handlers for every internal library packet.
</summary>
</member>
- <member name="M:NetworkLib.Server.DeserialiseRequestPacket(System.UInt32,NetworkLib.Packets.Packet@)">
+ <member name="M:NetSharp.Server.DeserialiseRequestPacket(System.UInt32,NetSharp.Packets.Packet@)">
<summary>
- Deserialises the given <see cref="T:NetworkLib.Packets.Packet"/> struct into an <see cref="T:NetworkLib.Interfaces.IRequestPacket"/> implementor.
+ Deserialises the given <see cref="T:NetSharp.Packets.Packet"/> struct into an <see cref="T:NetSharp.Interfaces.IRequestPacket"/> implementor.
</summary>
<param name="packetType">The type id of packet that we should deserialise to.</param>
<param name="rawRequestPacket">The packet that should be deserialised.</param>
- <returns>The deserialised packet instance, cast to the <see cref="T:NetworkLib.Interfaces.IRequestPacket"/> interface.</returns>
+ <returns>The deserialised packet instance, cast to the <see cref="T:NetSharp.Interfaces.IRequestPacket"/> interface.</returns>
</member>
- <member name="M:NetworkLib.Server.Dispose(System.Boolean)">
+ <member name="M:NetSharp.Server.Dispose(System.Boolean)">
<summary>
- Disposes of this <see cref="T:NetworkLib.Server"/> instance.
+ Disposes of this <see cref="T:NetSharp.Server"/> instance.
</summary>
<param name="disposing">Whether this instance is being disposed.</param>
</member>
- <member name="M:NetworkLib.Server.DoHandleClientAsync(System.Object)">
+ <member name="M:NetSharp.Server.DoHandleClientAsync(System.Object)">
<summary>
Provides a task that represents the handling of a client.
</summary>
- <param name="clientHandlerArgsObj">The object representing the passed <see cref="T:NetworkLib.Server.ClientHandlerArgs"/> instance.</param>
+ <param name="clientHandlerArgsObj">The object representing the passed <see cref="T:NetSharp.Server.ClientHandlerArgs"/> instance.</param>
</member>
- <member name="M:NetworkLib.Server.HandleClientAsync(NetworkLib.Server.ClientHandlerArgs)">
+ <member name="M:NetSharp.Server.HandleClientAsync(NetSharp.Server.ClientHandlerArgs)">
<summary>
Handles a new client asynchronously.
</summary>
<param name="args">The client handler arguments that should be passed to the client handler.</param>
</member>
- <member name="M:NetworkLib.Server.HandleRequestPacket(System.UInt32,NetworkLib.Interfaces.IRequestPacket@,System.Net.EndPoint@)">
+ <member name="M:NetSharp.Server.HandleRequestPacket(System.UInt32,NetSharp.Interfaces.IRequestPacket@,System.Net.EndPoint@)">
<summary>
Handles the given request packet with a registered packet handler. In this case, a complex packet handler
will override any registered simple packet handlers.
@@ -1413,29 +1405,29 @@
<param name="remoteEndPoint">The remote endpoint from which the request packet originated.</param>
<returns>The response packet that should be sent back to the remote endpoint.</returns>
</member>
- <member name="M:NetworkLib.Server.OnClientConnected(System.Net.EndPoint)">
+ <member name="M:NetSharp.Server.OnClientConnected(System.Net.EndPoint)">
<summary>
- Invokes the <see cref="E:NetworkLib.Server.ClientConnected"/> event.
+ Invokes the <see cref="E:NetSharp.Server.ClientConnected"/> event.
</summary>
<param name="remoteEndPoint">The remote endpoint with which a connection was made.</param>
</member>
- <member name="M:NetworkLib.Server.OnClientDisconnected(System.Net.EndPoint)">
+ <member name="M:NetSharp.Server.OnClientDisconnected(System.Net.EndPoint)">
<summary>
- Invokes the <see cref="E:NetworkLib.Server.ClientDisconnected"/> event.
+ Invokes the <see cref="E:NetSharp.Server.ClientDisconnected"/> event.
</summary>
<param name="remoteEndPoint">The remote endpoint with which a connection was lost.</param>
</member>
- <member name="M:NetworkLib.Server.OnServerStarted">
+ <member name="M:NetSharp.Server.OnServerStarted">
<summary>
- Invokes the <see cref="E:NetworkLib.Server.ServerStarted"/> event.
+ Invokes the <see cref="E:NetSharp.Server.ServerStarted"/> event.
</summary>
</member>
- <member name="M:NetworkLib.Server.OnServerStopped">
+ <member name="M:NetSharp.Server.OnServerStopped">
<summary>
- Invokes the <see cref="E:NetworkLib.Server.ServerStopped"/> event.
+ Invokes the <see cref="E:NetSharp.Server.ServerStopped"/> event.
</summary>
</member>
- <member name="M:NetworkLib.Server.TryBind(System.Net.IPAddress,System.Int32)">
+ <member name="M:NetSharp.Server.TryBind(System.Net.IPAddress,System.Int32)">
<summary>
Attempts to synchronously bind the underlying socket to the given local address and port. Blocks. Does not timeout.
</summary>
@@ -1443,7 +1435,7 @@
<param name="localPort">The local port to bind to.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Server.TryBind(System.Net.IPAddress,System.Int32,System.TimeSpan)">
+ <member name="M:NetSharp.Server.TryBind(System.Net.IPAddress,System.Int32,System.TimeSpan)">
<summary>
Attempts to synchronously bind the underlying socket to the given local address and port. Blocks.
If the timeout is exceeded the binding attempt is aborted and the method returns false.
@@ -1453,7 +1445,7 @@
<param name="timeout">The timeout within which to attempt the binding.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Server.TryBindAsync(System.Net.IPAddress,System.Int32)">
+ <member name="M:NetSharp.Server.TryBindAsync(System.Net.IPAddress,System.Int32)">
<summary>
Attempts to asynchronously bind the underlying socket to the given local address and port. Does not block.
Does not timeout.
@@ -1462,7 +1454,7 @@
<param name="localPort">The local port to bind to.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Server.TryBindAsync(System.Net.IPAddress,System.Int32,System.TimeSpan)">
+ <member name="M:NetSharp.Server.TryBindAsync(System.Net.IPAddress,System.Int32,System.TimeSpan)">
<summary>
Attempts to asynchronously bind the underlying socket to the given local address and port. Does not block.
If the timeout is exceeded the binding attempt is aborted and the method returns false.
@@ -1472,7 +1464,7 @@
<param name="timeout">The timeout within which to attempt the binding.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Server.TryBindAsync(System.Net.EndPoint)">
+ <member name="M:NetSharp.Server.TryBindAsync(System.Net.EndPoint)">
<summary>
Attempts to asynchronously bind the underlying socket to the given local endpoint. Does not block.
Does not timeout.
@@ -1480,7 +1472,7 @@
<param name="localEndPoint">The local endpoint to bind to.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Server.TryBindAsync(System.Net.EndPoint,System.TimeSpan)">
+ <member name="M:NetSharp.Server.TryBindAsync(System.Net.EndPoint,System.TimeSpan)">
<summary>
Attempts to asynchronously bind the underlying socket to the given local endpoint. Does not block.
If the timeout is exceeded the binding attempt is aborted and the method returns false.
@@ -1489,147 +1481,147 @@
<param name="timeout">The timeout within which to attempt the binding.</param>
<returns>Whether the binding was successful or not.</returns>
</member>
- <member name="M:NetworkLib.Server.RunAsync(System.Net.EndPoint)">
+ <member name="M:NetSharp.Server.RunAsync(System.Net.EndPoint)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Server.Shutdown">
+ <member name="M:NetSharp.Server.Shutdown">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Server.TryDeregisterComplexPacketHandler``2(NetworkLib.ComplexPacketHandler{``0,``1}@)">
+ <member name="M:NetSharp.Server.TryDeregisterComplexPacketHandler``2(NetSharp.ComplexPacketHandler{``0,``1}@)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Server.TryDeregisterSimplePacketHandler``1(NetworkLib.SimplePacketHandler{``0}@)">
+ <member name="M:NetSharp.Server.TryDeregisterSimplePacketHandler``1(NetSharp.SimplePacketHandler{``0}@)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Server.TryRegisterComplexPacketHandler``2(NetworkLib.ComplexPacketHandler{``0,``1})">
+ <member name="M:NetSharp.Server.TryRegisterComplexPacketHandler``2(NetSharp.ComplexPacketHandler{``0,``1})">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Server.TryRegisterSimplePacketHandler``1(NetworkLib.SimplePacketHandler{``0})">
+ <member name="M:NetSharp.Server.TryRegisterSimplePacketHandler``1(NetSharp.SimplePacketHandler{``0})">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Server.ClientHandlerArgs">
+ <member name="T:NetSharp.Server.ClientHandlerArgs">
<summary>
Holds information about the arguments passed to every client handler task.
</summary>
</member>
- <member name="F:NetworkLib.Server.ClientHandlerArgs.ClientEndPoint">
+ <member name="F:NetSharp.Server.ClientHandlerArgs.ClientEndPoint">
<summary>
The remote endpoint for the client being handled.
</summary>
</member>
- <member name="F:NetworkLib.Server.ClientHandlerArgs.ClientSocket">
+ <member name="F:NetSharp.Server.ClientHandlerArgs.ClientSocket">
<summary>
The client handler socket for the client being handled. Is only set if using TCP.
</summary>
</member>
- <member name="M:NetworkLib.Server.ClientHandlerArgs.#ctor(System.Net.EndPoint,System.Net.Sockets.Socket)">
+ <member name="M:NetSharp.Server.ClientHandlerArgs.#ctor(System.Net.EndPoint,System.Net.Sockets.Socket)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Server.ClientHandlerArgs"/> struct.
+ Initialises a new instance of the <see cref="T:NetSharp.Server.ClientHandlerArgs"/> struct.
</summary>
<param name="remoteEndPoint">The remote endpoint of the client that should be handled.</param>
<param name="handlerSocket">The handler socket of the client that should be handled.</param>
</member>
- <member name="M:NetworkLib.Server.ClientHandlerArgs.ForTcpClientHandler(System.Net.Sockets.Socket@)">
+ <member name="M:NetSharp.Server.ClientHandlerArgs.ForTcpClientHandler(System.Net.Sockets.Socket@)">
<summary>
- Constructs a new instance of the <see cref="T:NetworkLib.Server.ClientHandlerArgs"/> for a TCP client.
+ Constructs a new instance of the <see cref="T:NetSharp.Server.ClientHandlerArgs"/> for a TCP client.
</summary>
- <returns>A new instance of the <see cref="T:NetworkLib.Server.ClientHandlerArgs"/>, setup for a TCP client.</returns>
+ <returns>A new instance of the <see cref="T:NetSharp.Server.ClientHandlerArgs"/>, setup for a TCP client.</returns>
</member>
- <member name="M:NetworkLib.Server.ClientHandlerArgs.ForUdpClientHandler(System.Net.EndPoint@)">
+ <member name="M:NetSharp.Server.ClientHandlerArgs.ForUdpClientHandler(System.Net.EndPoint@)">
<summary>
- Constructs a new instance of the <see cref="T:NetworkLib.Server.ClientHandlerArgs"/> for a UDP client.
+ Constructs a new instance of the <see cref="T:NetSharp.Server.ClientHandlerArgs"/> for a UDP client.
</summary>
- <returns>A new instance of the <see cref="T:NetworkLib.Server.ClientHandlerArgs"/>, setup for a UDP client.</returns>
+ <returns>A new instance of the <see cref="T:NetSharp.Server.ClientHandlerArgs"/>, setup for a UDP client.</returns>
</member>
- <member name="T:NetworkLib.Servers.TcpServer">
+ <member name="T:NetSharp.Servers.TcpServer">
<summary>
- Provides methods for TCP communication with connected <see cref="T:NetworkLib.Clients.TcpClient"/> instances.
+ Provides methods for TCP communication with connected <see cref="T:NetSharp.Clients.TcpClient"/> instances.
</summary>
</member>
- <member name="M:NetworkLib.Servers.TcpServer.#ctor">
+ <member name="M:NetSharp.Servers.TcpServer.#ctor">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Servers.TcpServer.HandleClientAsync(NetworkLib.Server.ClientHandlerArgs)">
+ <member name="M:NetSharp.Servers.TcpServer.HandleClientAsync(NetSharp.Server.ClientHandlerArgs)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Servers.TcpServer.RunAsync(System.Net.EndPoint)">
+ <member name="M:NetSharp.Servers.TcpServer.RunAsync(System.Net.EndPoint)">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Servers.UdpServer">
+ <member name="T:NetSharp.Servers.UdpServer">
<summary>
- Provides methods for UDP communication with connected <see cref="T:NetworkLib.Clients.UdpClient"/> instances.
+ Provides methods for UDP communication with connected <see cref="T:NetSharp.Clients.UdpClient"/> instances.
</summary>
</member>
- <member name="F:NetworkLib.Servers.UdpServer.activeClients">
+ <member name="F:NetSharp.Servers.UdpServer.activeClients">
<summary>
Holds currently connected and active clients, as well as their current received packet queues.
</summary>
</member>
- <member name="M:NetworkLib.Servers.UdpServer.#ctor">
+ <member name="M:NetSharp.Servers.UdpServer.#ctor">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Servers.UdpServer.HandleClientAsync(NetworkLib.Server.ClientHandlerArgs)">
+ <member name="M:NetSharp.Servers.UdpServer.HandleClientAsync(NetSharp.Server.ClientHandlerArgs)">
<inheritdoc />
</member>
- <member name="M:NetworkLib.Servers.UdpServer.RunAsync(System.Net.EndPoint)">
+ <member name="M:NetSharp.Servers.UdpServer.RunAsync(System.Net.EndPoint)">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Utils.BiDictionary`2">
+ <member name="T:NetSharp.Utils.BiDictionary`2">
<summary>
Represents a concurrent two-way dictionary, that can be indexed by either a key or a value.
</summary>
<typeparam name="K">The type of key that will be stored.</typeparam>
<typeparam name="V">The type of value that will be stored.</typeparam>
</member>
- <member name="F:NetworkLib.Utils.BiDictionary`2.keyToValueMap">
+ <member name="F:NetSharp.Utils.BiDictionary`2.keyToValueMap">
<summary>
Maps keys to their corresponding values.
</summary>
</member>
- <member name="F:NetworkLib.Utils.BiDictionary`2.valueToKeyMap">
+ <member name="F:NetSharp.Utils.BiDictionary`2.valueToKeyMap">
<summary>
Maps values to their corresponding keys.
</summary>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.#ctor">
+ <member name="M:NetSharp.Utils.BiDictionary`2.#ctor">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Utils.BiDictionary`2"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Utils.BiDictionary`2"/> class.
</summary>
</member>
- <member name="P:NetworkLib.Utils.BiDictionary`2.Item(`1)">
+ <member name="P:NetSharp.Utils.BiDictionary`2.Item(`1)">
<summary>
Indexes this instance with the given value.
</summary>
<param name="index">The value whose key to get or set.</param>
<returns>The fetched key.</returns>
</member>
- <member name="P:NetworkLib.Utils.BiDictionary`2.Item(`0)">
+ <member name="P:NetSharp.Utils.BiDictionary`2.Item(`0)">
<summary>
Indexes this instance with the given key.
</summary>
<param name="index">The key whose value to get or set.</param>
<returns>The fetched value.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.Clear">
+ <member name="M:NetSharp.Utils.BiDictionary`2.Clear">
<summary>
- Clears this instance's <see cref="F:NetworkLib.Utils.BiDictionary`2.keyToValueMap"/> and <see cref="F:NetworkLib.Utils.BiDictionary`2.valueToKeyMap"/>.
+ Clears this instance's <see cref="F:NetSharp.Utils.BiDictionary`2.keyToValueMap"/> and <see cref="F:NetSharp.Utils.BiDictionary`2.valueToKeyMap"/>.
</summary>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.ContainsKey(`0@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.ContainsKey(`0@)">
<summary>
Whether this instance contains the given key.
</summary>
<param name="key">The key to check.</param>
<returns>Whether the given key was found.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.ContainsValue(`1@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.ContainsValue(`1@)">
<summary>
Whether this instance contains the given value.
</summary>
<param name="value">The value to check.</param>
<returns>Whether the given value was found.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.SetOrUpdateKey(`1,`0)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.SetOrUpdateKey(`1,`0)">
<summary>
Attempts to set the key associated with the given value.
</summary>
@@ -1637,7 +1629,7 @@
<param name="key">The new value for the value's associated key.</param>
<returns>Whether the new key was correctly set.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.SetOrUpdateValue(`0,`1)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.SetOrUpdateValue(`0,`1)">
<summary>
Attempts to set the value associated with the given key.
</summary>
@@ -1645,7 +1637,7 @@
<param name="value">The new value for the key's associated value.</param>
<returns>Whether the new value was correctly set.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.TryClearKey(`1@,`0@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.TryClearKey(`1@,`0@)">
<summary>
Attempts to remove the key associated with the given value.
</summary>
@@ -1653,7 +1645,7 @@
<param name="key">The old key value.</param>
<returns>Whether the given value had a valid key associated with it.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.TryClearValue(`0@,`1@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.TryClearValue(`0@,`1@)">
<summary>
Attempts to remove the value associated with the given key.
</summary>
@@ -1661,7 +1653,7 @@
<param name="value">The old value.</param>
<returns>Whether the given key had a valid valid associated with it.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.TryGetKey(`1@,`0@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.TryGetKey(`1@,`0@)">
<summary>
Attempts to get the key associated with the given value.
</summary>
@@ -1669,7 +1661,7 @@
<param name="key">The returned key.</param>
<returns>Whether the given value has a valid key associated with it.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.TryGetValue(`0@,`1@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.TryGetValue(`0@,`1@)">
<summary>
Attempts to get the value associated with the given key.
</summary>
@@ -1677,7 +1669,7 @@
<param name="value">The returned value.</param>
<returns>Whether the given key as a valid value associated with it.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.TrySetKey(`1@,`0@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.TrySetKey(`1@,`0@)">
<summary>
Attempts to set the key associated with the given value.
</summary>
@@ -1685,7 +1677,7 @@
<param name="key">The key which should be set for the given value.</param>
<returns>Whether the given value was successfully set.</returns>
</member>
- <member name="M:NetworkLib.Utils.BiDictionary`2.TrySetValue(`0@,`1@)">
+ <member name="M:NetSharp.Utils.BiDictionary`2.TrySetValue(`0@,`1@)">
<summary>
Attempts to set the value associated with the given key.
</summary>
@@ -1693,362 +1685,97 @@
<param name="value">The value which should be set for the given key.</param>
<returns>Whether the given key was successfully set.</returns>
</member>
- <member name="T:NetworkLib.Utils.Constants">
+ <member name="T:NetSharp.Utils.Constants">
<summary>
Holds internal default configurations and constants.
</summary>
</member>
- <member name="F:NetworkLib.Utils.Constants.DefaultBufferSize">
+ <member name="F:NetSharp.Utils.Constants.DefaultPort">
<summary>
- The default size of an <see cref="T:NetworkLib.Interfaces.IClient"/> and <see cref="T:NetworkLib.Interfaces.IServer"/> instance's receive buffer.
+ The default port over which a connection is made.
</summary>
</member>
- <member name="F:NetworkLib.Utils.Constants.UdpMaxBufferSize">
+ <member name="F:NetSharp.Utils.Constants.UdpMaxBufferSize">
<summary>
The largest byte buffer that can be sent via UDP.
</summary>
</member>
- <member name="T:NetworkLib.Utils.Conversion.ObjectState">
- <summary>
- Enumerates the possible states of a network object before and after deserialisation.
- </summary>
- </member>
- <member name="F:NetworkLib.Utils.Conversion.ObjectState.Null">
- <summary>
- The network object is null, so there is nothing to read from the network stream.
- </summary>
- </member>
- <member name="F:NetworkLib.Utils.Conversion.ObjectState.NotNull">
- <summary>
- The network object is not null, so there is something to read from the network stream.
- </summary>
- </member>
- <member name="T:NetworkLib.Utils.Conversion.Converter">
- <summary>
- Provides methods to serialise and deserialise an <see cref="T:System.Object"/> to and from its binary form.
- </summary>
- </member>
- <member name="F:NetworkLib.Utils.Conversion.Converter.packetPropertyCache">
- <summary>
- Caches packet <see cref="T:System.Type"/>s and their relevant <see cref="T:System.Reflection.PropertyInfo"/>s, to avoid slow and unnecessary reflection.
- </summary>
- </member>
- <member name="F:NetworkLib.Utils.Conversion.Converter.packetPropertyCacheLock">
- <summary>
- An object to synchronise multi-threaded access to the <see cref="F:NetworkLib.Utils.Conversion.Converter.packetPropertyCache"/>.
- </summary>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.DeserialiseObjectFromReader(System.Object,System.IO.BinaryReader)">
- <summary>
- Deserialises all the properties on the given <see cref="T:System.Object"/> that can be deserialised from the given
- <see cref="T:System.IO.BinaryReader"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </summary>
- <param name="obj">
- The <see cref="T:System.Object"/> whose properties to deserialise using the given <see cref="T:System.IO.BinaryReader"/>.
- </param>
- <param name="binaryReader">
- The <see cref="T:System.IO.BinaryReader"/> from whose underlying <see cref="T:System.IO.MemoryStream"/> to deserialise the properties
- of the given <see cref="T:System.Object"/>.
- </param>
- <returns>The given <see cref="T:System.Object"/> with all deserialisable properties set.</returns>
- <remarks>
- This method can only deserialise properties that lack the custom <see cref="T:NetworkLib.Utils.Conversion.NetworkIgnorePropertyAttribute"/>.
- Any other properties will be left at their default values.
- </remarks>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.DeserialiseObjectFromReader(System.Reflection.PropertyInfo,System.IO.BinaryReader)">
- <summary>
- Deserialises the given <see cref="T:System.Reflection.PropertyInfo"/> from the given <see cref="T:System.IO.BinaryReader"/>s underlying
- <see cref="T:System.IO.MemoryStream"/>.
- </summary>
- <param name="propertyInfo">
- The <see cref="T:System.Reflection.PropertyInfo"/> to deserialise from the given <see cref="T:System.IO.BinaryReader"/>s underlying
- <see cref="T:System.IO.MemoryStream"/>.
- </param>
- <param name="binaryReader">
- The <see cref="T:System.IO.BinaryReader"/> from whose underlying <see cref="T:System.IO.MemoryStream"/> to deserialise the given
- <see cref="T:System.Reflection.PropertyInfo"/>.
- </param>
- <returns>
- The <see cref="T:System.Object"/> deserialised from the <see cref="T:System.IO.MemoryStream"/>. This can be null if the
- <see cref="T:NetworkLib.Utils.Conversion.ObjectState"/> is <see cref="F:NetworkLib.Utils.Conversion.ObjectState.Null"/>.
- </returns>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.GetTypeProperties(System.Type)">
- <summary>
- Returns an array of the <see cref="T:System.Reflection.PropertyInfo"/>s that need to be serialised on the given <see cref="T:System.Type"/>.
- If the given <see cref="T:System.Type"/> has already been cached, it will use the cached <see cref="T:System.Reflection.PropertyInfo"/> array,
- to save CPU time.
- </summary>
- <param name="type">The <see cref="T:System.Type"/> whose serialisable properties to get.</param>
- <returns>
- An array of all <see cref="T:System.Reflection.PropertyInfo"/>s that should be serialised on the given <see cref="T:System.Type"/>
- </returns>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.ReadArrayFromStream(System.Reflection.PropertyInfo,System.IO.BinaryReader)">
- <summary>
- Deserialises the given <see cref="T:System.Array"/> from the given <see cref="T:System.IO.BinaryReader"/>s underlying
- <see cref="T:System.IO.MemoryStream"/>. Uses <see cref="M:NetworkLib.Utils.Conversion.Converter.DeserialiseObjectFromReader(System.Object,System.IO.BinaryReader)"/> to serialise
- each of the <see cref="T:System.Array"/>s elements to the stream.
- </summary>
- <param name="propertyInfo">The <see cref="T:System.Reflection.PropertyInfo"/> holding the <see cref="T:System.Array"/>.</param>
- <param name="binaryReader">
- The <see cref="T:System.IO.BinaryReader"/> from whose underlying <see cref="T:System.IO.MemoryStream"/> to deserialise the given
- <see cref="T:System.Reflection.PropertyInfo"/>.
- </param>
- <exception cref="T:System.ArgumentNullException">Thrown if the <see cref="T:System.Array"/>s elements do not have a type.</exception>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.ReadListFromStream(System.Reflection.PropertyInfo,System.IO.BinaryReader)">
- <summary>
- Deserialises the given <see cref="T:System.Collections.IList"/> from the given <see cref="T:System.IO.BinaryReader"/>s underlying
- <see cref="T:System.IO.MemoryStream"/>. Uses <see cref="M:NetworkLib.Utils.Conversion.Converter.DeserialiseObjectFromReader(System.Object,System.IO.BinaryReader)"/> to serialise
- each of the <see cref="T:System.Collections.IList"/>s elements to the stream.
- </summary>
- <param name="propertyInfo">The <see cref="T:System.Reflection.PropertyInfo"/> holding the <see cref="T:System.Collections.IList"/>.</param>
- <param name="binaryReader">
- The <see cref="T:System.IO.BinaryReader"/> from whose underlying <see cref="T:System.IO.MemoryStream"/> to deserialise the given
- <see cref="T:System.Reflection.PropertyInfo"/>.
- </param>
- <exception cref="T:System.NullReferenceException">
- Thrown if the <see cref="T:System.Collections.IList"/> held in the <see cref="T:System.IO.MemoryStream"/> is null, or if the <see cref="T:System.Collections.IList"/>s
- elements do not have a type.
- </exception>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.ReadPrimitiveFromStream(System.Type,System.IO.BinaryReader)">
- <summary>
- Reads a primitive type from the given <see cref="T:System.IO.BinaryReader"/>s underlying <see cref="T:System.IO.MemoryStream"/>
- and returns it.
- </summary>
- <param name="type">
- The <see cref="T:System.Type"/> of the primitive to read from the given <see cref="T:System.IO.BinaryReader"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </param>
- <param name="binaryReader">
- The <see cref="T:System.IO.BinaryReader"/> from whose underlying <see cref="T:System.IO.MemoryStream"/> to read the primitive.
- </param>
- <returns>
- The primitive that was read from the given <see cref="T:System.IO.BinaryReader"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </returns>
- <exception cref="T:System.NotSupportedException">
- Thrown whenever a <see cref="T:System.Type"/> is passed to this method that is not a primitive.
- </exception>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.SerialiseArrayToWriter(System.Object,System.Reflection.PropertyInfo,System.IO.BinaryWriter)">
- <summary>
- Serialises the given <see cref="T:System.Array"/> to the given <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- Uses <see cref="M:NetworkLib.Utils.Conversion.Converter.SerialiseObjectToWriter(System.Object,System.IO.BinaryWriter)"/> to serialise each of the <see cref="T:System.Array"/>s
- elements to the stream.
- </summary>
- <param name="obj">
- The <see cref="T:System.Array"/> to serialise to the given <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </param>
- <param name="propertyInfo">The <see cref="T:System.Reflection.PropertyInfo"/> holding the <see cref="T:System.Array"/>.</param>
- <param name="binaryWriter">
- The <see cref="T:System.IO.BinaryWriter"/> to whose underlying <see cref="T:System.IO.MemoryStream"/> to serialise the given <see cref="T:System.Reflection.PropertyInfo"/>.
- </param>
- <exception cref="T:System.NullReferenceException">
- Thrown if the <see cref="T:System.Array"/> held in the given <see cref="T:System.Reflection.PropertyInfo"/> is null, or if the <see cref="T:System.Array"/>s
- elements do not have a type.
- </exception>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.SerialiseListToWriter(System.Object,System.Reflection.PropertyInfo,System.IO.BinaryWriter)">
- <summary>
- Serialises the given <see cref="T:System.Collections.IList"/> to the given <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- Uses <see cref="M:NetworkLib.Utils.Conversion.Converter.SerialiseObjectToWriter(System.Object,System.IO.BinaryWriter)"/> to serialise each of the <see cref="T:System.Collections.IList"/>s
- elements to the stream.
- </summary>
- <param name="obj">
- The <see cref="T:System.Collections.IList"/> to serialise to the given <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </param>
- <param name="propertyInfo">The <see cref="T:System.Reflection.PropertyInfo"/> holding the <see cref="T:System.Collections.IList"/>. </param>
- <param name="binaryWriter">
- The <see cref="T:System.IO.BinaryWriter"/> to whose underlying <see cref="T:System.IO.MemoryStream"/> to serialise the given <see cref="T:System.Reflection.PropertyInfo"/>.
- </param>
- <exception cref="T:System.NullReferenceException">
- Thrown if the <see cref="T:System.Collections.IList"/> held in the given <see cref="T:System.Reflection.PropertyInfo"/> is null, or if the <see cref="T:System.Collections.IList"/>s
- elements do not have a type.
- </exception>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.SerialiseObjectToWriter(System.Object,System.IO.BinaryWriter)">
- <summary>
- Serialises all the properties on the given <see cref="T:System.Object"/> that need to be serialised to the given
- <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </summary>
- <param name="obj">
- The <see cref="T:System.Object"/> whose properties to serialise using the given <see cref="T:System.IO.BinaryWriter"/>.
- </param>
- <param name="binaryWriter">
- The <see cref="T:System.IO.BinaryWriter"/> to whose underlying <see cref="T:System.IO.MemoryStream"/> to serialise the properties of
- the given <see cref="T:System.Object"/>.
- </param>
- <remarks>
- This method can only serialise properties that lack the custom <see cref="T:NetworkLib.Utils.Conversion.NetworkIgnorePropertyAttribute"/>.
- </remarks>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.SerialiseObjectToWriter(System.Object,System.Reflection.PropertyInfo,System.IO.BinaryWriter)">
- <summary>
- Serialises the given <see cref="T:System.Reflection.PropertyInfo"/> to the given <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </summary>
- <param name="obj">The <see cref="T:System.Object"/> whose <see cref="T:System.Reflection.PropertyInfo"/> value to serialise.</param>
- <param name="propertyInfo">
- The <see cref="T:System.Reflection.PropertyInfo"/> to serialise to the given <see cref="T:System.IO.BinaryWriter"/>s underlying <see cref="T:System.IO.MemoryStream"/>.
- </param>
- <param name="binaryWriter">
- The <see cref="T:System.IO.BinaryWriter"/> to whose underlying <see cref="T:System.IO.MemoryStream"/> to serialise the given <see cref="T:System.Reflection.PropertyInfo"/>.
- </param>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.GetBytes(System.Object)">
- <inheritdoc />
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.GetBytes``1(``0)">
- <inheritdoc />
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.GetObject(System.Type,System.Byte[])">
- <inheritdoc />
- </member>
- <member name="M:NetworkLib.Utils.Conversion.Converter.GetObject``1(System.Byte[])">
- <inheritdoc />
- </member>
- <member name="T:NetworkLib.Utils.Conversion.ConverterHelper">
- <summary>
- Provides helper methods for serialising and deserialising packets to and from their binary form.
- </summary>
- </member>
- <member name="F:NetworkLib.Utils.Conversion.ConverterHelper.PropertyIgnoreAttributeType">
- <summary>
- The <see cref="T:System.Type"/> of the custom property that will cause a property to be ignored during serialisation.
- See <see cref="T:NetworkLib.Utils.Conversion.NetworkIgnorePropertyAttribute"/> for more information regarding its usage.
- </summary>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.ConverterHelper.GetObjectProperties(System.Object)">
- <summary>
- Gets all the <see cref="T:System.Reflection.PropertyInfo"/>s of the given <see cref="T:System.Object"/> that should be serialised and
- returns them as an array. See <see cref="M:NetworkLib.Utils.Conversion.ConverterHelper.GetTypeProperties(System.Type)"/> for more information.
- </summary>
- <param name="_object">The <see cref="T:System.Object"/> whose <see cref="T:System.Reflection.PropertyInfo"/>s to read.</param>
- <returns>An array of all the <see cref="T:System.Reflection.PropertyInfo"/>s on the given object.</returns>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.ConverterHelper.GetTypeProperties(System.Type)">
- <summary>
- Gets all the <see cref="T:System.Reflection.PropertyInfo"/>s of the given <see cref="T:System.Type"/> that should be serialised (lack the
- <see cref="T:NetworkLib.Utils.Conversion.NetworkIgnorePropertyAttribute"/> attribute) and returns them as an array.
- </summary>
- <param name="type">The <see cref="T:System.Type"/> whose <see cref="T:System.Reflection.PropertyInfo"/>s to read.</param>
- <returns>An array of all the <see cref="T:System.Reflection.PropertyInfo"/>s on the given object.</returns>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.ConverterHelper.InstantiateGenericObject``1">
- <summary>
- Instantiates and returns a default <see cref="T:System.Object"/> of the given generic type.
- </summary>
- <typeparam name="O">The generic type of the object to instantiate.</typeparam>
- <returns>The default instance of the given generic type.</returns>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.ConverterHelper.InstantiateObject(System.Type)">
- <summary>
- Instantiates and returns a default <see cref="T:System.Object"/> of the given <see cref="T:System.Type"/>.
- </summary>
- <param name="objectType">The <see cref="T:System.Type"/> to instantiate.</param>
- <returns>The default instance of the given <see cref="T:System.Type"/>.</returns>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.ConverterHelper.PropertyIsPrimitive(System.Reflection.PropertyInfo)">
- <summary>
- Checks whether the underlying <see cref="T:System.Type"/> of the given property is a primitive type. See
- <see cref="M:NetworkLib.Utils.Conversion.ConverterHelper.TypeIsPrimitive(System.Type)"/> for more information regarding its usage.
- </summary>
- <param name="property">The <see cref="T:System.Reflection.PropertyInfo"/> to test.</param>
- <returns>Whether the given <see cref="T:System.Reflection.PropertyInfo"/>s underlying <see cref="T:System.Type"/> is primitive.</returns>
- <remarks>
- If the given properties underlying element <see cref="T:System.Type"/> is null, then the method will return false.
- </remarks>
- </member>
- <member name="M:NetworkLib.Utils.Conversion.ConverterHelper.TypeIsPrimitive(System.Type)">
- <summary>
- Checks whether the given <see cref="T:System.Type"/> is a primitive type, that is if it lives in the 'System' namespace.
- </summary>
- <param name="type">The <see cref="T:System.Type"/> to test.</param>
- <returns>Whether the given <see cref="T:System.Type"/> is a primitive.</returns>
- <remarks>If the given <see cref="T:System.Type"/> is null, then the method will return false.</remarks>
- </member>
- <member name="T:NetworkLib.Utils.Conversion.EndianAwareBitConverter">
+ <member name="T:NetSharp.Utils.Conversion.EndianAwareBitConverter">
<summary>
Wraps the <see cref="T:System.BitConverter"/> class to provide conversion that is endian-aware.
</summary>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ReverseAsNeeded(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ReverseAsNeeded(System.Span{System.Byte},System.Boolean)">
<summary>
Reverses the given bytes if the endian-nes doesn't match.
</summary>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Boolean,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Boolean,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Boolean)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Char,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Char,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Char)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Double,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Double,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Double)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Single,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Single,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Single)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Int32,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Int32,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Int32)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Int64,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Int64,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Int64)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Int16,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.Int16,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.Int16)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.UInt32,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.UInt32,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.UInt32)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.UInt64,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.UInt64,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.UInt64)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.UInt16,System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.GetBytes(System.UInt16,System.Boolean)">
<inheritdoc cref="M:System.BitConverter.GetBytes(System.UInt16)"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToBoolean(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToBoolean(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToBoolean(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToChar(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToChar(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToChar(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToDouble(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToDouble(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToDouble(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToInt16(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToInt16(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToInt16(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToInt32(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToInt32(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToInt32(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToInt64(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToInt64(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToInt64(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToSingle(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToSingle(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToSingle(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToUInt16(System.Byte[],System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToUInt16(System.Byte[],System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToUInt16(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToUInt32(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToUInt32(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToUInt32(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="M:NetworkLib.Utils.Conversion.EndianAwareBitConverter.ToUInt64(System.Span{System.Byte},System.Boolean)">
+ <member name="M:NetSharp.Utils.Conversion.EndianAwareBitConverter.ToUInt64(System.Span{System.Byte},System.Boolean)">
<inheritdoc cref="M:System.BitConverter.ToUInt64(System.ReadOnlySpan{System.Byte})"/>
</member>
- <member name="T:NetworkLib.Utils.Conversion.NetworkIgnorePropertyAttribute">
- <summary>
- Marks a property to be ignored by the binary serialiser.
- </summary>
- </member>
- <member name="T:NetworkLib.Utils.NetworkOperations">
+ <member name="T:NetSharp.Utils.NetworkOperations">
<summary>
Helper class for asynchronously performing common network operations, for both the UDP and TCP protocols.
</summary>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.ReadAsync(System.Net.Sockets.Socket,System.Int32,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.ReadAsync(System.Net.Sockets.Socket,System.Int32,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Reads the specified amount of data asynchronously from the network, via the given socket.
The given <see cref="T:System.Net.Sockets.SocketFlags"/> are associated with the read, and the given <see cref="T:System.Threading.CancellationToken"/>
@@ -2060,7 +1787,7 @@
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
<returns>The result of the receive operation.</returns>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.ReadFromAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.ReadFromAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Reads a datagram asynchronously from the given remote endpoint, via the given socket.
The given <see cref="T:System.Net.Sockets.SocketFlags"/> are associated with the read, and the given <see cref="T:System.Threading.CancellationToken"/>
@@ -2072,7 +1799,7 @@
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
<returns>The result of the receive operation.</returns>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.ReadPacketAsync(System.Net.Sockets.Socket,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.ReadPacketAsync(System.Net.Sockets.Socket,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Reads a packet asynchronously from network, via the given socket. The given <see cref="T:System.Net.Sockets.SocketFlags"/> are
associated with the read, and the given <see cref="T:System.Threading.CancellationToken"/> is used to allow for asynchronous
@@ -2083,7 +1810,7 @@
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
<returns>The read packet.</returns>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.ReadPacketFromAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.ReadPacketFromAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Reads a packet asynchronously from the given remote endpoint, via the given socket. The given
<see cref="T:System.Net.Sockets.SocketFlags"/> are associated with the read, and the given <see cref="T:System.Threading.CancellationToken"/> is
@@ -2095,7 +1822,7 @@
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
<returns>The read packet and associated transmission results.</returns>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.WriteAsync(System.Net.Sockets.Socket,System.ReadOnlyMemory{System.Byte},System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.WriteAsync(System.Net.Sockets.Socket,System.ReadOnlyMemory{System.Byte},System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Writes the given buffer asynchronously to the network, via the given socket.
The given <see cref="T:System.Net.Sockets.SocketFlags"/> are associated with the write, and the given <see cref="T:System.Threading.CancellationToken"/>
@@ -2106,7 +1833,7 @@
<param name="socketFlags">The socket flags associated with the send operation.</param>
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.WritePacketAsync(System.Net.Sockets.Socket,NetworkLib.Packets.Packet,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.WritePacketAsync(System.Net.Sockets.Socket,NetSharp.Packets.Packet,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Writes the given packet asynchronously to the network, via the given socket. The given <see cref="T:System.Net.Sockets.SocketFlags"/>
are associated with the write, and the given <see cref="T:System.Threading.CancellationToken"/> is used to allow for asynchronous
@@ -2117,7 +1844,7 @@
<param name="socketFlags">The socket flags associated with the send operation.</param>
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.WritePacketToAsync(System.Net.Sockets.Socket,System.Net.EndPoint,NetworkLib.Packets.Packet,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.WritePacketToAsync(System.Net.Sockets.Socket,System.Net.EndPoint,NetSharp.Packets.Packet,System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Writes the given packet asynchronously to the given remote endpoint, via the given socket.
The given <see cref="T:System.Net.Sockets.SocketFlags"/> are associated with the write, and the given <see cref="T:System.Threading.CancellationToken"/>
@@ -2129,7 +1856,7 @@
<param name="socketFlags">The socket flags associated with the send operation.</param>
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
</member>
- <member name="M:NetworkLib.Utils.NetworkOperations.WriteToAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.ReadOnlyMemory{System.Byte},System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
+ <member name="M:NetSharp.Utils.NetworkOperations.WriteToAsync(System.Net.Sockets.Socket,System.Net.EndPoint,System.ReadOnlyMemory{System.Byte},System.Net.Sockets.SocketFlags,System.Threading.CancellationToken)">
<summary>
Writes the given buffer asynchronously to the given remote endpoint, via the given socket.
The given <see cref="T:System.Net.Sockets.SocketFlags"/> are associated with the write, and the given <see cref="T:System.Threading.CancellationToken"/>
@@ -2141,76 +1868,76 @@
<param name="socketFlags">The socket flags associated with the send operation.</param>
<param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
</member>
- <member name="T:NetworkLib.Utils.Socket_Options.DefaultSocketOptions">
+ <member name="T:NetSharp.Utils.Socket_Options.DefaultSocketOptions">
<summary>
Allows for manipulation of socket options.
</summary>
</member>
- <member name="M:NetworkLib.Utils.Socket_Options.DefaultSocketOptions.#ctor(System.Net.Sockets.Socket@)">
+ <member name="M:NetSharp.Utils.Socket_Options.DefaultSocketOptions.#ctor(System.Net.Sockets.Socket@)">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.DefaultSocketOptions.HopLimit">
+ <member name="P:NetSharp.Utils.Socket_Options.DefaultSocketOptions.HopLimit">
<inheritdoc />
<exception cref="T:System.NotSupportedException">
This property is not supported when using the default socket option manager.
</exception>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.DefaultSocketOptions.IsRoutingEnabled">
+ <member name="P:NetSharp.Utils.Socket_Options.DefaultSocketOptions.IsRoutingEnabled">
<inheritdoc />
<exception cref="T:System.NotSupportedException">
This property is not supported when using the default socket option manager.
</exception>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.DefaultSocketOptions.UseLoopback">
+ <member name="P:NetSharp.Utils.Socket_Options.DefaultSocketOptions.UseLoopback">
<inheritdoc />
<exception cref="T:System.NotSupportedException">
This property is not supported when using the default socket option manager.
</exception>
</member>
- <member name="T:NetworkLib.Utils.Socket_Options.SocketOptionManager">
+ <member name="T:NetSharp.Utils.Socket_Options.SocketOptionManager">
<summary>
- Enumerates the possible socket option manager types to instantiate for a <see cref="T:NetworkLib.Client"/> and <see cref="T:NetworkLib.Server"/>
+ Enumerates the possible socket option manager types to instantiate for a <see cref="T:NetSharp.Client"/> and <see cref="T:NetSharp.Server"/>
instance.
</summary>
</member>
- <member name="F:NetworkLib.Utils.Socket_Options.SocketOptionManager.Default">
+ <member name="F:NetSharp.Utils.Socket_Options.SocketOptionManager.Default">
<summary>
- Causes a <see cref="T:NetworkLib.Utils.Socket_Options.DefaultSocketOptions"/> instance to be created as the socket option manager.
+ Causes a <see cref="T:NetSharp.Utils.Socket_Options.DefaultSocketOptions"/> instance to be created as the socket option manager.
This means that certain socket options will throw an error, as the socket type is not specified.
</summary>
</member>
- <member name="F:NetworkLib.Utils.Socket_Options.SocketOptionManager.Tcp">
+ <member name="F:NetSharp.Utils.Socket_Options.SocketOptionManager.Tcp">
<summary>
- Causes a <see cref="T:NetworkLib.Utils.Socket_Options.TcpSocketOptions"/> instance to be created as the socket option manager.
+ Causes a <see cref="T:NetSharp.Utils.Socket_Options.TcpSocketOptions"/> instance to be created as the socket option manager.
</summary>
</member>
- <member name="F:NetworkLib.Utils.Socket_Options.SocketOptionManager.Udp">
+ <member name="F:NetSharp.Utils.Socket_Options.SocketOptionManager.Udp">
<summary>
- Causes a <see cref="T:NetworkLib.Utils.Socket_Options.UdpSocketOptions"/> instance to be created as the socket option manager.
+ Causes a <see cref="T:NetSharp.Utils.Socket_Options.UdpSocketOptions"/> instance to be created as the socket option manager.
</summary>
</member>
- <member name="T:NetworkLib.Utils.Socket_Options.SocketOptions">
+ <member name="T:NetSharp.Utils.Socket_Options.SocketOptions">
<summary>
Allows for manipulation of socket options.
</summary>
</member>
- <member name="F:NetworkLib.Utils.Socket_Options.SocketOptions.managedSocket">
+ <member name="F:NetSharp.Utils.Socket_Options.SocketOptions.managedSocket">
<summary>
The <see cref="T:System.Net.Sockets.Socket"/> instance whose settings are being managed.
</summary>
</member>
- <member name="M:NetworkLib.Utils.Socket_Options.SocketOptions.#ctor(System.Net.Sockets.Socket@)">
+ <member name="M:NetSharp.Utils.Socket_Options.SocketOptions.#ctor(System.Net.Sockets.Socket@)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Utils.Socket_Options.SocketOptions"/> class.
+ Initialises a new instance of the <see cref="T:NetSharp.Utils.Socket_Options.SocketOptions"/> class.
</summary>
<param name="socket">The <see cref="T:System.Net.Sockets.Socket"/> instance whose options should be managed.</param>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.DualMode">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.DualMode">
<summary>
Whether this <see cref="T:System.Net.Sockets.Socket"/> can operate in dual IPv4 / IPv6 mode.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.ForceFlush">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.ForceFlush">
<summary>
Whether sending a packet flushes underlying <see cref="T:System.Net.Sockets.NetworkStream"/>.
</summary>
@@ -2219,114 +1946,114 @@
to send and receive data. A <see cref="T:System.Net.Sockets.UdpClient"/> is unaffected by this value.
</remarks>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.Fragment">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.Fragment">
<summary>
Whether this <see cref="T:System.Net.Sockets.Socket"/> is allowed to fragment frames that are too large to send in one go.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.HopLimit">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.HopLimit">
<summary>
The hop limit for packets sent by this <see cref="T:System.Net.Sockets.Socket"/>. Comparable to IPv4s TTL (Time To Live).
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.IsChecksumEnabled">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.IsChecksumEnabled">
<summary>
Whether a checksum should be created for each UDP packet sent.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.IsRoutingEnabled">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.IsRoutingEnabled">
<summary>
Whether the packet should be sent directly to its destination or allowed to be routed through multiple destinations
first.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.LocalEndPoint">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.LocalEndPoint">
<summary>
- The local <see cref="T:System.Net.EndPoint"/> for the <see cref="F:NetworkLib.Utils.Socket_Options.SocketOptions.managedSocket"/>.
+ The local <see cref="T:System.Net.EndPoint"/> for the <see cref="F:NetSharp.Utils.Socket_Options.SocketOptions.managedSocket"/>.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.LocalIPEndPoint">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.LocalIPEndPoint">
<summary>
The local <see cref="T:System.Net.IPEndPoint"/> for this <see cref="T:System.Net.Sockets.Socket"/> instance.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.RemoteEndPoint">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.RemoteEndPoint">
<summary>
- The remote <see cref="T:System.Net.EndPoint"/> for the <see cref="F:NetworkLib.Utils.Socket_Options.SocketOptions.managedSocket"/>.
+ The remote <see cref="T:System.Net.EndPoint"/> for the <see cref="F:NetSharp.Utils.Socket_Options.SocketOptions.managedSocket"/>.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.RemoteIPEndPoint">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.RemoteIPEndPoint">
<summary>
The remote <see cref="T:System.Net.IPEndPoint"/> that this <see cref="T:System.Net.Sockets.Socket"/> instance communicates with.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.Ttl">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.Ttl">
<summary>
The 'Time To Live' for this <see cref="T:System.Net.Sockets.Socket"/>.
</summary>
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.SocketOptions.UseLoopback">
+ <member name="P:NetSharp.Utils.Socket_Options.SocketOptions.UseLoopback">
<summary>
Whether this <see cref="T:System.Net.Sockets.Socket"/> should use a loopback address and bypass hardware.
</summary>
</member>
- <member name="T:NetworkLib.Utils.Socket_Options.TcpSocketOptions">
+ <member name="T:NetSharp.Utils.Socket_Options.TcpSocketOptions">
<summary>
Allows for manipulation of TCP socket options.
</summary>
</member>
- <member name="M:NetworkLib.Utils.Socket_Options.TcpSocketOptions.#ctor(System.Net.Sockets.Socket@)">
+ <member name="M:NetSharp.Utils.Socket_Options.TcpSocketOptions.#ctor(System.Net.Sockets.Socket@)">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.TcpSocketOptions.HopLimit">
+ <member name="P:NetSharp.Utils.Socket_Options.TcpSocketOptions.HopLimit">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.TcpSocketOptions.IsRoutingEnabled">
+ <member name="P:NetSharp.Utils.Socket_Options.TcpSocketOptions.IsRoutingEnabled">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.TcpSocketOptions.UseLoopback">
+ <member name="P:NetSharp.Utils.Socket_Options.TcpSocketOptions.UseLoopback">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Utils.Socket_Options.UdpSocketOptions">
+ <member name="T:NetSharp.Utils.Socket_Options.UdpSocketOptions">
<summary>
Allows for manipulation of UDP socket options.
</summary>
</member>
- <member name="M:NetworkLib.Utils.Socket_Options.UdpSocketOptions.#ctor(System.Net.Sockets.Socket@)">
+ <member name="M:NetSharp.Utils.Socket_Options.UdpSocketOptions.#ctor(System.Net.Sockets.Socket@)">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.UdpSocketOptions.HopLimit">
+ <member name="P:NetSharp.Utils.Socket_Options.UdpSocketOptions.HopLimit">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.UdpSocketOptions.IsRoutingEnabled">
+ <member name="P:NetSharp.Utils.Socket_Options.UdpSocketOptions.IsRoutingEnabled">
<inheritdoc />
</member>
- <member name="P:NetworkLib.Utils.Socket_Options.UdpSocketOptions.UseLoopback">
+ <member name="P:NetSharp.Utils.Socket_Options.UdpSocketOptions.UseLoopback">
<inheritdoc />
</member>
- <member name="T:NetworkLib.Utils.TransmissionResult">
+ <member name="T:NetSharp.Utils.TransmissionResult">
<summary>
Represents the result of a socket transmission.
</summary>
</member>
- <member name="F:NetworkLib.Utils.TransmissionResult.Buffer">
+ <member name="F:NetSharp.Utils.TransmissionResult.Buffer">
<summary>
The byte buffer that was transmitted across the network.
</summary>
</member>
- <member name="F:NetworkLib.Utils.TransmissionResult.Count">
+ <member name="F:NetSharp.Utils.TransmissionResult.Count">
<summary>
The number of bytes that were transmitted across the network.
</summary>
</member>
- <member name="F:NetworkLib.Utils.TransmissionResult.RemoteEndPoint">
+ <member name="F:NetSharp.Utils.TransmissionResult.RemoteEndPoint">
<summary>
The remote endpoint to which the buffer was transmitted.
</summary>
</member>
- <member name="M:NetworkLib.Utils.TransmissionResult.#ctor(System.Memory{System.Byte},System.Int32,System.Net.EndPoint)">
+ <member name="M:NetSharp.Utils.TransmissionResult.#ctor(System.Memory{System.Byte},System.Int32,System.Net.EndPoint)">
<summary>
- Initialises a new instance of the <see cref="T:NetworkLib.Utils.TransmissionResult"/> struct.
+ Initialises a new instance of the <see cref="T:NetSharp.Utils.TransmissionResult"/> struct.
</summary>
<param name="buffer">The byte buffer that was transmitted.</param>
<param name="count">The number of bytes that were transmitted.</param>
diff --git a/NetSharp/NetSharp/Server.cs b/NetSharp/NetSharp/Server.cs
@@ -240,7 +240,7 @@ namespace NetSharp
bindSocketCancellationTokenSource?.Cancel();
bindSocketCancellationTokenSource?.Dispose();
- socket?.Dispose();
+ socket.Dispose();
}
base.Dispose(disposing);
@@ -270,9 +270,9 @@ namespace NetSharp
{
logger.LogMessage("Closing and releasing all resources associated with client handler socket");
- clientHandlerArgs.ClientSocket.Close(1);
clientHandlerArgs.ClientSocket.Shutdown(SocketShutdown.Both);
clientHandlerArgs.ClientSocket.Disconnect(true);
+ clientHandlerArgs.ClientSocket.Close(1);
clientHandlerArgs.ClientSocket.Dispose();
}
}
@@ -301,20 +301,20 @@ namespace NetSharp
if (complexPacketHandlers.ContainsKey(packetType))
{
IResponsePacket<IRequestPacket> response =
- (IResponsePacket<IRequestPacket>)complexPacketHandlers[packetType]
- .DynamicInvoke(requestPacket, remoteEndPoint);
+ complexPacketHandlers[packetType].Invoke(requestPacket, remoteEndPoint);
return response;
}
if (simplePacketHandlers.ContainsKey(packetType))
{
- simplePacketHandlers[packetType].DynamicInvoke(requestPacket, remoteEndPoint);
+ simplePacketHandlers[packetType].Invoke(requestPacket, remoteEndPoint);
return null;
}
-#if DEBUG
+
+ #if DEBUG
logger.LogWarning($"No packet handler was registered for packet of type {packetType}");
-#endif
+ #endif
}
catch (Exception ex)
{
diff --git a/NetSharp/NetSharp/Servers/TcpServer.cs b/NetSharp/NetSharp/Servers/TcpServer.cs
@@ -24,7 +24,7 @@ namespace NetSharp.Servers
/// <inheritdoc />
protected override async Task HandleClientAsync(ClientHandlerArgs args)
{
- using Socket clientHandlerSocket = args.ClientSocket ?? new Socket(SocketType.Unknown, ProtocolType.Unknown);
+ Socket clientHandlerSocket = args.ClientSocket ?? new Socket(SocketType.Unknown, ProtocolType.Unknown);
EndPoint remoteEp = clientHandlerSocket.RemoteEndPoint;
diff --git a/NetSharp/NetSharp/Servers/UdpServer.cs b/NetSharp/NetSharp/Servers/UdpServer.cs
@@ -125,23 +125,20 @@ namespace NetSharp.Servers
{
continue;
}
-
- if (!activeClients.TryGetValue(clientEndPoint, out BufferBlock<Packet> clientPacketBuffer))
+
+ if (!activeClients.ContainsKey(clientEndPoint))
{
ClientHandlerArgs args = ClientHandlerArgs.ForUdpClientHandler(in clientEndPoint);
activeClients.TryAdd(clientEndPoint, new BufferBlock<Packet>());
- activeClients[clientEndPoint].Post(request);
await Task.Factory.StartNew(DoHandleClientAsync, args,
- serverShutdownCancellationTokenSource.Token,
- TaskCreationOptions.LongRunning,
- TaskScheduler.Current);
-
- continue;
+ serverShutdownCancellationTokenSource.Token,
+ TaskCreationOptions.LongRunning,
+ TaskScheduler.Current);
}
- clientPacketBuffer.Post(request);
+ activeClients[clientEndPoint].Post(request);
}
OnServerStopped();
diff --git a/NetSharp/NetSharp/Utils/NetworkOperations.cs b/NetSharp/NetSharp/Utils/NetworkOperations.cs
@@ -1,6 +1,7 @@
using System;
using System.Net;
using System.Net.Sockets;
+using System.Runtime.CompilerServices;
using System.Threading;
using System.Threading.Tasks;
using NetSharp.Packets;
@@ -23,15 +24,24 @@ namespace NetSharp.Utils
/// <param name="socketFlags">The socket flags associated with the receive operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
/// <returns>The result of the receive operation.</returns>
- public static async Task<TransmissionResult> ReadAsync(Socket socket, int count, SocketFlags socketFlags,
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Task<TransmissionResult> ReadAsync(Socket socket, int count, SocketFlags socketFlags,
CancellationToken cancellationToken)
{
- byte[] byteBuffer = new byte[count];
+ return Task.Factory.StartNew(() =>
+ {
+ byte[] byteBuffer = new byte[count];
+ int receivedBytesCount = 0;
- int receivedByteCount = await socket.ReceiveAsync(byteBuffer, socketFlags, cancellationToken);
+ while (count > receivedBytesCount)
+ {
+ Span<byte> receivedBytes = new Span<byte>(byteBuffer, receivedBytesCount, count - receivedBytesCount);
- return new TransmissionResult(new Memory<byte>(byteBuffer, 0, receivedByteCount), receivedByteCount,
- socket.RemoteEndPoint);
+ receivedBytesCount += socket.Receive(receivedBytes, socketFlags);
+ }
+
+ return new TransmissionResult(byteBuffer, receivedBytesCount, socket.RemoteEndPoint);
+ }, cancellationToken);
}
/// <summary>
@@ -44,10 +54,11 @@ namespace NetSharp.Utils
/// <param name="socketFlags">The socket flags associated with the receive operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
/// <returns>The result of the receive operation.</returns>
- public static async Task<TransmissionResult> ReadFromAsync(Socket socket, EndPoint remoteEndPoint,
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Task<TransmissionResult> ReadFromAsync(Socket socket, EndPoint remoteEndPoint,
SocketFlags socketFlags, CancellationToken cancellationToken)
{
- return await Task.Factory.StartNew(() =>
+ return Task.Factory.StartNew(() =>
{
byte[] byteBuffer = new byte[Constants.UdpMaxBufferSize];
@@ -69,6 +80,7 @@ namespace NetSharp.Utils
/// <param name="socketFlags">The socket flags associated with the receive operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
/// <returns>The read packet.</returns>
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
public static async Task<Packet> ReadPacketAsync(Socket socket, SocketFlags socketFlags, CancellationToken cancellationToken)
{
TransmissionResult packetHeaderResult = await ReadAsync(socket, Packet.HeaderSize, socketFlags, cancellationToken);
@@ -103,6 +115,7 @@ namespace NetSharp.Utils
/// <param name="socketFlags">The socket flags associated with the receive operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
/// <returns>The read packet and associated transmission results.</returns>
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
public static async Task<(Packet packet, TransmissionResult packetResult)> ReadPacketFromAsync(
Socket socket, EndPoint remoteEndPoint, SocketFlags socketFlags, CancellationToken cancellationToken)
{
@@ -121,18 +134,22 @@ namespace NetSharp.Utils
/// <param name="buffer">The buffer that should be written to the network.</param>
/// <param name="socketFlags">The socket flags associated with the send operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
- public static async Task WriteAsync(Socket socket, ReadOnlyMemory<byte> buffer, SocketFlags socketFlags,
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Task WriteAsync(Socket socket, ReadOnlyMemory<byte> buffer, SocketFlags socketFlags,
CancellationToken cancellationToken)
{
- int bytesToSend = buffer.Length;
- int sentBytesCount = 0;
-
- while (bytesToSend > sentBytesCount)
+ return Task.Factory.StartNew(() =>
{
- ReadOnlyMemory<byte> bufferSegment = buffer.Slice(sentBytesCount, bytesToSend - sentBytesCount);
+ int bytesToSend = buffer.Length;
+ int sentBytesCount = 0;
- sentBytesCount += await socket.SendAsync(bufferSegment, socketFlags, cancellationToken);
- }
+ while (bytesToSend > sentBytesCount)
+ {
+ ReadOnlySpan<byte> bufferSegment = buffer.Span.Slice(sentBytesCount, bytesToSend - sentBytesCount);
+
+ sentBytesCount += socket.Send(bufferSegment, socketFlags);
+ }
+ }, cancellationToken);
}
/// <summary>
@@ -144,11 +161,10 @@ namespace NetSharp.Utils
/// <param name="packet">The packet that should be written to the network.</param>
/// <param name="socketFlags">The socket flags associated with the send operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
- public static async Task WritePacketAsync(Socket socket, Packet packet, SocketFlags socketFlags,
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Task WritePacketAsync(Socket socket, Packet packet, SocketFlags socketFlags,
CancellationToken cancellationToken)
- {
- await WriteAsync(socket, Packet.Serialise(packet), socketFlags, cancellationToken);
- }
+ => WriteAsync(socket, Packet.Serialise(packet), socketFlags, cancellationToken);
/// <summary>
/// Writes the given packet asynchronously to the given remote endpoint, via the given socket.
@@ -160,11 +176,10 @@ namespace NetSharp.Utils
/// <param name="packet">The packet that should be written to the remote endpoint.</param>
/// <param name="socketFlags">The socket flags associated with the send operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
- public static async Task WritePacketToAsync(Socket socket, EndPoint remoteEndPoint, Packet packet,
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Task WritePacketToAsync(Socket socket, EndPoint remoteEndPoint, Packet packet,
SocketFlags socketFlags, CancellationToken cancellationToken)
- {
- await WriteToAsync(socket, remoteEndPoint, Packet.Serialise(packet), socketFlags, cancellationToken);
- }
+ => WriteToAsync(socket, remoteEndPoint, Packet.Serialise(packet), socketFlags, cancellationToken);
/// <summary>
/// Writes the given buffer asynchronously to the given remote endpoint, via the given socket.
@@ -176,21 +191,20 @@ namespace NetSharp.Utils
/// <param name="buffer">The buffer that should be written to the network.</param>
/// <param name="socketFlags">The socket flags associated with the send operation.</param>
/// <param name="cancellationToken">The cancellation token to use for asynchronous cancellation.</param>
- public static async Task WriteToAsync(Socket socket, EndPoint remoteEndPoint, ReadOnlyMemory<byte> buffer,
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Task WriteToAsync(Socket socket, EndPoint remoteEndPoint, ReadOnlyMemory<byte> buffer,
SocketFlags socketFlags, CancellationToken cancellationToken)
{
- await Task.Factory.StartNew(async () =>
+ return Task.Factory.StartNew(() =>
{
- byte[] heapAllocatedBuffer = buffer.ToArray();
int bytesToSend = buffer.Length;
int sentBytesCount = 0;
while (bytesToSend > sentBytesCount)
{
- ArraySegment<byte> bufferSegment =
- new ArraySegment<byte>(heapAllocatedBuffer, sentBytesCount, bytesToSend - sentBytesCount);
+ ReadOnlySpan<byte> bufferSegment = buffer.Span.Slice(sentBytesCount, bytesToSend - sentBytesCount);
- sentBytesCount += await socket.SendToAsync(bufferSegment, socketFlags, remoteEndPoint);
+ sentBytesCount += socket.SendTo(bufferSegment.ToArray(), socketFlags, remoteEndPoint);
}
}, cancellationToken);
}
diff --git a/NetSharp/NetSharpExamples/Program.cs b/NetSharp/NetSharpExamples/Program.cs
@@ -8,6 +8,7 @@ using System.Threading.Tasks;
using NetSharp;
using NetSharp.Clients;
using NetSharp.Extensions;
+using NetSharp.Logging;
using NetSharp.Servers;
namespace NetSharpExamples
@@ -18,16 +19,12 @@ namespace NetSharpExamples
private static int serverPort;
+ private static int newtorkTimeout = 1_000_000;
+
private static async Task Main()
{
Console.WriteLine("Hello World!");
- //await TestTaskCancellation();
-
- //TestThreadCancellation();
-
- //TestManualResetEvent();
-
serverAddress = IPAddress.Loopback;
serverPort = 12374;
@@ -62,14 +59,14 @@ namespace NetSharpExamples
private static async Task TestClient()
{
- TimeSpan socketTimeout = Timeout.InfiniteTimeSpan; //TimeSpan.FromSeconds(10);
+ TimeSpan socketTimeout = TimeSpan.FromSeconds(newtorkTimeout);
const int clientCount = 1;
const int sentPacketCount = 1_000_000;
static Client ClientFactory()
{
- return new TcpClient();
+ return new UdpClient();
}
for (int i = 0; i < clientCount; i++)
@@ -77,7 +74,6 @@ namespace NetSharpExamples
await Task.Factory.StartNew(async () =>
{
using Client client = ClientFactory();
- client.ChangeLoggingStream(Console.OpenStandardOutput());
if (await client.TryBindAsync(null, null, socketTimeout))
{
@@ -90,12 +86,18 @@ namespace NetSharpExamples
//var message = new SimpleRequestPacket { Message = "Hello World" };
byte[] message = Encoding.UTF8.GetBytes("Hello World!");
+ bool failedToSend = false;
Stopwatch messageStopwatch = Stopwatch.StartNew();
for (int j = 0; j < sentPacketCount; j++)
{
- await client.SendBytesAsync(message);
+ if (!await client.SendBytesAsync(message, socketTimeout))
+ {
+ failedToSend = true;
+ break;
+ }
+
//Console.WriteLine($"[{j}] Sent message to server.");
//byte[] response = await client.SendBytesWithResponseAsync(message);
@@ -106,14 +108,22 @@ namespace NetSharpExamples
messageStopwatch.Stop();
- Console.WriteLine(
- $"Sending {sentPacketCount} packets of {message.Length} bytes long took {messageStopwatch.Elapsed}");
+ if (!failedToSend)
+ {
+ Console.WriteLine(
+ $"Sending {sentPacketCount} packets of {message.Length} bytes long took {messageStopwatch.Elapsed}");
- double bandwidth = message.Length * sentPacketCount / (messageStopwatch.ElapsedMilliseconds / 1000.0);
+ double bandwidth = message.Length * sentPacketCount / (messageStopwatch.ElapsedMilliseconds / 1000.0);
- Console.WriteLine($"Approximate bandwidth for single connection is {bandwidth} Bytes per second");
+ Console.WriteLine($"Approximate bandwidth for single connection is {bandwidth} Bytes per second");
+ }
+ else
+ {
+ Console.WriteLine("Could not successfully send all packets to server.");
+ }
client.Disconnect();
+ Console.WriteLine($"Sent disconnect packet to server.");
}
else
{
@@ -124,51 +134,21 @@ namespace NetSharpExamples
{
Console.WriteLine("Socket could not be bound");
}
- }, TaskCreationOptions.LongRunning);
+ }, TaskCreationOptions.LongRunning).Result;
}
Console.ReadLine();
}
- private static void TestManualResetEvent()
- {
- using CancellationTokenSource cts = new CancellationTokenSource();
-
- ManualResetEventSlim reset = new ManualResetEventSlim(false);
-
- Thread waitThread = new Thread(tokenObj =>
- {
- CancellationToken token = (CancellationToken)tokenObj;
-
- try
- {
- Console.WriteLine("Waiting for manual reset event to be signaled.");
- reset.Wait(token);
- }
- catch (Exception ex)
- {
- Console.WriteLine($"Exception while waiting: {ex}");
- }
- });
-
- waitThread.Start(cts.Token);
-
- Thread.Sleep(100);
-
- reset.Set();
-
- waitThread.Join();
- }
-
private static async Task TestServer()
{
const string serverLogFile = @"./serverLog.txt";
File.Delete(serverLogFile);
await using Stream serverOutputStream = File.OpenWrite(serverLogFile);
- using Server server = new TcpServer();
- //server.ChangeLoggingStream(Console.OpenStandardOutput());
- //server.ChangeLoggingStream(serverOutputStream);
+ using Server server = new UdpServer();
+ server.ChangeLoggingStream(Console.OpenStandardOutput());
+ //server.ChangeLoggingStream(serverOutputStream, LogLevel.Error);
Console.WriteLine("Starting server...");
await server.RunAsync(serverAddress, serverPort);
@@ -178,75 +158,5 @@ namespace NetSharpExamples
serverOutputStream.Close();
}
-
- private static async Task TestTaskCancellation()
- {
- using CancellationTokenSource _cts = new CancellationTokenSource();
-
- // simulates heavy thread work with a timeout value.
- async Task<bool> ProcessTask(CancellationTokenSource cts, int taskProcessTimeMs, int timeoutMs)
- {
- try
- {
- int threadSleep = taskProcessTimeMs, timeout = timeoutMs;
-
- Console.WriteLine($"Task process time ms: {threadSleep}, task timeout ms: {timeout}");
-
- cts.CancelAfter(timeout);
-
- bool wasCancelled = await Task.Run(() =>
- {
- Thread.Sleep(threadSleep);
- return true;
- }, cts.Token);
-
- Console.WriteLine($"Was task successful: {wasCancelled}");
-
- return wasCancelled;
- }
- catch (TaskCanceledException ex)
- {
- Console.WriteLine($"Cancellation Token cancelled during task execution: {ex.Message}");
-
- return false;
- }
- }
-
- await ProcessTask(_cts, 50, 100);
-
- await ProcessTask(_cts, 1000, 100);
- }
-
- private static void TestThreadCancellation()
- {
- using CancellationTokenSource cts = new CancellationTokenSource();
-
- Thread processingThread = new Thread(tokenObj =>
- {
- CancellationToken token = (CancellationToken)tokenObj;
-
- try
- {
- Console.WriteLine("Simulating heavy work and unresponsive thread...");
-
- while (true)
- {
- // simulate very heave work
-
- token.ThrowIfCancellationRequested();
- }
- }
- catch (OperationCanceledException ex)
- {
- Console.WriteLine($"Cancellation token was cancelled during task: {ex.Message}");
- }
- });
-
- cts.CancelAfter(1000);
-
- processingThread.Start(cts.Token);
-
- processingThread.Join();
- }
}
}
\ No newline at end of file