コード例 #1
0
 public SdlxliffReader(SegmentBuilder segmentBuilder, ExportOptions exportOptions, List <AnalysisBand> analysisBands)
 {
     _segmentBuilder             = segmentBuilder;
     _exportOptions              = exportOptions;
     _analysisBands              = analysisBands;
     ConfirmationStatistics      = new ConfirmationStatistics();
     TranslationOriginStatistics = new TranslationOriginStatistics();
 }
コード例 #2
0
 public SdlxliffWriter(SegmentBuilder segmentBuilder,
                       ImportOptions importOptions, List <AnalysisBand> analysisBands)
 {
     _segmentBuilder             = segmentBuilder;
     _importOptions              = importOptions;
     _analysisBands              = analysisBands;
     ConfirmationStatistics      = new ConfirmationStatistics();
     TranslationOriginStatistics = new TranslationOriginStatistics();
 }
コード例 #3
0
        private TranslationOriginStatistics GetTotalTranslationOriginStatistics(IEnumerable <ProjectFile> projectFiles, Enumerators.Action action)
        {
            var statistics = new TranslationOriginStatistics();

            foreach (var projectFile in projectFiles)
            {
                if (projectFile.TranslationOriginStatistics?.WordCounts != null)
                {
                    foreach (var wordCount in projectFile.TranslationOriginStatistics?.WordCounts?.Processed)
                    {
                        var totalWordCount = statistics.WordCounts.Processed.FirstOrDefault(a =>
                                                                                            a.Category == wordCount.Category);
                        if (totalWordCount != null)
                        {
                            UpdateTotalWordCount(wordCount, totalWordCount);
                        }
                        else
                        {
                            statistics.WordCounts.Processed.Add(wordCount);
                        }
                    }

                    foreach (var wordCount in projectFile.TranslationOriginStatistics?.WordCounts?.Excluded)
                    {
                        var totalWordCount = statistics.WordCounts.Excluded.FirstOrDefault(a =>
                                                                                           a.Category == wordCount.Category);
                        if (totalWordCount != null)
                        {
                            UpdateTotalWordCount(wordCount, totalWordCount);
                        }
                        else
                        {
                            statistics.WordCounts.Excluded.Add(wordCount);
                        }
                    }

                    if (action == Enumerators.Action.Import)
                    {
                        foreach (var wordCount in projectFile.TranslationOriginStatistics?.WordCounts?.NotProcessed)
                        {
                            var totalWordCount = statistics.WordCounts.NotProcessed.FirstOrDefault(a =>
                                                                                                   a.Category == wordCount.Category);
                            if (totalWordCount != null)
                            {
                                UpdateTotalWordCount(wordCount, totalWordCount);
                            }
                            else
                            {
                                statistics.WordCounts.NotProcessed.Add(wordCount);
                            }
                        }
                    }
                }
            }

            return(statistics);
        }
コード例 #4
0
        public ContentWriter(Xliff xliff, SegmentBuilder segmentBuilder,
                             ImportOptions importOptions, List <AnalysisBand> analysisBands)
        {
            _xliff          = xliff;
            _segmentBuilder = segmentBuilder;
            _importOptions  = importOptions;
            _analysisBands  = analysisBands;

            Comments = _xliff.DocInfo.Comments;
            ConfirmationStatistics      = new ConfirmationStatistics();
            TranslationOriginStatistics = new TranslationOriginStatistics();
        }
コード例 #5
0
ファイル: ContentWriter.cs プロジェクト: murxh/Sdl-Community
        public ContentWriter(ImportOptions importOptions, List <AnalysisBand> analysisBands, string updatedFilePath, string targetLanguage,
                             SegmentBuilder segmentBuilder)
        {
            _importOptions   = importOptions;
            _analysisBands   = analysisBands;
            _updatedFilePath = updatedFilePath;
            _targetLanguage  = targetLanguage;
            _segmentBuilder  = segmentBuilder;

            ConfirmationStatistics      = new ConfirmationStatistics();
            TranslationOriginStatistics = new TranslationOriginStatistics();
        }
コード例 #6
0
        internal ContentReader(string projectId, string inputPath, bool ignoreTags, SegmentBuilder segmentBuilder,
                               ExportOptions exportOptions, List <AnalysisBand> analysisBands)
        {
            _projectId      = projectId;
            _inputPath      = inputPath;
            _ignoreTags     = ignoreTags;
            _segmentBuilder = segmentBuilder;

            _exportOptions = exportOptions;
            _analysisBands = analysisBands;

            Xliff = new Xliff();
            ConfirmationStatistics      = new ConfirmationStatistics();
            TranslationOriginStatistics = new TranslationOriginStatistics();
        }
コード例 #7
0
        public ContentReader(string projectId, TokenVisitor tokenVisitor, ExportOptions exportOptions,
                             List <AnalysisBand> analysisBands, string filePath, string outputFilePath, string targetLanguage)
        {
            _projectId        = projectId;
            _tokenVisitor     = tokenVisitor;
            _exportOptions    = exportOptions;
            _analysisBands    = analysisBands;
            _originalFilePath = filePath;
            _contextTypes     = new List <string>();
            _outputFilePath   = outputFilePath;
            _targetLanguage   = targetLanguage;

            ConfirmationStatistics      = new ConfirmationStatistics();
            TranslationOriginStatistics = new TranslationOriginStatistics();
        }
コード例 #8
0
        public bool UpdateFile(Xliff xliff, string filePathInput, string filePathOutput)
        {
            var converter     = _fileTypeManager.GetConverterToDefaultBilingual(filePathInput, filePathOutput, null);
            var contentWriter = new ContentWriter(xliff, _segmentBuilder, _importOptions, _analysisBands);

            converter.AddBilingualProcessor(contentWriter);
            converter.SynchronizeDocumentProperties();

            converter.Parse();

            ConfirmationStatistics      = contentWriter.ConfirmationStatistics;
            TranslationOriginStatistics = contentWriter.TranslationOriginStatistics;

            return(true);
        }
コード例 #9
0
        public XliffContentWriter(Xliff xliff, SegmentBuilder segmentBuilder,
                                  ImportOptions importOptions, List <AnalysisBand> analysisBands, List <string> tagIds,
                                  bool importBackTranslations)
        {
            _xliff                  = xliff;
            _segmentBuilder         = segmentBuilder;
            _importOptions          = importOptions;
            _analysisBands          = analysisBands;
            _importBackTranslations = importBackTranslations;

            _segmentBuilder.ExistingTagIds = tagIds;

            Comments = _xliff.DocInfo.Comments ?? new Dictionary <string, List <IComment> >();
            ConfirmationStatistics      = new ConfirmationStatistics();
            TranslationOriginStatistics = new TranslationOriginStatistics();
        }
コード例 #10
0
        public bool UpdateFile(Xliff xliff, string filePathInput, string filePathOutput, bool importBackTranslations = false)
        {
            var fileTypeManager = DefaultFileTypeManager.CreateInstance(true);
            var converter       = fileTypeManager.GetConverterToDefaultBilingual(filePathInput, filePathOutput, null);
            var tagIds          = GetTagIds(filePathInput);

            var contentWriter = new XliffContentWriter(xliff, _segmentBuilder, _importOptions, _analysisBands, tagIds, importBackTranslations);

            converter.AddBilingualProcessor(contentWriter);
            converter.SynchronizeDocumentProperties();

            converter.Parse();

            ConfirmationStatistics      = contentWriter.ConfirmationStatistics;
            TranslationOriginStatistics = contentWriter.TranslationOriginStatistics;

            return(true);
        }
コード例 #11
0
        internal XliffContentReader(string projectId, string documentId, string inputPath, string targetLanguage, bool ignoreTags, SegmentBuilder segmentBuilder,
                                    ExportOptions exportOptions, List <AnalysisBand> analysisBands)
        {
            _projectId      = projectId;
            _documentId     = documentId;
            _inputPath      = inputPath;
            _ignoreTags     = ignoreTags;
            _segmentBuilder = segmentBuilder;
            _contextIndex   = 0;

            _exportOptions = exportOptions;
            _analysisBands = analysisBands;


            TargetLanguage = new CultureInfo(targetLanguage);

            Xliff = new Xliff();
            ConfirmationStatistics      = new ConfirmationStatistics();
            TranslationOriginStatistics = new TranslationOriginStatistics();
        }