Продолжение рефакторинга (вынесение WPF в отдельный проект)

This commit is contained in:
2025-10-02 17:25:48 +04:00
parent 2fa94851cb
commit f5b311e025
161 changed files with 899 additions and 559 deletions
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.Importers;
/// <summary>
/// Компендиум данных.
/// </summary>
internal abstract class AbstractCompendium
public abstract class AbstractCompendium
{
/// <summary>
/// Репозиторий данных.
@@ -3,7 +3,7 @@
/// <summary>
/// Абстрактная ссылка на сущность.
/// </summary>
internal abstract class AbstractCompendiumItem
public abstract class AbstractCompendiumItem
{
/// <summary>
/// Идентификатор сущности.
+1 -1
View File
@@ -5,7 +5,7 @@ namespace Pf2e.Scrapper.Importers;
/// <summary>
/// Абстрактный класс импортёра.
/// </summary>
internal abstract class AbstractImporter
public abstract class AbstractImporter
{
/// <summary>
/// Отображаемое имя импортёра.
@@ -10,7 +10,7 @@ using StringHelper = Helpers.StringHelper;
/// <summary>
/// Класс обработки данных с сайта Архивов Нефеса.
/// </summary>
internal class AonprdImporter : AbstractImporter
public class AonprdImporter : AbstractImporter
{
/// <summary>
/// Название внешней ссылки.
@@ -12,7 +12,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd;
/// <summary>
/// Основной класс для работы с репозиторием данных Aonprd.
/// </summary>
internal class AonprdRepository(AonprdImporter importer) : AbstractImporterRepository(importer)
public class AonprdRepository(AonprdImporter importer) : AbstractImporterRepository(importer)
{
/// <summary>
/// URL для доступа к API Aonprd.
@@ -10,7 +10,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
/// <summary>
/// Класс хранения данных компендиума.
/// </summary>
internal sealed class AonprdCompendium(AonprdRepository repository) : AbstractCompendium
public sealed class AonprdCompendium(AonprdRepository repository) : AbstractCompendium
{
/// <inheritdoc/>
public override AonprdRepository Repository { get; } = repository;
@@ -5,7 +5,7 @@
/// </summary>
/// <param name="id">Идентификатор сущности.</param>
/// <param name="file">Имя файла.</param>
internal class AonprdCompendiumItem(string id, string file) : AbstractCompendiumItem
public class AonprdCompendiumItem(string id, string file) : AbstractCompendiumItem
{
/// <summary>
/// Идентификатор сущности.
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
/// <summary>
/// Класс-помощник, хранящий необходимые глобальные данные.
/// </summary>
internal class AonprdBuilderGlobals
public class AonprdBuilderGlobals
{
/// <summary>
/// Цель внешних ссылок Архивов Нефисов.
@@ -1,11 +1,14 @@
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Processors;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Processors;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
internal static class AonprdProcessorInputExtension
/// <summary>
/// Класс-расширение для <see cref="ProcessorInput"/>.
/// </summary>
public static class AonprdProcessorInputExtension
{
/// <summary>
/// Обработать строку, содержащую информацию о количестве действий.
@@ -121,8 +124,12 @@ internal static class AonprdProcessorInputExtension
public bool TwoRounds { get; set; }
}
/// <summary>
/// Разрешитель перечисления <see cref="SourceCategory"/>.
/// </summary>
public class SourceCategorySolver : EnumSolver<SourceCategory>
{
/// <inheritdoc />
public override Dictionary<string, SourceCategory> Data { get; } =
new()
{
@@ -136,8 +143,12 @@ internal static class AonprdProcessorInputExtension
};
}
/// <summary>
/// Разрешитель перечисления <see cref="VisionEnum"/>.
/// </summary>
public class VisionEnumSolver : EnumSolver<VisionEnum>
{
/// <inheritdoc />
public override Dictionary<string, VisionEnum> Data { get; } =
new()
{
@@ -146,8 +157,12 @@ internal static class AonprdProcessorInputExtension
};
}
/// <summary>
/// Разрешитель перечисления <see cref="AttributeValues"/>.
/// </summary>
public class AttributeValuesSolver : EnumSolver<AttributeValues>
{
/// <inheritdoc />
public override Dictionary<string, AttributeValues> Data { get; } =
new()
{
@@ -157,8 +172,12 @@ internal static class AonprdProcessorInputExtension
};
}
/// <summary>
/// Разрешитель перечисления <see cref="ActionEnum"/>.
/// </summary>
public class ActionEnumSolver : EnumSolver<ActionEnum>
{
/// <inheritdoc />
public override Dictionary<string, ActionEnum> Data { get; } =
new()
{
@@ -187,6 +206,10 @@ internal static class AonprdProcessorInputExtension
};
}
/// <summary>
/// Регистрирует службы разрешителей перечислений в контейнере служб.
/// </summary>
/// <param name="serviceCollection">Коллекция служб.</param>
public static void RegisterServices(IServiceCollection serviceCollection)
{
serviceCollection.AddTransient<IEnumSolver, SourceCategorySolver>();
@@ -10,7 +10,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
/// Класс коллекции книг, содержащих правила.
/// Реализует шаблон <c>Singleton</c>.
/// </summary>
internal class RuleTocCollection
public class RuleTocCollection
{
/// <summary>
/// Список книг, содержащих правила.
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
/// Класс-помощник, для обработки строкового ввода с Архивов Нефиса.
/// Реализует шаблон <c>Singleton</c>.
/// </summary>
internal partial class StringHelper
public partial class StringHelper
{
/// <summary>
/// Конструктор класса <see cref="StringHelper"/>
@@ -88,7 +88,7 @@ internal partial class StringHelper
/// <summary>
/// Класс структуры, содеражащая информацию разбиении строки по ссылкам.
/// </summary>
internal class MarkdownLinkSplit
public class MarkdownLinkSplit
{
/// <summary>
/// Список содержащихся ссылок.
@@ -104,7 +104,7 @@ internal class MarkdownLinkSplit
/// <summary>
/// Информация о ссылке в строке.
/// </summary>
internal class MarkdownLink
public class MarkdownLink
{
/// <summary>
/// Данные, содержащиеся до ссылки.
@@ -2,11 +2,6 @@
using System.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model;
using Pf2e.Database.Model.Base;
@@ -15,8 +10,12 @@ using Pf2e.Database.Model.Base.Targets;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors;
@@ -30,7 +29,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors;
/// <param name="helper">[DI] Помощник работы с БД.</param>
/// <param name="globals">[DI] Глобальные параметра обработки Архивов Нефиса.</param>
/// <seealso cref="ProcessorAttribute"/>
internal abstract class AbstractEntityProcessor(
public abstract class AbstractEntityProcessor(
ProcessorInput input,
Helpers_StringHelper stringHelper,
DatabaseHelper helper,
@@ -1,15 +1,15 @@
using System.Collections.Generic;
using System.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -20,7 +20,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors;
/// Класс предназначен для обработки данных с помощью различных обработчиков,
/// для которых указан атрибут <see cref="ProcessorAttribute"/>.
/// </summary>
internal abstract class AbstractSubclassProcessor(
public abstract class AbstractSubclassProcessor(
ProcessorInput input,
Helpers_StringHelper stringHelper,
DatabaseHelper helper,
@@ -2,12 +2,13 @@
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Finalization;
@@ -3,14 +3,15 @@ using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Finalization;
@@ -6,6 +6,7 @@ using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
@@ -1,5 +1,6 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
@@ -5,6 +5,7 @@ using System.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.SchemaBuilder;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
@@ -1,10 +1,11 @@
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
@@ -1,11 +1,12 @@
using System;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model.Base.Source;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
@@ -1,11 +1,12 @@
using System.Linq;
using System.Text.RegularExpressions;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,11 +1,12 @@
using System.Collections.Generic;
using System.Linq;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,17 +1,18 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,17 +1,18 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -2,16 +2,17 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Subclasses;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,8 +1,9 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -2,12 +2,13 @@
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -2,13 +2,14 @@
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json.Linq;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,10 +1,11 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,12 +1,13 @@
using Newtonsoft.Json.Linq;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.BackgroundRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.BackgroundRelation;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -3,16 +3,17 @@ using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.ClassRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using static System.Text.RegularExpressions.Regex;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,12 +1,13 @@
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
@@ -50,7 +51,7 @@ internal class DeityCategoryProcessor(
// Получаем markdown с описанием из summary_markdown или другого поля
// В данных deity-category.yaml нет summary_markdown, используем пустую строку
string descriptionMarkdown = string.Empty;
// Преобразуем markdown в текст (можно добавить более сложную обработку)
// Пока просто сохраняем как есть
Object.Description[LocaleType.English] = descriptionMarkdown;
@@ -1,16 +1,17 @@
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.DeityRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -48,7 +49,7 @@ internal partial class DeityProcessor(
// Установка категории божества
string categoryName = Input.GetRequired<string>("deity_category");
Object.Category = categoryName;
// Связываем с сущностью категории
ProcessCategory(categoryName);
@@ -1,13 +1,14 @@
using System;
using System.Linq;
using System.Text.RegularExpressions;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,12 +1,13 @@
using System.Linq;
using Newtonsoft.Json.Linq;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -3,12 +3,13 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
@@ -1,9 +1,10 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -3,15 +3,16 @@ using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.RitualRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,13 +1,14 @@
using System.Linq;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Base.Source;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using Rule = Pf2e.Database.Model.Structure.Rule;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -7,10 +7,11 @@
using System.Collections.Generic;
using System.Linq;
using Pf2e.Database;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Rule = Pf2e.Database.Model.Structure.Rule;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types.Rules;
@@ -4,11 +4,12 @@ using System.Text.RegularExpressions;
using System.Web;
using AngleSharp;
using AngleSharp.Dom;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model.Base.Source;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types.Rules;
@@ -3,11 +3,12 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
@@ -1,14 +1,15 @@
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.SpellRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -1,16 +1,17 @@
using System;
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Subclasses;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Subclasses;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
@@ -1,10 +1,11 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -3,12 +3,13 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
@@ -11,7 +11,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
/// Загрузчик данных компендиума.
/// </summary>
/// <param name="repository"><inheritdoc cref="FoundryEnRepository"/></param>
internal sealed class FoundryEnCompendium(FoundryEnRepository repository) : AbstractCompendium
public sealed class FoundryEnCompendium(FoundryEnRepository repository) : AbstractCompendium
{
/// <inheritdoc/>
public override FoundryEnRepository Repository { get; } = repository;
@@ -6,7 +6,7 @@
/// <param name="id">Идентификатор сущности.</param>
/// <param name="type">Тип сущности.</param>
/// <param name="file">Имя файла, в котором хранится сущность.</param>
internal class FoundryEnCompendiumItem(string id, string type, string file) : AbstractCompendiumItem
public class FoundryEnCompendiumItem(string id, string type, string file) : AbstractCompendiumItem
{
/// <summary>
/// Идентификатор сущности.
@@ -1,14 +1,13 @@
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Importers.Repositories;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn;
/// <summary>
/// Импортёр для модуля Pf2e FoundryVTT.
/// </summary>
internal class FoundryEnImporter : AbstractImporter
public class FoundryEnImporter : AbstractImporter
{
/// <summary>
/// Название внешней ссылки.
@@ -27,6 +26,10 @@ internal class FoundryEnImporter : AbstractImporter
#region "Внедрение зависимостей"
/// <summary>
/// Регистрация сервисов импортёра в контейнере зависимостей.
/// </summary>
/// <param name="services">Коллекция сервисов.</param>
public static void RegisterServices(IServiceCollection services)
{
services.AddSingleton<FoundryEnImporter>();
@@ -39,16 +42,3 @@ internal class FoundryEnImporter : AbstractImporter
#endregion
}
/// <summary>
/// Git-репозиторий данных FoundryVTT-модуля "pf2e".
/// </summary>
/// <param name="importer"><inheritdoc cref="FoundryEnImporter"/></param>
internal class FoundryEnRepository(FoundryEnImporter importer) : AbstractGitHubRepository(importer)
{
/// <inheritdoc/>
public override string Repository => "foundryvtt/pf2e";
/// <inheritdoc/>
public override string AssetName => "json-assets.zip";
}
@@ -0,0 +1,16 @@
using Pf2e.Scrapper.Importers.Repositories;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn;
/// <summary>
/// Git-репозиторий данных FoundryVTT-модуля "pf2e".
/// </summary>
/// <param name="importer"><inheritdoc cref="FoundryEnImporter"/></param>
public class FoundryEnRepository(FoundryEnImporter importer) : AbstractGitHubRepository(importer)
{
/// <inheritdoc/>
public override string Repository => "foundryvtt/pf2e";
/// <inheritdoc/>
public override string AssetName => "json-assets.zip";
}
@@ -10,7 +10,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
/// <summary>
/// Глобальные константы и утилиты для импорта данных в формате Foundry En.
/// </summary>
internal class FoundryEnGlobals
public class FoundryEnGlobals
{
/// <summary>
/// Цель внешних ссылок для Foundry En.
@@ -2,13 +2,14 @@
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
using Pf2e.Database;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
@@ -21,7 +22,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
Active = false
)]
[ProcessorDependencies(["foundry-en:compendium", "foundry-en:external"])]
internal partial class ActionProcessor(
public partial class ActionProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
@@ -1,12 +1,13 @@
using Newtonsoft.Json.Linq;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
@@ -19,7 +20,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
Active = false
)]
[ProcessorDependencies(["foundry-en:compendium"])]
internal class ConditionProcessor(
public class ConditionProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
@@ -1,14 +1,15 @@
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.DeityRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
@@ -21,7 +22,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
Active = true
)]
[ProcessorDependencies(["foundry-en:compendium", "foundry-en:external"])]
internal class DeityProcessor(
public class DeityProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
@@ -3,17 +3,17 @@ using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors;
@@ -27,7 +27,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors;
/// <param name="context">[DI] <inheritdoc cref="Pf2eDbContext"/></param>
/// <param name="globals">[DI] <inheritdoc cref="FoundryEnGlobals"/></param>
/// <param name="input">Объект обработки вводимого JSON.</param>
internal abstract class FoundryEnAbstractProcessor<TEntity>(
public abstract class FoundryEnAbstractProcessor<TEntity>(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
@@ -52,7 +52,7 @@ internal abstract class FoundryEnAbstractProcessor<TEntity>(
/// <summary>
/// Представление сущности, которое будет использоваться для обработки данных.
/// </summary>
public EntityView View { get; private set; } = null!;
public FullEntity View { get; private set; } = null!;
/// <summary>
/// Основная сущность, которая будет использоваться для обработки данных.
@@ -5,6 +5,7 @@ using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -16,7 +17,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Active = false
)]
[ProcessorDependencies(["foundry-en:repository"])]
internal class CompendiumProcessor(
public class CompendiumProcessor(
FoundryEnRepository repository,
FoundryEnCompendium compendium,
ProcessProgress progress
@@ -1,9 +1,10 @@
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Database;
using Pf2e.Database;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -13,7 +14,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Group = ProcessorGroupEnum.FoundryEnPreparation
)]
[ProcessorDependencies(["foundry-en:repository"])]
internal class ExternalProcessor(FoundryEnGlobals enGlobals) : AbstractSimpleProcessor
public class ExternalProcessor(FoundryEnGlobals enGlobals) : AbstractSimpleProcessor
{
public Pf2eDbContext Context { get; } = new();
public FoundryEnGlobals EnGlobals { get; } = enGlobals;
@@ -1,5 +1,6 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -10,7 +11,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Group = ProcessorGroupEnum.FoundryEnPreparation,
Active = false
)]
internal class RepositoryUpdateProcessor(FoundryEnRepository repository, ProcessProgress progress)
public class RepositoryUpdateProcessor(FoundryEnRepository repository, ProcessProgress progress)
: IProcessor
{
public FoundryEnRepository Repository { get; } = repository;
@@ -5,6 +5,7 @@ using System.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.SchemaBuilder;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -16,7 +17,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Active = false
)]
[ProcessorDependencies(["foundry-en:compendium"])]
internal class SchemaBuildProcessor(
public class SchemaBuildProcessor(
FoundryEnImporter importer,
FoundryEnRepository repository,
FoundryEnCompendium compendium,
@@ -5,16 +5,30 @@ using Pf2e.Scrapper.SchemaBuilder.Types;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
internal class SchemaTypeResolver : TypeResolver
/// <summary>
/// Класс для определения типов полей в схеме данных Foundry PF2e.
/// </summary>
public class SchemaTypeResolver : TypeResolver
{
/// <summary>
/// Класс для представления типа поля, содержащего правила Foundry.
/// </summary>
/// <param name="parent">Родительский элемент схемы данных.</param>
public class FoundryRulesSchemaType(SchemaNode parent) : IgnoreSchemaType(parent)
{
/// <summary>
/// Отображаемое имя типа.
/// </summary>
/// <returns>Строковое представоение типа элемента.</returns>
public override string GetTypeName()
{
return "ignored (Foundry rules object)";
}
}
/// <summary>
/// Пути к полям, которые должны быть представлены как словари.
/// </summary>
protected readonly List<string> DictionaryPaths =
[
"character.items.[].system.items",
@@ -41,11 +55,11 @@ internal class SchemaTypeResolver : TypeResolver
];
/// <summary>
/// Частное определение типа поля.
/// Частное определение типа поля.
/// </summary>
/// <param name="node">Поле схемы данных, для которого создаётся тип.</param>
/// <param name="value">Добавляемое значение.</param>
/// <returns>Новый тип для схемы данных. `null`, что бы использовать значение по умолчанию</returns>
/// <returns>Новый тип для схемы данных. `null`, что бы использовать значение по умолчанию.</returns>
protected override AbstractSchemaType? CustomResolve(SchemaNode node, JToken? value)
{
return CheckPath(node, DictionaryPaths) ? new DictionarySchemaType(node)
@@ -10,7 +10,7 @@ using Pf2e.Scrapper.Helpers;
namespace Pf2e.Scrapper.Importers.Repositories;
internal abstract class AbstractGitHubRepository(AbstractImporter importer)
public abstract class AbstractGitHubRepository(AbstractImporter importer)
: AbstractImporterRepository(importer)
{
public abstract string Repository { get; }
@@ -7,7 +7,7 @@ namespace Pf2e.Scrapper.Importers.Repositories;
/// Класс абстрактного репозитория.
/// </summary>
/// <param name="importer">Импортёр, использующий репозиторий.</param>
internal abstract class AbstractImporterRepository(AbstractImporter importer)
public abstract class AbstractImporterRepository(AbstractImporter importer)
{
/// <summary>
/// Импортёр, использующий репозиторий.
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.Importers.Repositories;
/// </summary>
/// <param name="importer">Импортёр, использующий репозиторий.</param>
/// <param name="url">Ссылка на GIT-репозиторий.</param>
internal class GitRepository(AbstractImporter importer, string url)
public class GitRepository(AbstractImporter importer, string url)
: AbstractImporterRepository(importer)
{
/// <summary>