public static LotteryDispatcherBuilder UseSuicaiExecuteDispatcher(this LotteryDispatcherBuilder lotteryDispatcherBuilder, DispatcherConfiguration dispatcherConfiguration) { lotteryDispatcherBuilder.Services.AddSingleton <IQueryingDispatcher, QueryingExecuteDispatcher>(); lotteryDispatcherBuilder.Services.AddSingleton <IOrderingDispatcher, OrderingExecuteDispatcher>(); lotteryDispatcherBuilder.Services.AddSingleton(dispatcherConfiguration); return(lotteryDispatcherBuilder); }
public static FightBuilder ConfigureLotteryDispatcher(this FightBuilder fightBuilder, Action <LotteryDispatcherBuilder> setupAction) { if (fightBuilder == null) { throw new ArgumentNullException(nameof(fightBuilder)); } if (setupAction == null) { throw new ArgumentNullException(nameof(setupAction)); } var builder = new LotteryDispatcherBuilder(fightBuilder.Services); setupAction?.Invoke(builder); builder.Build(); return(fightBuilder); }