public override void SaveSettings(HTMLCleanupConfig config) { config.URLFormatterConfig = new URLFormatterType { Skipped = Skipped }; }
public override void SaveSettings(HTMLCleanupConfig config) { config.ParagraphExtractorConfig = new ParagraphExtractorType { Skipped = Skipped }; }
public override void LoadSettings(HTMLCleanupConfig config) { base.LoadSettings(config); // Skipped must be read after base settings. Skipped = config.InnerTagRemoverConfig.Skipped; LoadTags(config.InnerTagRemoverConfig.Tags); }
public override void SaveSettings(HTMLCleanupConfig config) { config.TagWithTextRemoverConfig = new TagWithTextRemoverType() { Skipped = Skipped, Tags = new TagToRemoveType[Tags.Count] }; SaveTags(config.TagWithTextRemoverConfig.Tags); }
public override void SaveSettings(HTMLCleanupConfig config) { base.SaveSettings(config); config.InnerTagRemoverConfig = new InnerTagRemoverType() { Skipped = Skipped, Tags = new TagToRemoveType[Tags.Count] }; SaveTags(config.InnerTagRemoverConfig.Tags); }
public override void LoadSettings(HTMLCleanupConfig config) { Skipped = config.TextFormatterConfig.Skipped; byte[] b = new byte[config.TextFormatterConfig.Delimiters.Length]; for (int i = 0; i < config.TextFormatterConfig.Delimiters.Length; i++) { b[i] = config.TextFormatterConfig.Delimiters[i].SymbolCode; } Delimiters = Encoding.ASCII.GetChars(b); }
public override void LoadSettings(HTMLCleanupConfig config) { Skipped = config.SpecialHTMLRemoverConfig.Skipped; SpecialHtml.Clear(); foreach (SpecialHTMLSymbolType t in config.SpecialHTMLRemoverConfig.SpecialHTML) { SpecialHtml.Add(new SpecialHtmlSymbol(t.SpecialHTML, t.Replacement)); } // This symbol is added bypassing configuration file // because string consisting only from spaces is read // from XML as completely empty despite it is stored // correctly (workaround). SpecialHtml.Add(new SpecialHtmlSymbol(" ", " ")); }
public override void SaveSettings(HTMLCleanupConfig config) { config.TextFormatterConfig = new TextFormatterType() { Skipped = Skipped, Delimiters = new DelimiterSymbolType[Delimiters.Length] }; for (int i = 0; i < Delimiters.Length; i++) { byte[] b = Encoding.ASCII.GetBytes(Delimiters); config.TextFormatterConfig.Delimiters[i] = new DelimiterSymbolType() { SymbolCode = b[i] }; } }
public override void SaveSettings(HTMLCleanupConfig config) { config.SpecialHTMLRemoverConfig = new SpecialHTMLRemoverType { Skipped = Skipped, SpecialHTML = new SpecialHTMLSymbolType[SpecialHtml.Count] }; for (int i = 0; i < SpecialHtml.Count; i++) { config.SpecialHTMLRemoverConfig.SpecialHTML[i] = new SpecialHTMLSymbolType { SpecialHTML = SpecialHtml[i].SpecialHtml, Replacement = SpecialHtml[i].Replacement }; } }
/// <summary> /// Scans processing chain and copies object data into file. /// </summary> /// <param name="fileName">Configuration file name.</param> /// <param name="chain">The first member of processing chain.</param> public void Serialize(string fileName, BaseHtmlCleaner.TextProcessor chain) { HTMLCleanupConfig config = new HTMLCleanupConfig(); // Fills the settings container. while (chain != null) { if (chain.GetType() == typeof(BaseHtmlCleaner.ParagraphExtractor)) { ((BaseHtmlCleaner.ParagraphExtractor)chain).SaveSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.SpecialHtmlRemover)) { ((BaseHtmlCleaner.SpecialHtmlRemover)chain).SaveSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.InnerTextProcessor)) { ((BaseHtmlCleaner.InnerTextProcessor)chain).SaveSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.TagRemover)) { ((BaseHtmlCleaner.TagRemover)chain).SaveSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.UrlFormatter)) { ((BaseHtmlCleaner.UrlFormatter)chain).SaveSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.TextFormatter)) { ((BaseHtmlCleaner.TextFormatter)chain).SaveSettings(config); } chain = chain.Next; } // Writes data to file. using (StreamWriter writer = new StreamWriter(fileName)) { XmlSerializer serializer = new XmlSerializer(typeof(HTMLCleanupConfig)); serializer.Serialize(writer, config); } }
/// <summary> /// Reads configuration objects from file. /// </summary> /// <param name="fileName">Configuration file name.</param> /// <param name="chain">The first member of processing chain.</param> public void Deserialize(string fileName, BaseHtmlCleaner.TextProcessor chain) { // Reads settings from file. HTMLCleanupConfig config = new HTMLCleanupConfig(); using (StreamReader reader = new StreamReader(fileName)) { XmlSerializer serializer = new XmlSerializer(typeof(HTMLCleanupConfig)); config = (HTMLCleanupConfig)serializer.Deserialize(reader); } // Updates objects in the chain. while (chain != null) { if (chain.GetType() == typeof(BaseHtmlCleaner.ParagraphExtractor)) { ((BaseHtmlCleaner.ParagraphExtractor)chain).LoadSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.SpecialHtmlRemover)) { ((BaseHtmlCleaner.SpecialHtmlRemover)chain).LoadSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.InnerTextProcessor)) { ((BaseHtmlCleaner.InnerTextProcessor)chain).LoadSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.TagRemover)) { ((BaseHtmlCleaner.TagRemover)chain).LoadSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.UrlFormatter)) { ((BaseHtmlCleaner.UrlFormatter)chain).LoadSettings(config); } if (chain.GetType() == typeof(BaseHtmlCleaner.TextFormatter)) { ((BaseHtmlCleaner.TextFormatter)chain).LoadSettings(config); } chain = chain.Next; } }
public override void LoadSettings(HTMLCleanupConfig config) { Skipped = config.URLFormatterConfig.Skipped; }
public override void LoadSettings(HTMLCleanupConfig config) { Skipped = config.TagWithTextRemoverConfig.Skipped; LoadTags(config.TagWithTextRemoverConfig.Tags); }
public override void LoadSettings(HTMLCleanupConfig config) { Skipped = config.ParagraphExtractorConfig.Skipped; }
public abstract void SaveSettings(HTMLCleanupConfig config);
public abstract void LoadSettings(HTMLCleanupConfig config);