/// <summary> /// Add a service which will crawl all modules for top level main menu pages. /// </summary> public static ActionRepositories CreateActionRepositories(this IServiceCollection services) { var reps = new ActionRepositories(); services.AddSingleton(reps); return(reps); }
public void CallMethodTest() { var instance = new MethodTest(); var ioc = new Ioc() .Add(typeof(MethodTest), () => instance) ; var repository = new ActionRepositories <ActionBusContext>() .Inject(ioc) ; repository.Register(typeof(MethodTest)); var actionC = repository.Execute(new ActionOrder() { Name = "c1.run1", PushedAt = DateTimeOffset.Now, Uuid = Guid.NewGuid().ToString(), }.Argument("arg1", "test2") .Argument("arg2", "2") .Argument("arg3", "2") .Argument("arg4", "2") .Argument("arg5", "2") .Argument("arg6", "2") .Argument("arg7", "true") ); Assert.AreEqual(actionC.Result, null); }
/// <summary> /// Add a service which will crawl all modules for top level main menu pages. /// </summary> public static ActionRepositories CreateActionRepositories <TContext>(this IServiceCollection services) where TContext : ActionBusContext, new() { var reps = new ActionRepositories <TContext>() { }; services.AddSingleton(reps); return(reps); }
public static IServiceProvider RegisterListeners(this IServiceProvider serviceProvider) { SubscriptionInstances subscriptions = serviceProvider.GetService(typeof(SubscriptionInstances)) as SubscriptionInstances; IFactoryBroker brokers = serviceProvider.GetService(typeof(IFactoryBroker)) as IFactoryBroker; IConfiguration configuration = serviceProvider.GetService(typeof(IConfiguration)) as IConfiguration; ActionRepositories actionRepositories = serviceProvider.GetService(typeof(ActionRepositories)) as ActionRepositories; var subscriberName = configuration.GetValue <string>("listener"); Subcription1 sub = new Subcription1("Actions", brokers, subscriberName, actionRepositories) { _acknowledgeQueue = brokers.CreatePublisher(configuration.GetValue <string>("AcknowledgeQueue")), _deadQueue = brokers.CreatePublisher(configuration.GetValue <string>("DeadQueue")), }; subscriptions.AddSubscription(sub); return(serviceProvider); }
public Subcription1(string name, IFactoryBroker brokers, string subscriberName, ActionRepositories actionRepositories) : base(name) { _actionRepositories = actionRepositories; Subscription = brokers.CreateSubscription(subscriberName, context => Callback(context)); }