コード例 #1
0
        private async void Process(
            TmExporter tmExporter,
            TmImporter tmImporter,
            ModelBuilder modelBuilder,
            FragmentAligner fragmentAligner,
            BackgroundWorker bw)
        {
            try
            {
                var exportFullPath = await tmExporter.Export();

                await tmImporter.Import(exportFullPath);

                File.Delete(exportFullPath);

                modelBuilder.BuildTranslationModel();
                if (!bw.CancellationPending)
                {
                    fragmentAligner.AlignTranslationUnits();
                }
                else
                {
                    bw.ReportProgress(100, "");
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
コード例 #2
0
ファイル: Processor.cs プロジェクト: zebraone/Sdl-Community
        private async Task Process(TmExporter tmExporter, TmImporter tmImporter, ModelBuilder modelBuilder, FragmentAligner fragmentAligner)
        {
            try
            {
                tmExporter.OnProgressChanged      += tmExporter_OnProgressChanged;
                tmImporter.OnProgressChanged      += tmImporter_OnProgressChanged;
                modelBuilder.OnProgressChanged    += modelBuilder_OnProgressChanged;
                fragmentAligner.OnProgressChanged += fragmentAligner_OnProgressChanged;


                var exportFullPath = await tmExporter.Export();

                await tmImporter.Import(exportFullPath);

                File.Delete(exportFullPath);

                await modelBuilder.BuildTranslationModel();

                await fragmentAligner.AlignTranslationUnits();
            }
            finally
            {
                tmExporter.OnProgressChanged      -= tmExporter_OnProgressChanged;
                tmImporter.OnProgressChanged      -= tmImporter_OnProgressChanged;
                modelBuilder.OnProgressChanged    -= modelBuilder_OnProgressChanged;
                fragmentAligner.OnProgressChanged -= fragmentAligner_OnProgressChanged;
            }
        }