@ -1,7 +1,6 @@
using NzbDrone.Api.REST ;
using NzbDrone.Core.Datastore ;
using NzbDrone.Core.Datastore.Events ;
using NzbDrone.Core.Messaging.Commands ;
using NzbDrone.Core.Messaging.Events ;
using NzbDrone.SignalR ;
@ -11,17 +10,17 @@ namespace NzbDrone.Api
where TResource : RestResource , new ( )
where TModel : ModelBase
{
private readonly I CommandExecutor _commandExecuto r;
private readonly I BroadcastSignalRMessage _signalRBroadcaste r;
protected NzbDroneRestModuleWithSignalR ( I CommandExecutor commandExecuto r)
protected NzbDroneRestModuleWithSignalR ( I BroadcastSignalRMessage signalRBroadcaste r)
{
_ commandExecutor = commandExecuto r;
_ signalRBroadcaster = signalRBroadcaste r;
}
protected NzbDroneRestModuleWithSignalR ( I CommandExecutor commandExecuto r, string resource )
protected NzbDroneRestModuleWithSignalR ( I BroadcastSignalRMessage signalRBroadcaste r, string resource )
: base ( resource )
{
_ commandExecutor = commandExecuto r;
_ signalRBroadcaster = signalRBroadcaste r;
}
public void Handle ( ModelEvent < TModel > message )
@ -34,30 +33,25 @@ namespace NzbDrone.Api
BroadcastResourceChange ( message . Action , message . Model . Id ) ;
}
protected void BroadcastResourceChange ( ModelAction action , TResource resource )
{
var signalRMessage = new SignalRMessage
{
Name = Resource ,
Body = new ResourceChangeMessage < TResource > ( resource , action )
} ;
_commandExecutor . PublishCommand ( new BroadcastSignalRMessage ( signalRMessage ) ) ;
}
protected void BroadcastResourceChange ( ModelAction action , int id )
{
var resource = GetResourceById ( id ) ;
BroadcastResourceChange ( action , resource ) ;
}
protected void BroadcastResourceChange ( ModelAction action , TResource resource )
{
var signalRMessage = new SignalRMessage
{
Name = Resource ,
Body = new ResourceChangeMessage < TResource > ( resource , action )
} ;
_ commandExecutor. PublishCommand ( new BroadcastSignalRMessage ( signalRMessage ) ) ;
_ signalRBroadcaster. BroadcastMessage ( signalRMessage ) ;
}
protected void BroadcastResourceChange ( ModelAction action )
{
var signalRMessage = new SignalRMessage
@ -66,7 +60,7 @@ namespace NzbDrone.Api
Body = new ResourceChangeMessage < TResource > ( action )
} ;
_ commandExecutor. PublishCommand ( new BroadcastSignalRMessage ( signalRMessage ) ) ;
_ signalRBroadcaster. BroadcastMessage ( signalRMessage ) ;
}
}
}