public KernelInputSet(INTMinerRoot root, bool isUseJson) { _root = root; _isUseJson = isUseJson; VirtualRoot.Window <AddKernelInputCommand>("添加内核输入组", LogEnum.DevConsole, action: (message) => { InitOnece(); if (message == null || message.Input == null || message.Input.GetId() == Guid.Empty) { throw new ArgumentNullException(); } if (_dicById.ContainsKey(message.Input.GetId())) { return; } KernelInputData entity = new KernelInputData().Update(message.Input); _dicById.Add(entity.Id, entity); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(isUseJson); repository.Add(entity); VirtualRoot.Happened(new KernelInputAddedEvent(entity)); }).AddToCollection(root.ContextHandlers); VirtualRoot.Window <UpdateKernelInputCommand>("更新内核输入组", LogEnum.DevConsole, action: (message) => { InitOnece(); if (message == null || message.Input == null || message.Input.GetId() == Guid.Empty) { throw new ArgumentNullException(); } if (string.IsNullOrEmpty(message.Input.Name)) { throw new ValidationException("KernelInput name can't be null or empty"); } if (!_dicById.ContainsKey(message.Input.GetId())) { return; } KernelInputData entity = _dicById[message.Input.GetId()]; if (ReferenceEquals(entity, message.Input)) { return; } entity.Update(message.Input); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(isUseJson); repository.Update(entity); VirtualRoot.Happened(new KernelInputUpdatedEvent(entity)); }).AddToCollection(root.ContextHandlers); VirtualRoot.Window <RemoveKernelInputCommand>("移除内核输入组", LogEnum.DevConsole, action: (message) => { InitOnece(); if (message == null || message.EntityId == Guid.Empty) { throw new ArgumentNullException(); } if (!_dicById.ContainsKey(message.EntityId)) { return; } KernelInputData entity = _dicById[message.EntityId]; _dicById.Remove(entity.GetId()); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(isUseJson); repository.Remove(message.EntityId); VirtualRoot.Happened(new KernelInputRemovedEvent(entity)); }).AddToCollection(root.ContextHandlers); }
public KernelInputSet(IServerContext context) { context.AddCmdPath <AddKernelInputCommand>("添加内核输入组", LogEnum.DevConsole, action: (message) => { InitOnece(); if (message == null || message.Input == null || message.Input.GetId() == Guid.Empty) { throw new ArgumentNullException(); } if (_dicById.ContainsKey(message.Input.GetId())) { return; } KernelInputData entity = new KernelInputData().Update(message.Input); _dicById.Add(entity.Id, entity); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(); repository.Add(entity); VirtualRoot.RaiseEvent(new KernelInputAddedEvent(message.Id, entity)); }, location: this.GetType()); context.AddCmdPath <UpdateKernelInputCommand>("更新内核输入组", LogEnum.DevConsole, action: (message) => { InitOnece(); if (message == null || message.Input == null || message.Input.GetId() == Guid.Empty) { throw new ArgumentNullException(); } if (string.IsNullOrEmpty(message.Input.Name)) { throw new ValidationException($"{nameof(message.Input.Name)} can't be null or empty"); } if (!_dicById.ContainsKey(message.Input.GetId())) { return; } KernelInputData entity = _dicById[message.Input.GetId()]; if (ReferenceEquals(entity, message.Input)) { return; } entity.Update(message.Input); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(); repository.Update(entity); VirtualRoot.RaiseEvent(new KernelInputUpdatedEvent(message.Id, entity)); }, location: this.GetType()); context.AddCmdPath <RemoveKernelInputCommand>("移除内核输入组", LogEnum.DevConsole, action: (message) => { InitOnece(); if (message == null || message.EntityId == Guid.Empty) { throw new ArgumentNullException(); } if (!_dicById.ContainsKey(message.EntityId)) { return; } KernelInputData entity = _dicById[message.EntityId]; _dicById.Remove(entity.GetId()); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(); repository.Remove(message.EntityId); VirtualRoot.RaiseEvent(new KernelInputRemovedEvent(message.Id, entity)); }, location: this.GetType()); }
public KernelInputSet(INTMinerRoot root) { _root = root; Global.Access <AddKernelInputCommand>( Guid.Parse("62D0B345-26F8-42BA-B7CD-E547C2B298C9"), "添加内核输入组", LogEnum.Log, action: (message) => { InitOnece(); if (message == null || message.Input == null || message.Input.GetId() == Guid.Empty) { throw new ArgumentNullException(); } if (_dicById.ContainsKey(message.Input.GetId())) { return; } KernelInputData entity = new KernelInputData().Update(message.Input); _dicById.Add(entity.Id, entity); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(); repository.Add(entity); Global.Happened(new KernelInputAddedEvent(entity)); }); Global.Access <UpdateKernelInputCommand>( Guid.Parse("FED12C08-7BD7-4A8E-BD0B-A19075F4E8C4"), "更新内核输入组", LogEnum.Log, action: (message) => { InitOnece(); if (message == null || message.Input == null || message.Input.GetId() == Guid.Empty) { throw new ArgumentNullException(); } if (string.IsNullOrEmpty(message.Input.Name)) { throw new ValidationException("KernelInput name can't be null or empty"); } if (!_dicById.ContainsKey(message.Input.GetId())) { return; } KernelInputData entity = _dicById[message.Input.GetId()]; entity.Update(message.Input); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(); repository.Update(entity); Global.Happened(new KernelInputUpdatedEvent(entity)); }); Global.Access <RemoveKernelInputCommand>( Guid.Parse("2227F6B9-5A2A-42AB-8147-05E245E2872F"), "移除内核输入组", LogEnum.Log, action: (message) => { InitOnece(); if (message == null || message.EntityId == Guid.Empty) { throw new ArgumentNullException(); } if (!_dicById.ContainsKey(message.EntityId)) { return; } KernelInputData entity = _dicById[message.EntityId]; _dicById.Remove(entity.GetId()); var repository = NTMinerRoot.CreateServerRepository <KernelInputData>(); repository.Remove(message.EntityId); Global.Happened(new KernelInputRemovedEvent(entity)); }); Global.Logger.InfoDebugLine(this.GetType().FullName + "接入总线"); }