/// <summary> /// Adds Twino connector with configuration /// </summary> public static IServiceCollection AddTwinoBus(this IServiceCollection services, Action <TwinoConnectorBuilder> config) { TwinoConnectorBuilder builder = new TwinoConnectorBuilder(services); config(builder); TmqStickyConnector connector = builder.Build(); AddConsumersMicrosoftDI(services, connector, builder); services.AddSingleton(connector); services.AddSingleton(connector.Bus); services.AddSingleton(connector.Bus.Direct); services.AddSingleton(connector.Bus.Queue); services.AddSingleton(connector.Bus.Route); return(services); }
/// <summary> /// Adds Twino connector with configuration /// </summary> public static IServiceCollection AddTwinoBus <TIdentifier>(this IServiceCollection services, Action <TwinoConnectorBuilder> config) { TwinoConnectorBuilder builder = new TwinoConnectorBuilder(services); config(builder); TmqStickyConnector <TIdentifier> connector = builder.Build <TIdentifier>(); AddConsumersMicrosoftDI(services, connector, builder); services.AddSingleton(connector); TwinoBus <TIdentifier> bus = (TwinoBus <TIdentifier>)connector.Bus; services.AddSingleton <ITwinoBus <TIdentifier> >(bus); services.AddSingleton <ITwinoDirectBus <TIdentifier> >((TwinoDirectBus <TIdentifier>)bus.Direct); services.AddSingleton <ITwinoQueueBus <TIdentifier> >((TwinoQueueBus <TIdentifier>)bus.Queue); services.AddSingleton <ITwinoRouteBus <TIdentifier> >((TwinoRouteBus <TIdentifier>)bus.Route); return(services); }