/// <summary> /// Entrypoint of Electron BoSSSpad, i.e. the electron-edge-js package /// </summary> /// <param name="input"> /// Path to the ElectronWorksheet.dll, ElectronBoSSSpad.exe and affiliated DLLs /// </param> /// <returns></returns> public async Task <object> Invoke(object input) { worksheet = new ElectronWorksheet(input.ToString()); return(new{ runCommand = (Func <object, Task <object> >)(async(i) => { runCommandManager = new CancellationTokenSource(); return await Task.Run(() => ElectronInterface.RunCommand(i), runCommandManager.Token); }), save = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.Save(i)); }), load = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.Load(i)); }), getAutoCompleteSuggestions = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.GetAutoCompleteSuggestions(i)); }), forceAbort = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.ForceAbort()); }) }); }
public async Task <object> Invoke(object input) { worksheet = ElectronWorksheet.Instance; return(new{ runCommand = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.RunCommand(i)); }), save = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.Save(i)); }), load = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.Load(i)); }), getAutoCompleteSuggestions = (Func <object, Task <object> >)(async(i) => { return await Task.Run(() => ElectronInterface.GetAutoCompleteSuggestions(i)); }) }); }