private void InitializeEventHandlers() { agentEventHandler = new AgentEventHandler(logger, this, tenantIOService); tenantEventHandler = new TenantEventHandler(logger, this, tenantIOService); producerEventHandler = new ProducerEventHandler(logger, this, producerIOService); consumerEventHandler = new ConsumerEventHandler(logger, this, consumerIOService, messageIOService); messageEventHandler = new MessageEventHandler(logger, this, messageIOService); }
private void AddHandlerButtonClick(object sender, EventArgs e) { if (null != ConfigurationTreeView.SelectedNode) { if (null != ConfigurationTreeView.SelectedNode.Tag) { IHandler handler = (IHandler) Activator.CreateInstance(AvailableHandlersTreeView.SelectedNode.Tag.GetType()); if (ConfigurationTreeView.SelectedNode.Tag is IAgentEventHandler) { IAgentEventHandler eventHandler = (IAgentEventHandler)ConfigurationTreeView.SelectedNode.Tag; if (eventHandler.Handlers.IsReadOnly) { eventHandler.Handlers = new List <IHandler>(eventHandler.Handlers); } eventHandler.Handlers.Add(handler); ConfigurationTreeView.SelectedNode.Nodes.Add(TreeNodeMapper.MapHandler(handler)); } else if (ConfigurationTreeView.SelectedNode.Tag is IList <IAgentEventHandler> ) { IList <IAgentEventHandler> eventHandlers = (IList <IAgentEventHandler>)ConfigurationTreeView.SelectedNode.Tag; if (eventHandlers.IsReadOnly) { eventHandlers = new List <IAgentEventHandler>(eventHandlers); ConfigurationTreeView.SelectedNode.Tag = eventHandlers; } IAgentEventHandler eventHandler = new AgentEventHandler(); eventHandler.Handlers.Add(handler); eventHandlers.Add(eventHandler); ConfigurationTreeView.SelectedNode.Nodes.Add(TreeNodeMapper.MapAgentEventHandler(eventHandler)); } else if (ConfigurationTreeView.SelectedNode.Tag is IHandler) { IHandler parentHandler = (IHandler)ConfigurationTreeView.SelectedNode.Tag; if (parentHandler.Handlers.IsReadOnly) { parentHandler.Handlers = new List <IHandler>(parentHandler.Handlers); } parentHandler.Handlers.Add(handler); ConfigurationTreeView.SelectedNode.Nodes.Add(TreeNodeMapper.MapHandler(handler)); } } } }