mirror of
https://github.com/AlexMacocian/Net.Sdk.Web.Extensions.git
synced 2026-07-17 14:39:30 +00:00
24 lines
803 B
C#
24 lines
803 B
C#
using System.Extensions;
|
|
|
|
namespace AspNetCore.Extensions.Websockets;
|
|
|
|
public abstract class WebSocketMessageConverterBase
|
|
{
|
|
public abstract object ConvertToObject(WebSocketConverterRequest request);
|
|
public abstract WebSocketConverterResponse ConvertFromObject(object message);
|
|
}
|
|
|
|
public abstract class WebSocketMessageConverter<T> : WebSocketMessageConverterBase
|
|
{
|
|
public sealed override object ConvertToObject(WebSocketConverterRequest request)
|
|
{
|
|
return ConvertTo(request)!;
|
|
}
|
|
public sealed override WebSocketConverterResponse ConvertFromObject(object message)
|
|
{
|
|
return this.ConvertFrom(message.Cast<T>());
|
|
}
|
|
|
|
public abstract T ConvertTo(WebSocketConverterRequest request);
|
|
public abstract WebSocketConverterResponse ConvertFrom(T message);
|
|
} |