Skip to content

Instantly share code, notes, and snippets.

@andreasohlund
Created June 4, 2012 20:45
Show Gist options
  • Select an option

  • Save andreasohlund/2870774 to your computer and use it in GitHub Desktop.

Select an option

Save andreasohlund/2870774 to your computer and use it in GitHub Desktop.
using System;
using System.Collections.Generic;
using System.Web.Http.Dependencies;
using NServiceBus;
using NServiceBus.ObjectBuilder;
public class NServiceBusDependencyResolverAdapter : IDependencyResolver
{
readonly IBuilder builder;
public NServiceBusDependencyResolverAdapter(IBuilder builder)
{
this.builder = builder;
}
public object GetService(Type serviceType)
{
if (Configure.Instance.Configurer.HasComponent(serviceType))
return builder.Build(serviceType);
else
return null;
}
public IEnumerable<object> GetServices(Type serviceType)
{
return builder.BuildAll(serviceType);
}
public IDependencyScope BeginScope()
{
return new NServiceBusDependencyResolverAdapter(builder.CreateChildBuilder());
}
public void Dispose()
{
builder.Dispose();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment