diff --git a/Composite/Core/WebClient/Services/WampRouter/AspNetWebsocketTransform.cs b/Composite/Core/WebClient/Services/WampRouter/AspNetWebsocketTransform.cs index 4b18de463c..ffea9a2c29 100644 --- a/Composite/Core/WebClient/Services/WampRouter/AspNetWebsocketTransform.cs +++ b/Composite/Core/WebClient/Services/WampRouter/AspNetWebsocketTransform.cs @@ -78,12 +78,10 @@ public async Task NewConnection(WebSocketData data) } /// - [RoutePrefix("Composite/api/Router")] public class RouterController : ApiController { /// - [Route("")] - public HttpResponseMessage Get() + public virtual HttpResponseMessage Get() { if (HttpContext.Current.IsWebSocketRequest) { diff --git a/Composite/Core/WebClient/Services/WampRouter/IRpcService.cs b/Composite/Core/WebClient/Services/WampRouter/IRpcService.cs index 9d500462c6..9a3b08fa45 100644 --- a/Composite/Core/WebClient/Services/WampRouter/IRpcService.cs +++ b/Composite/Core/WebClient/Services/WampRouter/IRpcService.cs @@ -7,10 +7,5 @@ namespace Composite.Core.WebClient.Services.WampRouter /// public interface IRpcService { - /// - /// Basic ping method - /// - [WampProcedure("ping")] - void Ping(); } } \ No newline at end of file diff --git a/Composite/Core/WebClient/Services/WampRouter/IWampEventHandler.cs b/Composite/Core/WebClient/Services/WampRouter/IWampEventHandler.cs index 0d570f32f1..b656eae3ef 100644 --- a/Composite/Core/WebClient/Services/WampRouter/IWampEventHandler.cs +++ b/Composite/Core/WebClient/Services/WampRouter/IWampEventHandler.cs @@ -5,9 +5,9 @@ namespace Composite.Core.WebClient.Services.WampRouter /// /// This class should be implemented when a publisher is going to be registered on Wamp Router /// - /// - /// - public interface IWampEventHandler + /// + /// + public interface IWampEventHandler { /// /// Topic uri @@ -16,12 +16,12 @@ public interface IWampEventHandler /// /// Observable event /// - IObservable Event { get; } + IObservable Event { get; } /// /// Data to be published from the observable event /// /// - T2 GetNewData(); + TResult GetNewData(); } } \ No newline at end of file diff --git a/Composite/Core/WebClient/Services/WampRouter/WampRouter.cs b/Composite/Core/WebClient/Services/WampRouter/WampRouter.cs index cdbda7b75a..f779219bb3 100644 --- a/Composite/Core/WebClient/Services/WampRouter/WampRouter.cs +++ b/Composite/Core/WebClient/Services/WampRouter/WampRouter.cs @@ -1,5 +1,7 @@ using System; +using System.Net.Http; using System.Reactive.Subjects; +using System.Web.Http; using Newtonsoft.Json; using Newtonsoft.Json.Serialization; using WampSharp.Binding; @@ -9,6 +11,12 @@ namespace Composite.Core.WebClient.Services.WampRouter { + /// + [Route("Composite/api/Router")] + public class MyRouterController : AspNetWebsocketTransform.RouterController + { + } + internal class WampRouter { private const string DefaultRealmName = "realm"; @@ -34,19 +42,21 @@ public void RegisterCallee(string realmName, IRpcService instance) registrationTask.Wait(); } - public void RegisterPublisher(IWampEventHandler eventObservable) + public void RegisterPublisher + (IWampEventHandler eventObservable) { RegisterPublisher(DefaultRealmName, eventObservable); } - public void RegisterPublisher(string realmName, IWampEventHandler eventObservable) + public void RegisterPublisher + (string realmName, IWampEventHandler eventObservable) { IWampHostedRealm realm = _host.RealmContainer.GetRealmByName(realmName); - ISubject subject = - realm.Services.GetSubject(eventObservable.Topic); + ISubject subject = + realm.Services.GetSubject(eventObservable.Topic); - IObservable observableEvent = eventObservable.Event; + IObservable observableEvent = eventObservable.Event; IDisposable disposable = observableEvent.Subscribe(x => diff --git a/Composite/Core/WebClient/Services/WampRouter/WampRouterFacade.cs b/Composite/Core/WebClient/Services/WampRouter/WampRouterFacade.cs index d5adb542cd..76a90127de 100644 --- a/Composite/Core/WebClient/Services/WampRouter/WampRouterFacade.cs +++ b/Composite/Core/WebClient/Services/WampRouter/WampRouterFacade.cs @@ -1,5 +1,3 @@ -using Composite.Core.Application; - namespace Composite.Core.WebClient.Services.WampRouter { /// @@ -25,7 +23,6 @@ public static bool RegisterCallee(string realmName, IRpcService instance) /// /// Method for registering callee /// - /// /// /// public static bool RegisterCallee(IRpcService instance) @@ -42,9 +39,11 @@ public static bool RegisterCallee(IRpcService instance) /// /// /// - /// + /// + /// /// - public static bool RegisterPublisher(string realmName, IWampEventHandler eventObservable) + public static bool RegisterPublisher + (string realmName, IWampEventHandler eventObservable) { var wampRouter = ServiceLocator.GetRequiredService(); if (wampRouter == null) @@ -57,9 +56,11 @@ public static bool RegisterPublisher(string realmName, IWampEventHandler< /// Method for registering publisher /// /// - /// + /// + /// /// - public static bool RegisterPublisher(IWampEventHandler eventObservable) + public static bool RegisterPublisher + (IWampEventHandler eventObservable) { var wampRouter = ServiceLocator.GetRequiredService(); if (wampRouter == null) diff --git a/Website/ReleaseBuild.Web.config b/Website/ReleaseBuild.Web.config index bd7a751514..74e92a238a 100644 --- a/Website/ReleaseBuild.Web.config +++ b/Website/ReleaseBuild.Web.config @@ -92,4 +92,13 @@ + + + + + + + + + diff --git a/Website/WebSite.csproj b/Website/WebSite.csproj index 5355f8e330..787f739bc9 100644 --- a/Website/WebSite.csproj +++ b/Website/WebSite.csproj @@ -2630,8 +2630,7 @@ if not %25rce%25==1 exit %25rce%25 else exit 0 if not exist "$(ProjectDir)\bin\ExtraDllVersion" ( md "$(ProjectDir)\bin\ExtraDllVersion" - rem cd "$(SolutionDir)\Packages\System.Collections.Immutable.1.2.0\lib\netstandard1.0" - start /MIN copy "$(SolutionDir)\Packages\System.Collections.Immutable.1.2.0\lib\netstandard1.0\*.dll" "$(ProjectDir)\bin\ExtraDllVersion" + copy "$(ProjectDir)\..\Packages\System.Collections.Immutable.1.2.0\lib\netstandard1.0\*.dll" "$(ProjectDir)\bin\ExtraDllVersion" /y ) \ No newline at end of file