Configuring an endpoint to use Spring
var endpointConfiguration = new EndpointConfiguration("Samples.Spring");
var applicationContext = new GenericApplicationContext();
applicationContext.ObjectFactory
.RegisterSingleton("MyService", new MyService());
endpointConfiguration.UseContainer<SpringBuilder>(
customizations: customizations =>
{
customizations.ExistingApplicationContext(applicationContext);
});
Injecting the dependency in the handler
public class MyHandler :
IHandleMessages<MyMessage>
{
MyService myService;
public MyHandler(MyService myService)
{
this.myService = myService;
}
public Task Handle(MyMessage message, IMessageHandlerContext context)
{
myService.WriteHello();
return Task.CompletedTask;
}
}