2013-05-05 21:24:33 +00:00
|
|
|
|
using System;
|
|
|
|
|
using Microsoft.AspNet.SignalR;
|
2013-05-10 23:53:50 +00:00
|
|
|
|
using NzbDrone.Common.Composition;
|
2013-05-05 21:24:33 +00:00
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Api.SignalR
|
|
|
|
|
{
|
|
|
|
|
public class SignalrDependencyResolver : DefaultDependencyResolver
|
|
|
|
|
{
|
2013-05-10 23:53:50 +00:00
|
|
|
|
private readonly IContainer _container;
|
2013-05-05 21:24:33 +00:00
|
|
|
|
|
2013-05-10 23:53:50 +00:00
|
|
|
|
public static void Register(IContainer container)
|
2013-05-05 21:24:33 +00:00
|
|
|
|
{
|
|
|
|
|
GlobalHost.DependencyResolver = new SignalrDependencyResolver(container);
|
|
|
|
|
}
|
|
|
|
|
|
2013-05-10 23:53:50 +00:00
|
|
|
|
private SignalrDependencyResolver(IContainer container)
|
2013-05-05 21:24:33 +00:00
|
|
|
|
{
|
|
|
|
|
_container = container;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override object GetService(Type serviceType)
|
|
|
|
|
{
|
2013-05-10 23:53:50 +00:00
|
|
|
|
if (_container.IsTypeRegistered(serviceType))
|
|
|
|
|
{
|
|
|
|
|
return _container.Resolve(serviceType);
|
|
|
|
|
}
|
2013-05-05 21:24:33 +00:00
|
|
|
|
|
2013-05-10 23:53:50 +00:00
|
|
|
|
return base.GetService(serviceType);
|
2013-05-05 21:24:33 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|