protected virtual Uri CreateCompensateReceiveEndpoint(IServiceConfigurator configurator) { Uri inputAddress = null; configurator.ReceiveEndpoint(_compensateQueueName, _compensateConsumerLimit, x => { inputAddress = x.InputAddress; x.CompensateActivityHost(_compensateActivityFactory); }); return(inputAddress); }
protected virtual void CreateExecuteReceiveEndpoint(IServiceConfigurator configurator, Uri compensateAddress) { if (_log.IsInfoEnabled) { _log.InfoFormat("Creating Execute {0} Receive Endpoint", _activityName); } configurator.ReceiveEndpoint(_executeQueueName, _executeConsumerLimit, x => { x.ExecuteActivityHost <TActivity, TArguments>(compensateAddress, _executeActivityFactory); }); }
public void InitializeHostedService([NotNull] IServiceConfigurator <DirectoryMonitor> cfg) { if (cfg == null) { throw new ArgumentNullException("cfg"); } cfg.ConstructUsing((d, name, channel) => new DirectoryMonitor(GetServicesDirectory(), channel)); cfg.WhenStarted(dm => dm.Start()); cfg.WhenStopped(dm => dm.Stop()); }
void ConfigureBusObservers(IServiceConfigurator configurator) { var observers = _lifetimeScope.ResolveOptional <IEnumerable <IBusObserver> >(); if (observers != null) { foreach (var observer in observers) { configurator.BusObserver(observer); } } }
void ConfigureBusObservers(IServiceConfigurator configurator) { var observers = _lifetimeScope.ResolveOptional<IEnumerable<IBusObserver>>(); if (observers != null) { foreach (var observer in observers) { _log.Info($"Configuring Bus Observer: {observer.GetType().GetTypeName()}"); configurator.BusObserver(observer); } } }
public ExecuteActivityService(IConfigurationProvider configuration, IServiceConfigurator serviceFactory, IActivityQueueNameProvider activityUriProvider, ExecuteActivityFactory <TArguments> executeActivityFactory) { _log = Logger.Get(GetType()); _serviceFactory = serviceFactory; _executeActivityFactory = executeActivityFactory; _activityName = GetActivityName(); _executeQueueName = activityUriProvider.GetExecuteActivityQueueName(_activityName); _executeConsumerLimit = GetExecuteConsumerLimit(configuration); }
public void InitializeHostedService(IServiceConfigurator <TheClock> cfg) { cfg.HowToBuildService(n => new TheClock()); cfg.WhenStarted(s => { XmlConfigurator.Configure(new FileInfo(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "clock.log4net.config"))); s.Start(); }); cfg.WhenStopped(s => { s.Stop(); LogManager.Shutdown(); }); }
void ConfigureBusObservers(IServiceConfigurator configurator) { var observers = _lifetimeScope.ResolveOptional <IEnumerable <IBusObserver> >(); if (observers != null) { foreach (var observer in observers) { _log.Info($"Configuring Bus Observer: {observer.GetType().GetTypeName()}"); configurator.BusObserver(observer); } } }
private static void ConfigureService <TService, TRegistry>(IServiceConfigurator <TService> service, Action <TService> start, Action <TService> stop) where TRegistry : Registry { var registry = FastActivator <TRegistry> .Create(ObjectFactory.Container); ObjectFactory.Configure(cfg => { cfg.For <IConfiguration>().Singleton().Use <Configuration>(); cfg.AddRegistry(registry); }); service.HowToBuildService(builder => ObjectFactory.GetInstance <TService>()); service.WhenStarted(start); service.WhenStopped(stop); }
private void ConfigureIoC(IServiceConfigurator configurator) { configurator.AddSingleton(typeof(IMongoClient), IServiceProvider => new MongoClient(_connectionString)); configurator.AddSingleton <IInitializeDbRepository, MongoDbInitializeDbRepository>(); configurator.AddSingleton <INamespaceRepository, MongoDbNamespaceRepository>(); configurator.AddSingleton <IEnvironmentRepository, MongoDbEnvironmentRepository>(); configurator.AddSingleton <IFeatureGroupRepository, MongoDbFeatureGroupRepository>(); configurator.AddSingleton <IFeatureToggleRepository, MongoDbFeatureToggleRepository>(); configurator.AddSingleton <ICommandHandler <InitializeTogglOnCommand, VoidResult>, InitializeTogglOnCommandHandler>(); configurator.AddSingleton <ICommandHandler <IncrementUsageStatisticsCommand, VoidResult>, IncrementUsageStatisticsCommandHandler>(); configurator.AddSingleton <IQueryHandler <GetAllFeatureTogglesQuery, IList <FeatureToggleDto> >, GetAllFeatureTogglesQueryHandler>(); configurator.AddSingleton <IQueryHandler <GetAllFeatureGroupsQuery, IList <FeatureGroupDto> >, GetAllFeatureGroupsQueryHandler>(); }
protected virtual Uri CreateCompensateReceiveEndpoint(IServiceConfigurator configurator) { if (_log.IsInfoEnabled) { _log.InfoFormat("Creating Compensate {0} Receive Endpoint", _activityName); } Uri inputAddress = null; configurator.ReceiveEndpoint(_compensateQueueName, _compensateConsumerLimit, x => { inputAddress = x.InputAddress; x.CompensateActivityHost <TActivity, TLog>(_compensateActivityFactory); }); return(inputAddress); }
private static void ConfigureHealthService(IServiceConfigurator<HealthService> configurator) { configurator.CreateServiceLocator(() => { var container = new DefaultMassTransitContainer(); container.AddComponent<HealthService>(typeof (HealthService).Name); container.AddComponent("sagaRepository", typeof (ISagaRepository<>), typeof (InMemorySagaRepository<>)); var endpointFactory = EndpointFactoryConfigurator.New(x => { // the default x.SetObjectBuilder(container.Resolve<IObjectBuilder>()); x.RegisterTransport<MsmqEndpoint>(); }); container.Kernel.AddComponentInstance("endpointFactory", typeof (IEndpointFactory), endpointFactory); var bus = ServiceBusConfigurator.New(x => { x.SetObjectBuilder(container.Resolve<IObjectBuilder>()); x.ReceiveFrom("msmq://localhost/mt_health"); x.ConfigureService<SubscriptionClientConfigurator>(client => { // need to add the ability to read from configuratino settings somehow client.SetSubscriptionServiceEndpoint("msmq://localhost/mt_subscriptions"); }); }); container.Kernel.AddComponentInstance("bus", typeof (IServiceBus), bus); return container.Resolve<IObjectBuilder>(); }); configurator.WhenStarted(service => { service.Start(); }); configurator.WhenStopped(service => { service.Stop(); service.Dispose(); }); }
private static void ConfigureHealthService(IServiceConfigurator <HealthService> configurator) { configurator.CreateServiceLocator(() => { var container = new DefaultMassTransitContainer(); container.AddComponent <HealthService>(typeof(HealthService).Name); container.AddComponent("sagaRepository", typeof(ISagaRepository <>), typeof(InMemorySagaRepository <>)); var endpointFactory = EndpointFactoryConfigurator.New(x => { // the default x.SetObjectBuilder(container.Resolve <IObjectBuilder>()); x.RegisterTransport <MsmqEndpoint>(); }); container.Kernel.AddComponentInstance("endpointFactory", typeof(IEndpointFactory), endpointFactory); var bus = ServiceBusConfigurator.New(x => { x.SetObjectBuilder(container.Resolve <IObjectBuilder>()); x.ReceiveFrom("msmq://localhost/mt_health"); x.ConfigureService <SubscriptionClientConfigurator>(client => { // need to add the ability to read from configuratino settings somehow client.SetSubscriptionServiceEndpoint("msmq://localhost/mt_subscriptions"); }); }); container.Kernel.AddComponentInstance("bus", typeof(IServiceBus), bus); return(container.Resolve <IObjectBuilder>()); }); configurator.WhenStarted(service => { service.Start(); }); configurator.WhenStopped(service => { service.Stop(); service.Dispose(); }); }
void IBusServiceConfigurator.Configure(IServiceConfigurator configurator) { _log.Info($"Configuring Service: {_serviceSpecification.GetType().GetTypeName()}"); _serviceSpecification.Configure(configurator); foreach (var specification in _endpointSpecifications) { string queueName; int consumerLimit; GetEndpointSettings(specification, out queueName, out consumerLimit); _log.Info($"Configuring Endpoint: {specification.GetType().GetTypeName()} (queue-name: {queueName}, consumer-limit: {consumerLimit})"); configurator.ReceiveEndpoint(queueName, consumerLimit, x => { specification.Configure(x); }); } }
private static void ConfigureSubscriptionService(IServiceConfigurator<SubscriptionService> configurator) { configurator.CreateServiceLocator(() => { var container = new DefaultMassTransitContainer(); container.AddComponent("sagaRepository", typeof (ISagaRepository<>), typeof (InMemorySagaRepository<>)); container.AddComponent<ISubscriptionRepository, InMemorySubscriptionRepository>(); container.AddComponent<SubscriptionService, SubscriptionService>(typeof (SubscriptionService).Name); var endpointFactory = EndpointFactoryConfigurator.New(x => { // the default x.SetObjectBuilder(container.Resolve<IObjectBuilder>()); x.RegisterTransport<MsmqEndpoint>(); }); container.Kernel.AddComponentInstance("endpointFactory", typeof (IEndpointFactory), endpointFactory); var bus = ServiceBusConfigurator.New(servicesBus => { servicesBus.SetObjectBuilder(container.Resolve<IObjectBuilder>()); servicesBus.ReceiveFrom("msmq://localhost/mt_subscriptions"); servicesBus.SetConcurrentConsumerLimit(1); }); container.Kernel.AddComponentInstance("bus", typeof (IServiceBus), bus); return container.ObjectBuilder; }); configurator.WhenStarted(service => service.Start()); configurator.WhenStopped(service => { service.Stop(); service.Dispose(); }); }
private static void ConfigureSubscriptionService(IServiceConfigurator <SubscriptionService> configurator) { configurator.CreateServiceLocator(() => { var container = new DefaultMassTransitContainer(); container.AddComponent("sagaRepository", typeof(ISagaRepository <>), typeof(InMemorySagaRepository <>)); container.AddComponent <ISubscriptionRepository, InMemorySubscriptionRepository>(); container.AddComponent <SubscriptionService, SubscriptionService>(typeof(SubscriptionService).Name); var endpointFactory = EndpointFactoryConfigurator.New(x => { // the default x.SetObjectBuilder(container.Resolve <IObjectBuilder>()); x.RegisterTransport <MsmqEndpoint>(); }); container.Kernel.AddComponentInstance("endpointFactory", typeof(IEndpointFactory), endpointFactory); var bus = ServiceBusConfigurator.New(servicesBus => { servicesBus.SetObjectBuilder(container.Resolve <IObjectBuilder>()); servicesBus.ReceiveFrom("msmq://localhost/mt_subscriptions"); servicesBus.SetConcurrentConsumerLimit(1); }); container.Kernel.AddComponentInstance("bus", typeof(IServiceBus), bus); return(container.ObjectBuilder); }); configurator.WhenStarted(service => service.Start()); configurator.WhenStopped(service => { service.Stop(); service.Dispose(); }); }
private static void ConfigureService <TService, TRegistry>(IServiceConfigurator <TService> service, Action <TService> start, Action <TService> stop) where TRegistry : Registry { var container = new Container(x => { x.For <IConfiguration>() .Singleton() .Add <Configuration>(); x.For <TService>() .Singleton() .Use <TService>(); }); TRegistry registry = FastActivator <TRegistry> .Create(container); container.Configure(x => x.AddRegistry(registry)); service.HowToBuildService(builder => container.GetInstance <TService>()); service.WhenStarted(start); service.WhenStopped(stop); }
public TogglOnBuilder(IServiceConfigurator services) { Services = services; }
public void Configure(IServiceConfigurator configurator) { configurator.UseRetry(Retry.None); }
public void Configure(IServiceConfigurator configurator) { ConfigureDb(); ConfigureIoC(configurator); }
public void Configure(IServiceConfigurator configurator) { _configureMessageScheduler.Configurator = configurator; configurator.UseRetry(r => r.Interval(5, TimeSpan.FromMilliseconds(100))); }
public void Configure(IServiceConfigurator configurator) { configurator.UseRetry(Retry.Interval(5, TimeSpan.FromMilliseconds(100))); }
public void InitializeHostedService(IServiceConfigurator <RRServer> cfg) { cfg.HowToBuildService(s => new RRServer()); cfg.WhenStarted(s => s.Start()); cfg.WhenStopped(s => s.Stop()); }
public void InitializeHostedService(IServiceConfigurator <string> cfg) { throw new NotImplementedException(); }
public TogglOnClientOptions(IServiceConfigurator services) { _services = services; }
public ServiceInterception(IServiceConfigurator configuration) { this.configuration = configuration; }
public virtual void Configure(IServiceConfigurator configurator) { var compensateAddress = CreateCompensateReceiveEndpoint(configurator); CreateExecuteReceiveEndpoint(configurator, compensateAddress); }
/// <summary> /// Configures the service collection using the given <see cref="IServiceConfigurator"/>. /// </summary> /// <param name="services">The service collection</param> /// <param name="configurator">The service configurator</param> /// <returns>The service collection after changes</returns> /// <exception cref="ArgumentNullException"></exception> public static IServiceCollection ConfigureUsing(this IServiceCollection services, IServiceConfigurator configurator) { if (services == null) { throw new ArgumentNullException(nameof(services)); } if (configurator == null) { throw new ArgumentNullException(nameof(configurator)); } configurator.Configure(services); return(services); }
public void InitializeHostedService(IServiceConfigurator <BottleService> cfg) { cfg.HowToBuildService(name => new BottleService()); cfg.WhenStarted(s => s.Start()); cfg.WhenStopped(s => s.Stop()); }
public void Configure(IServiceConfigurator configurator) { // configuration for the entire bus can be specified here // such as configurator.UseRetry(Retry.Interval(5, TimeSpan.FromMilliseconds(100))); }
public void Configure(IServiceConfigurator configurator) { }
public void Configure(IServiceConfigurator configurator) { _configureMessageScheduler.Configurator = configurator; configurator.UseRetry(Retry.Interval(5, TimeSpan.FromMilliseconds(100))); }
public void Configure(IServiceConfigurator configurator) { // YAY! }
public abstract void InitializeHostedService(IServiceConfigurator <T> cfg);