private BlockPart makeStory() { var blockPart = FileInfo.FullName.Read <BlockPart>(); blockPart.Paragraphs = new List <Paragraph>(); verifyProperties(blockPart); var talkCounter = 0; var tellerCounter = 0; foreach (var paragraph in Block.ParagraphTypeList) { Paragraph child; switch (paragraph) { case ParagraphType.Talk: child = ParagraphJson.SetTalk(Block.TalkList[talkCounter]); talkCounter++; break; case ParagraphType.Teller: child = ParagraphJson.SetTeller(Block.TellerList[tellerCounter]); tellerCounter++; break; case ParagraphType.Page: child = ParagraphJson.SetPage(); break; default: throw new Exception($"Not recognized Paragraph [{paragraph}]."); } if (child.HasText) { blockPart.Paragraphs.Add(child); } } return(blockPart); }
private void setText(Paragraph paragraph) { // ReSharper disable once SwitchStatementMissingSomeCases switch (paragraph.Type) { case ParagraphType.Talk: var talk = ParagraphJson.GetTalk(paragraph); Block.TalkList.Add(talk); break; case ParagraphType.Teller: var teller = ParagraphJson.GetTeller(paragraph); Block.TellerList.Add(teller); break; case ParagraphType.Page: break; default: throw new NotImplementedException(); } }