129 lines
5.2 KiB
C#
129 lines
5.2 KiB
C#
#if !BESTHTTP_DISABLE_SIGNALR_CORE
|
|
using System;
|
|
|
|
namespace BestHTTP.SignalRCore
|
|
{
|
|
public static class HubConnectionExtensions
|
|
{
|
|
public static UpStreamItemController<TResult> GetUpAndDownStreamController<TResult, T1>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 1, true);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpAndDownStreamController<TResult, T1, T2>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 2, true);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpAndDownStreamController<TResult, T1, T2, T3>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 3, true);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpAndDownStreamController<TResult, T1, T2, T3, T4>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 4, true);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpAndDownStreamController<TResult, T1, T2, T3, T4, T5>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 5, true);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpStreamController<TResult, T1>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 1);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpStreamController<TResult, T1, T2>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 2);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpStreamController<TResult, T1, T2, T3>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 3);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpStreamController<TResult, T1, T2, T3, T4>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 4);
|
|
}
|
|
|
|
public static UpStreamItemController<TResult> GetUpStreamController<TResult, T1, T2, T3, T4, T5>(this HubConnection hub, string target)
|
|
{
|
|
if (hub.State != ConnectionStates.Connected)
|
|
return null;
|
|
|
|
return hub.GetUpStreamController<TResult>(target, 5);
|
|
}
|
|
}
|
|
|
|
public static class UploadItemControllerExtensions
|
|
{
|
|
public static void UploadParam<TResult, P1>(this UpStreamItemController<TResult> controller, P1 item)
|
|
{
|
|
controller.UploadParam<P1>(controller.streamingIds[0], item);
|
|
}
|
|
|
|
public static void UploadParam<TResult, P1, P2>(this UpStreamItemController<TResult> controller, P1 param1, P2 param2)
|
|
{
|
|
controller.UploadParam<P1>(controller.streamingIds[0], param1);
|
|
controller.UploadParam<P2>(controller.streamingIds[1], param2);
|
|
}
|
|
|
|
public static void UploadParam<TResult, P1, P2, P3>(this UpStreamItemController<TResult> controller, P1 param1, P2 param2, P3 param3)
|
|
{
|
|
controller.UploadParam<P1>(controller.streamingIds[0], param1);
|
|
controller.UploadParam<P2>(controller.streamingIds[1], param2);
|
|
controller.UploadParam<P3>(controller.streamingIds[2], param3);
|
|
}
|
|
|
|
public static void UploadParam<TResult, P1, P2, P3, P4>(this UpStreamItemController<TResult> controller, P1 param1, P2 param2, P3 param3, P4 param4)
|
|
{
|
|
controller.UploadParam<P1>(controller.streamingIds[0], param1);
|
|
controller.UploadParam<P2>(controller.streamingIds[1], param2);
|
|
controller.UploadParam<P3>(controller.streamingIds[2], param3);
|
|
controller.UploadParam<P4>(controller.streamingIds[3], param4);
|
|
}
|
|
|
|
public static void UploadParam<TResult, P1, P2, P3, P4, P5>(this UpStreamItemController<TResult> controller, P1 param1, P2 param2, P3 param3, P4 param4, P5 param5)
|
|
{
|
|
controller.UploadParam<P1>(controller.streamingIds[0], param1);
|
|
controller.UploadParam<P2>(controller.streamingIds[1], param2);
|
|
controller.UploadParam<P3>(controller.streamingIds[2], param3);
|
|
controller.UploadParam<P4>(controller.streamingIds[3], param4);
|
|
controller.UploadParam<P5>(controller.streamingIds[4], param5);
|
|
}
|
|
}
|
|
}
|
|
|
|
#endif
|