/// <summary> /// Constructor for dependency injection. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> /// <param name="principalAccessor">Allow to pass the hub principal.</param> /// <param name="hubPipeline">Manages middlewares and view model filters.</param> public DotNetifyHub(IVMControllerFactory vmControllerFactory, IPrincipalAccessor principalAccessor, IHubPipeline hubPipeline) { _vmControllerFactory = vmControllerFactory; _vmControllerFactory.ResponseDelegate = Response_VM; _principalAccessor = principalAccessor; _hubPipeline = hubPipeline; }
/// <summary> /// Constructor for dependency injection. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> /// <param name="principalAccessor">Allow to pass the hub principal.</param> public DotNetifyHub(IVMControllerFactory vmControllerFactory, IPrincipalAccessor principalAccessor) { _vmControllerFactory = vmControllerFactory; _vmControllerFactory.ResponseDelegate = Response_VM; _principalAccessor = principalAccessor; }
/// <summary> /// Creates a dotNetify hub that uses HTTP context for its hub context, and sets the response callback to a local function. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> /// <param name="serviceProvider">Allows to provide scoped service provider for the view models.</param> /// <param name="principalAccessor">Allows to pass the hub principal.</param> /// <param name="hubPipeline">Manages middlewares and view model filters.</param> /// <param name="hubResponseFactory">Factory of objects to send responses back to hub clients.</param> /// <param name="callType">Hub call type.</param> /// <param name="vmId">Identifies the view model.</param> /// <param name="data">View model data.</param> /// <returns>Hub instance.</returns> private IDotNetifyHubHandler CreateHubHandler( IVMControllerFactory vmControllerFactory, IHubServiceProvider hubServiceProvider, IPrincipalAccessor principalAccessor, IHubPipeline hubPipeline, IDotNetifyHubResponseManager hubResponseManager, string callType, string vmId, object data = null) { var httpCallerContext = new HttpCallerContext(HttpContext); if (principalAccessor is HubInfoAccessor) { var hubPrincipalAccessor = principalAccessor as HubInfoAccessor; hubPrincipalAccessor.Principal = HttpContext?.User; hubPrincipalAccessor.Context = new DotNetifyHubContext(httpCallerContext, callType, vmId, data, null, hubPrincipalAccessor.Principal); } return(new DotNetifyHubHandler(vmControllerFactory, hubServiceProvider, principalAccessor, hubPipeline, hubResponseManager) { CallerContext = httpCallerContext, OnVMResponse = ResponseVMCallback }); }
/// <summary> /// Constructor for dependency injection. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> /// <param name="principalAccessor">Allow to pass the hub principal.</param> /// <param name="hubPipeline">Manages middlewares and view model filters.</param> /// <param name="globalHubContext">Provides access to hubs.</param> public DotNetifyHub(IVMControllerFactory vmControllerFactory, IPrincipalAccessor principalAccessor, IHubPipeline hubPipeline, IHubContext <DotNetifyHub> globalHubContext) { _vmControllerFactory = vmControllerFactory; _vmControllerFactory.ResponseDelegate = Response_VM; _principalAccessor = principalAccessor; _hubPipeline = hubPipeline; _globalHubContext = globalHubContext; }
/// <summary> /// Constructor for dependency injection. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> /// <param name="principalAccessor">Allow to pass the hub principal.</param> /// <param name="middlewareFactories">Middlewares to intercept incoming view model requests and updates.</param> public DotNetifyHub(IVMControllerFactory vmControllerFactory, IPrincipalAccessor principalAccessor, IList <Func <IMiddleware> > middlewareFactories) { _vmControllerFactory = vmControllerFactory; _vmControllerFactory.ResponseDelegate = Response_VM; _principalAccessor = principalAccessor; _middlewareFactories = middlewareFactories; }
/// <summary> /// Constructor for dependency injection. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> /// <param name="serviceProvider">Allows to provide scoped service provider for the view models.</param> /// <param name="principalAccessor">Allows to pass the hub principal.</param> /// <param name="hubPipeline">Manages middlewares and view model filters.</param> /// <param name="globalHubContext">Provides access to hubs.</param> public DotNetifyHub( IVMControllerFactory vmControllerFactory, IHubServiceProvider serviceProvider, IPrincipalAccessor principalAccessor, IHubPipeline hubPipeline, IHubContext <DotNetifyHub> globalHubContext) { _vmControllerFactory = vmControllerFactory; _vmControllerFactory.ResponseDelegate = ResponseVMAsync; _serviceProvider = serviceProvider; _principalAccessor = principalAccessor; _hubPipeline = hubPipeline; _globalHubContext = globalHubContext; }
/// <summary> /// Constructor for dependency injection. /// </summary> /// <param name="vmControllerFactory">Factory of view model controllers.</param> public DotNetifyHub(IVMControllerFactory vmControllerFactory) { _vmControllerFactory = vmControllerFactory; }
/// <summary> /// Default constructor. /// </summary> public DotNetifyHub() { _vmControllerFactory = VMControllerFactory.Singleton; }