public override async Task <int> Handle(CArgument argument, ParserContext parser, PipelineContext pipeline, CancellationToken cancellationToken)
        {
            IWorkspace workspace = pipeline.Services.GetWorkspace();

            if (argument.Delete)
            {
                await workspace.Clear();
            }
            else
            {
                await workspace.Initialize();

                await workspace.Templates.SetValue("c", Resources.Programming.FileTemplates.C);

                await workspace.Templates.SetValue("python", Resources.Programming.FileTemplates.Python);

                await workspace.Templates.SetValue("cpp", Resources.Programming.FileTemplates.Cpp);

                await workspace.Templates.SetValue("csharp", Resources.Programming.FileTemplates.CSharp);

                await workspace.Templates.SetValue("python", Resources.Programming.FileTemplates.Python);

                await workspace.Templates.SetValue("fsharp", Resources.Programming.FileTemplates.FSharp);

                await workspace.Templates.SetValue("go", Resources.Programming.FileTemplates.Go);

                await workspace.Templates.SetValue("java", Resources.Programming.FileTemplates.Java);

                await workspace.Templates.SetValue("dir", new Package <ITemplate>(FileBasedCommandLineOperation.GetDirectoryTemplate()));

                await workspace.Operations.SetValue("c", Resources.Programming.FileOperations.C);

                await workspace.Operations.SetValue("python", Resources.Programming.FileOperations.Python);

                await workspace.Operations.SetValue("cpp", Resources.Programming.FileOperations.Cpp);

                await workspace.Operations.SetValue("python", Resources.Programming.FileOperations.Python);

                await workspace.Operations.SetValue("go", Resources.Programming.FileOperations.Go);

                await workspace.Operations.SetValue("ruby", Resources.Programming.FileOperations.Ruby);

                await workspace.Operations.SetValue("javascript", Resources.Programming.FileOperations.JavaScript);

                await workspace.Operations.SetValue("dir", new Package <IOperation>(new FileBasedCommandLineOperation()));
            }
            return(0);
        }
Пример #2
0
        private async Task TestManager(IWorkspace manager)
        {
            await manager.Initialize();

            await manager.Clear();
        }
Пример #3
0
 public async Task Clear()
 {
     await _workspace.Clear();
 }