/// <summary> /// HandlersList management /// initialize the handlers list with the given handlers. /// </summary> /// <param name="handlers">handlers in config</param> private void SetHandlers(List <string> handlers) { App.Current.Dispatcher.Invoke((Action) delegate { foreach (string handler in handlers) { HandlersList.Add(handler); } }); }
public IChorusFileTypeHandler GetHandlerForPresentation(string path) { var handler = HandlersList.FirstOrDefault(h => h.CanPresentFile(path)); if (handler == null) { return(new DefaultFileTypeHandler()); } return(handler); }
public DataBase() { HandlerList = new HandlersList(); HandlerList.AddHandler(new GetUserHadler()); HandlerList.AddHandler(new OtherUserRequestHandler()); HandlerList.AddHandler(new LogOffHandler()); HandlerList.AddHandler(new FileListRequestHandler()); HandlerList.AddHandler(new FileGetRequestHandler()); HandlerList.AddHandler(new FileSaveRequestHandler()); HandlerList.AddHandler(new CreateDirectoryRequestHandler()); HandlerList.AddHandler(new CreateFileRequestHandler()); HandlerList.AddHandler(new DeleteFileRequestHandler()); }
/// <summary> /// Removes the handler. /// </summary> /// <param name="args">The arguments.</param> public void RemoveHandler(string [] args) { string[] directories = args[0].Split(';'); foreach (var dir in HandlersList) { if (!directories.Contains(dir)) { Dispatcher.CurrentDispatcher.Invoke((System.Action) delegate { HandlersList.Remove(dir); }); } } }
public void AddHandler( IRuntimeContextInstance eventSource, string eventName, IRuntimeContextInstance handlerTarget, string handlerMethod) { if (!(handlerTarget is ScriptDrivenObject handlerScript)) { throw RuntimeException.InvalidArgumentType("handlerTarget"); } if (!_registeredHandlers.TryGetValue(eventSource, out var handlers)) { handlers = new Dictionary <string, HandlersList>(); handlers[eventName] = new HandlersList(); _registeredHandlers[eventSource] = handlers; } handlers[eventName].Add(handlerScript, handlerMethod); }