mirror of
https://github.com/collinbarrett/FilterLists.git
synced 2026-03-11 09:04:27 +00:00
Merge branch 'master' of https://github.com/collinbarrett/FilterLists
This commit is contained in:
commit
f32bcd3755
1 changed files with 22 additions and 6 deletions
|
|
@ -70,10 +70,7 @@ private static async Task<string> GetHttpResponseMessageContent(string url)
|
|||
|
||||
private async Task SaveSnapshots(IEnumerable<Snapshot> snapshots)
|
||||
{
|
||||
foreach (var snapshot in snapshots)
|
||||
{
|
||||
await AddOrUpdateRules(snapshot);
|
||||
}
|
||||
foreach (var snapshot in snapshots) await AddOrUpdateRules(snapshot);
|
||||
}
|
||||
|
||||
private async Task AddOrUpdateRules(Snapshot snapshot)
|
||||
|
|
@ -126,13 +123,32 @@ private class FilterListViewUrlDto
|
|||
|
||||
private class Snapshot
|
||||
{
|
||||
public string Content {
|
||||
set => RawRules = value?.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries);
|
||||
public string Content
|
||||
{
|
||||
set
|
||||
{
|
||||
if (value == null) return;
|
||||
var rawRules = value.Split(new[] {"\r\n", "\r", "\n"}, StringSplitOptions.RemoveEmptyEntries);
|
||||
for (var i = 0; i < rawRules.Length; i++)
|
||||
rawRules[i] = LintStringForMySql(rawRules[i]);
|
||||
RawRules = rawRules;
|
||||
}
|
||||
}
|
||||
|
||||
public int FilterListId { get; set; }
|
||||
|
||||
public string[] RawRules { get; private set; }
|
||||
|
||||
private static string LintStringForMySql(string rule)
|
||||
{
|
||||
rule = TrimSingleBackslashFromEnd(rule);
|
||||
return rule;
|
||||
}
|
||||
|
||||
private static string TrimSingleBackslashFromEnd(string rule)
|
||||
{
|
||||
return rule.EndsWith(@"\") && !rule.EndsWith(@"\\") ? rule.Remove(rule.Length - 1) : rule;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue