node-main.ts
1.15 KB
import { ServiceLocator } from './service-locator';
import { NodeFileHandler } from './file-handler/node-file-handler';
export default class Bsync {
static NodeFileHandler = NodeFileHandler;
static ServiceLocator = ServiceLocator;
static configIpcMain(ipcMain: any, basePath: string) {
ipcMain.on('bsync-download', (event, args) => {
let nodeFileHander = new NodeFileHandler();
nodeFileHander
.on('progress', (progress:number) => { event.sender.send('bsync-download-progress', progress); })
.once('error', (error) => { nodeFileHander.removeAllListeners(); event.sender.send('bsync-download-error', error); })
.once('complete', () => { nodeFileHander.removeAllListeners(); event.sender.send('bsync-download-complete'); })
.download(args.source, basePath + "/" + args.target);
});
ipcMain.on('bsync-cleanup', (event, args) => {
let nodeFileHandler = new NodeFileHandler();
nodeFileHandler.cleanup(args.files, basePath);
event.sender.send('bsync-cleanup-complete');
});
}
}