public BluRayTitleInfo GetTitleInfo() { foreach (ProcessOutputLineItem item in _processOutputLineItems) { EnumBluRayLineItemType type = _lineItemIdentifierService.GetLineItemType(item); switch (type) { case EnumBluRayLineItemType.BluRayTitleHeaderLine: _bluRayTtileInfo.HeaderText = item.Text; break; case EnumBluRayLineItemType.BluRayTitleChapterLine: this.SetChapter(item); break; case EnumBluRayLineItemType.BluRayTitleVideoLine: this.SetVideo(item); break; case EnumBluRayLineItemType.BluRayTitleAudioLine: this.SetAudio(item); break; case EnumBluRayLineItemType.BluRayTitleSubtitleLine: this.SetSubtitle(item); break; default: break; } } return(_bluRayTtileInfo); }
public List <BluRaySummaryInfo> GetSummaryList() { StringBuilder sbHeader = null; StringBuilder sbDetail = null; BluRaySummaryInfo summaryInfo = null; try { foreach (ProcessOutputLineItem item in _processOutputLineItems) { EnumBluRayLineItemType type = _lineItemIdentifierService.GetLineItemType(item); switch (type) { case EnumBluRayLineItemType.BluRaySummaryHeaderLine: if (this.IsIdHeader(item)) { sbHeader = new StringBuilder(); sbDetail = new StringBuilder(); summaryInfo = new BluRaySummaryInfo(); summaryInfo.Eac3ToId = this.GetId(item); sbHeader.Append(this.RemoveEac3ToIdFromHeaderLineItem(item)); } else { sbHeader.AppendLine(string.Format(" {0}", item.Text)); } break; case EnumBluRayLineItemType.BluRaySummaryDetailLine: sbDetail.AppendLine(item.Text); break; case EnumBluRayLineItemType.BluRaySummaryEmptyLine: summaryInfo.HeaderText = sbHeader.ToString(); summaryInfo.DetailText = sbDetail.ToString(); _summaryList.Add(summaryInfo); break; case EnumBluRayLineItemType.BluRayError: throw new Exception(item.Text); default: break; } } } catch (Exception ex) { _log.ErrorFormat(Program.GetLogErrorFormat(), ex.Message, ex.StackTrace, MethodBase.GetCurrentMethod().Name); _errors.Add(new Error() { Description = "There was an error trying to parse the blu-ray disc" }); } return(_summaryList); }
public void bluraysummarylineitemidentifierservice_can_identify_bluray_empty_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "" }; ILineItemIdentifierService service = new BluRaySummaryLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRaySummaryEmptyLine); }
public void bluraysummarylineitemidentifierservice_can_identify_bluray_header_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "1) 00010.mpls, 3:04:31" }; ILineItemIdentifierService service = new BluRaySummaryLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRaySummaryHeaderLine); }
public void bluraysummarylineitemidentifierservice_can_identify_bluray_detail_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "- DTS Master Audio, Swedish, multi-channel, 48kHz" }; ILineItemIdentifierService service = new BluRaySummaryLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRaySummaryDetailLine); }
public void bluraytitlelineitemidentifierservice_can_identify_bluray_subtitle_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "4: Subtitle (pgs), French" }; ILineItemIdentifierService service = new BluRayTitleLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRayTitleSubtitleLine); }
public void bluraytitlelineitemidentifierservice_can_identify_bluray_audio_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "3: DTS Master Audio, French, 5.1 channels, 24 bits, 48kHz" }; ILineItemIdentifierService service = new BluRayTitleLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRayTitleAudioLine); }
public void bluraytitlelineitemidentifierservice_can_identify_bluray_video_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "2: h264/AVC, 1080i50 (16:9)" }; ILineItemIdentifierService service = new BluRayTitleLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRayTitleVideoLine); }
public void bluraytitlelineitemidentifierservice_can_identify_bluray_chapter_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "1: Chapters, 6 chapters" }; ILineItemIdentifierService service = new BluRayTitleLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRayTitleChapterLine); }
public void bluraytitlelineitemidentifierservice_can_identify_bluray_header_line_item_test() { ProcessOutputLineItem lineItem = new ProcessOutputLineItem() { Id = 1, Text = "M2TS, 1 video track, 1 audio track, 1 subtitle track, 0:58:28, 50i" }; ILineItemIdentifierService service = new BluRayTitleLineItemIdentifierService(); EnumBluRayLineItemType type = service.GetLineItemType(lineItem); type.Should().Be(EnumBluRayLineItemType.BluRayTitleHeaderLine); }