public BasePlugin(IServiceProvider serviceProvider) { _database = serviceProvider.CreateScope().ServiceProvider.GetRequiredService <Database>(); _identityManager = serviceProvider.GetRequiredService <IdentityManager>(); _config = serviceProvider.GetRequiredService <InternalConfiguration>(); _discordAPI = serviceProvider.GetRequiredService <DiscordAPIInterface>(); _discordBot = serviceProvider.GetRequiredService <DiscordBot>(); _scheduler = serviceProvider.GetRequiredService <Scheduler>(); _eventHandler = serviceProvider.GetRequiredService <InternalEventHandler>(); _serviceProvider = serviceProvider; }
public BaseRepository(IServiceProvider serviceProvider) { Logger = serviceProvider.GetRequiredService <ILogger <T> >(); Database = serviceProvider.GetRequiredService <Database>(); DiscordAPI = serviceProvider.GetRequiredService <DiscordAPIInterface>(); _config = serviceProvider.GetRequiredService <InternalConfiguration>(); _identityManager = serviceProvider.GetRequiredService <IdentityManager>(); _discordAnnouncer = serviceProvider.GetRequiredService <DiscordAnnouncer>(); _filesHandler = serviceProvider.GetRequiredService <FilesHandler>(); _punishmentHandler = serviceProvider.GetRequiredService <Punishments>(); _scheduler = serviceProvider.GetRequiredService <Scheduler>(); _translator = serviceProvider.GetRequiredService <Translator>(); _discordBot = serviceProvider.GetRequiredService <DiscordBot>(); _client = serviceProvider.GetRequiredService <DiscordSocketClient>(); _eventHandler = serviceProvider.GetRequiredService <InternalEventHandler>(); _serviceProvider = serviceProvider; }
/// <summary> /// Registers the event handler. /// </summary> /// <param name="handler">The handler.</param> public void RegisterEventHandler(AsyncEventHandler handler) { AsyncServiceException.ThrowIfNull(handler, "handler"); var poolHandler = new PoolHandler(this, handler, _errorHandler); _handler = poolHandler.EventHandler; _startThreadHandler = poolHandler.StartThread; }
/// <summary> /// Initializes a new instance of the <see cref="QueueManager"/> class. /// </summary> /// <param name="instanceName">Name of the instance.</param> /// <param name="operationsFactory">The operations factory.</param> /// <param name="counters">The counters.</param> /// <param name="config">The configuration.</param> /// <param name="dataAccessFactory">The data access factory.</param> /// <param name="errorHandler">The error handler.</param> /// <param name="eventLog">The event log.</param> public QueueManager(string instanceName, IServiceOperationsFactory operationsFactory, IQueuePerformanceCounters counters, IQueueConfiguration config, IQueueDataAccessFactory dataAccessFactory, ErrorHandler errorHandler, IMyEventLog eventLog) { _handler = null; _timers = new TimerBasedExecutionEngine[0]; _specialTransitionsLock = new object(); _specialTransitions = new Dictionary<Guid, AsyncHandlerEarlyExitRequest>(); InstanceName = DecorateInstanceName(instanceName); Counters = counters; Configuration = config; ShuttingDown = false; _shutdownEvent = null; _disposed = false; _dataAccessFactory = dataAccessFactory; _errorHandler = errorHandler; EventLog = eventLog; OperationsFactory = operationsFactory; }
public Menu(ref InternalEventHandler p) { ieHandler = p; }