diff --git a/Pf2eDataScrapper/App/ProcessorAttribute.cs b/Pf2eDataScrapper/App/ProcessorAttribute.cs
index e1b0d7b..0f3a04f 100644
--- a/Pf2eDataScrapper/App/ProcessorAttribute.cs
+++ b/Pf2eDataScrapper/App/ProcessorAttribute.cs
@@ -26,6 +26,11 @@ public class ProcessorAttribute(string name) : Attribute
/// Коллекция названий обработчиков, которые должны быть выполнены до этого оброботчика.
///
public string? InnerType { get; init; } = null;
+
+ ///
+ /// Процессор включён по умолчанию.
+ ///
+ public bool Active { get; init; } = true;
}
///
diff --git a/Pf2eDataScrapper/App/ProcessorCollection.cs b/Pf2eDataScrapper/App/ProcessorCollection.cs
index 103a045..65c2f41 100644
--- a/Pf2eDataScrapper/App/ProcessorCollection.cs
+++ b/Pf2eDataScrapper/App/ProcessorCollection.cs
@@ -20,6 +20,13 @@ internal class ProcessorCollection
///
public List Items { get; private set; } = [];
+ ///
+ /// Обеспечение доступа к элементам обработчиков.
+ ///
+ ///
+ ///
+ public ProcessorCollectionItem this[string name] => Items.First(item => item.Name == name);
+
///
/// Конструктор класса .
///
diff --git a/Pf2eDataScrapper/App/ProcessorGroupEnum.cs b/Pf2eDataScrapper/App/ProcessorGroupEnum.cs
index 85b918f..a0c36e5 100644
--- a/Pf2eDataScrapper/App/ProcessorGroupEnum.cs
+++ b/Pf2eDataScrapper/App/ProcessorGroupEnum.cs
@@ -1,4 +1,5 @@
using System.ComponentModel;
+using System.Reflection;
namespace Pf2eDataScrapper.App;
@@ -22,3 +23,15 @@ public enum ProcessorGroupEnum
[Description("Foundry EN: Основные сущности")]
FoundryEnEntities,
}
+
+public static class ProcessorGroupEnumExtension
+{
+ public static string GetDescription(this ProcessorGroupEnum group)
+ {
+ return group
+ .GetType()
+ .GetField(group.ToString())
+ ?.GetCustomAttribute()
+ ?.Description ?? group.ToString();
+ }
+}
diff --git a/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.Designer.cs b/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.Designer.cs
new file mode 100644
index 0000000..bc10be6
--- /dev/null
+++ b/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.Designer.cs
@@ -0,0 +1,60 @@
+namespace Pf2eDataScrapper.Forms.Controls;
+
+partial class ProcessorCollectionControl
+{
+ ///
+ /// Обязательная переменная конструктора.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Освободить все используемые ресурсы.
+ ///
+ /// истинно, если управляемый ресурс должен быть удален; иначе ложно.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Код, автоматически созданный конструктором компонентов
+
+ ///
+ /// Требуемый метод для поддержки конструктора — не изменяйте
+ /// содержимое этого метода с помощью редактора кода.
+ ///
+ private void InitializeComponent()
+ {
+ RootFlowLayoutPanel = new FlowLayoutPanel();
+ SuspendLayout();
+ //
+ // RootFlowLayoutPanel
+ //
+ RootFlowLayoutPanel.AutoScroll = true;
+ RootFlowLayoutPanel.BackColor = SystemColors.Window;
+ RootFlowLayoutPanel.BorderStyle = BorderStyle.FixedSingle;
+ RootFlowLayoutPanel.Dock = DockStyle.Fill;
+ RootFlowLayoutPanel.FlowDirection = FlowDirection.TopDown;
+ RootFlowLayoutPanel.Location = new Point(0, 0);
+ RootFlowLayoutPanel.Name = "RootFlowLayoutPanel";
+ RootFlowLayoutPanel.Size = new Size(432, 406);
+ RootFlowLayoutPanel.TabIndex = 0;
+ RootFlowLayoutPanel.WrapContents = false;
+ //
+ // ProcessorCollectionControl
+ //
+ AutoScaleDimensions = new SizeF(7F, 15F);
+ AutoScaleMode = AutoScaleMode.Font;
+ Controls.Add(RootFlowLayoutPanel);
+ Name = "ProcessorCollectionControl";
+ Size = new Size(432, 406);
+ ResumeLayout(false);
+ }
+
+ #endregion
+
+ private FlowLayoutPanel RootFlowLayoutPanel;
+}
diff --git a/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.cs b/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.cs
new file mode 100644
index 0000000..e54bddd
--- /dev/null
+++ b/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.cs
@@ -0,0 +1,87 @@
+using System.ComponentModel;
+using Pf2eDataScrapper.App;
+
+namespace Pf2eDataScrapper.Forms.Controls;
+
+internal partial class ProcessorCollectionControl : UserControl
+{
+ [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
+ public ProcessorCollection? Collection
+ {
+ get => _collection;
+ set
+ {
+ _collection = value;
+ UpdateContent();
+ }
+ }
+ private ProcessorCollection? _collection = null;
+
+ public ProcessorCollectionControl()
+ {
+ InitializeComponent();
+ }
+
+ private Dictionary GroupCheckBoxes { get; } = [];
+
+ private Dictionary GroupFlowLayoutPanels { get; } = [];
+
+ private Dictionary ItemCheckBoxes { get; } = [];
+
+ private void UpdateContent()
+ {
+ RootFlowLayoutPanel.Controls.Clear();
+
+ if (Collection == null)
+ {
+ return;
+ }
+
+ foreach (ProcessorGroupEnum group in Enum.GetValues())
+ {
+ GroupCheckBoxes[group] = new()
+ {
+ Text = group.GetDescription(),
+ //AutoSize = false,
+ Dock = DockStyle.Fill,
+ Checked = true,
+ CheckAlign = ContentAlignment.TopLeft,
+ };
+
+ GroupCheckBoxes[group].CheckedChanged += GroupCheckBox_CheckedChanged;
+
+ GroupFlowLayoutPanels[group] = new()
+ {
+ AutoSize = true,
+ Dock = DockStyle.Fill,
+ FlowDirection = FlowDirection.LeftToRight,
+ WrapContents = true,
+ BorderStyle = BorderStyle.FixedSingle,
+ };
+
+ RootFlowLayoutPanel.Controls.Add(GroupCheckBoxes[group]);
+ RootFlowLayoutPanel.Controls.Add(GroupFlowLayoutPanels[group]);
+ }
+
+ foreach (ProcessorCollectionItem item in Collection.AllItems)
+ {
+ ItemCheckBoxes[item.Name] = new()
+ {
+ Text = item.Description,
+ AutoSize = true,
+ // Dock = DockStyle.Fill,
+ // MaximumSize = new Size(Width, 20),
+ // Width = 200,
+ Checked = true,
+ CheckAlign = ContentAlignment.TopLeft,
+ };
+
+ GroupFlowLayoutPanels[item.Group].Controls.Add(ItemCheckBoxes[item.Name]);
+ }
+ }
+
+ private void GroupCheckBox_CheckedChanged(object? sender, EventArgs e)
+ {
+ //
+ }
+}
diff --git a/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.resx b/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.resx
new file mode 100644
index 0000000..8b2ff64
--- /dev/null
+++ b/Pf2eDataScrapper/Forms/Controls/ProcessorCollectionControl.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/Pf2eDataScrapper/Forms/ProgressForm.cs b/Pf2eDataScrapper/Forms/ProgressForm.cs
index fb3d7ad..f262e04 100644
--- a/Pf2eDataScrapper/Forms/ProgressForm.cs
+++ b/Pf2eDataScrapper/Forms/ProgressForm.cs
@@ -1,4 +1,5 @@
-using Pf2eDataScrapper.Processors;
+using Pf2eDataScrapper.Helpers;
+using Pf2eDataScrapper.Processors;
namespace Pf2eDataScrapper.Forms;
diff --git a/Pf2eDataScrapper/Forms/StartForm.Designer.cs b/Pf2eDataScrapper/Forms/StartForm.Designer.cs
index c439d08..06e6f1b 100644
--- a/Pf2eDataScrapper/Forms/StartForm.Designer.cs
+++ b/Pf2eDataScrapper/Forms/StartForm.Designer.cs
@@ -32,7 +32,7 @@ partial class StartForm
PropertiesGroupBox = new GroupBox();
SettingsPropertyGrid = new PropertyGrid();
ProcessorsGroupBox = new GroupBox();
- ProcessorsListView = new ListView();
+ ProcessorCollectionControl = new Pf2eDataScrapper.Forms.Controls.ProcessorCollectionControl();
SelectAllButton = new Button();
DeselectAllButton = new Button();
StartButton = new Button();
@@ -87,7 +87,7 @@ partial class StartForm
// ProcessorsGroupBox
//
ProcessorsGroupBox.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
- ProcessorsGroupBox.Controls.Add(ProcessorsListView);
+ ProcessorsGroupBox.Controls.Add(ProcessorCollectionControl);
ProcessorsGroupBox.Controls.Add(SelectAllButton);
ProcessorsGroupBox.Controls.Add(DeselectAllButton);
ProcessorsGroupBox.Location = new Point(3, 3);
@@ -97,17 +97,13 @@ partial class StartForm
ProcessorsGroupBox.TabStop = false;
ProcessorsGroupBox.Text = "Обработчики";
//
- // ProcessorsListView
+ // ProcessorCollectionControl
//
- ProcessorsListView.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
- ProcessorsListView.CheckBoxes = true;
- ProcessorsListView.Location = new Point(6, 48);
- ProcessorsListView.MultiSelect = false;
- ProcessorsListView.Name = "ProcessorsListView";
- ProcessorsListView.Size = new Size(606, 548);
- ProcessorsListView.TabIndex = 2;
- ProcessorsListView.UseCompatibleStateImageBehavior = false;
- ProcessorsListView.View = View.SmallIcon;
+ ProcessorCollectionControl.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
+ ProcessorCollectionControl.Location = new Point(6, 48);
+ ProcessorCollectionControl.Name = "ProcessorCollectionControl";
+ ProcessorCollectionControl.Size = new Size(609, 548);
+ ProcessorCollectionControl.TabIndex = 2;
//
// SelectAllButton
//
@@ -166,5 +162,5 @@ partial class StartForm
private GroupBox ProcessorsGroupBox;
private Button SelectAllButton;
private Button DeselectAllButton;
- private ListView ProcessorsListView;
+ private Controls.ProcessorCollectionControl ProcessorCollectionControl;
}
\ No newline at end of file
diff --git a/Pf2eDataScrapper/Forms/StartForm.cs b/Pf2eDataScrapper/Forms/StartForm.cs
index feadfe4..a782517 100644
--- a/Pf2eDataScrapper/Forms/StartForm.cs
+++ b/Pf2eDataScrapper/Forms/StartForm.cs
@@ -17,9 +17,10 @@ internal partial class StartForm : Form
private void StartForm_Load(object sender, EventArgs e)
{
- PopulateListView();
+ ProcessorCollectionControl.Collection = ProcessorCollection;
}
+ /*
private void PopulateListView()
{
Dictionary> items = [];
@@ -39,14 +40,10 @@ internal partial class StartForm : Form
continue;
}
- string name =
- group
- .GetType()
- .GetField(group.ToString())
- ?.GetCustomAttribute()
- ?.Description ?? group.ToString();
-
- ListViewGroup listViewGroup = new(name);
+ ListViewGroup listViewGroup = new(group.GetDescription())
+ {
+ TaskLink = "Выбрать/снять все",
+ };
ProcessorsListView.Groups.Add(listViewGroup);
foreach (ProcessorCollectionItem item in list)
@@ -55,13 +52,26 @@ internal partial class StartForm : Form
{
Group = listViewGroup,
Text = item.Description,
- Selected = true,
+ Checked = true,
+ ToolTipText = item.Name,
};
ProcessorsListView.Items.Add(listViewItem);
}
}
}
+ private void ProcessorsListView_GroupTaskLinkClick(object sender, ListViewGroupEventArgs e)
+ {
+ ListViewGroup group = ProcessorsListView.Groups[e.GroupIndex];
+
+ bool allSelected = group.Items.Cast().All(item => item.Checked);
+
+ foreach (ListViewItem item in group.Items.Cast())
+ {
+ item.Checked = !allSelected;
+ }
+ }
+ */
#region "Кнопка старта"
private void StartButton_Click(object sender, EventArgs e)
diff --git a/Pf2eDataScrapper/Helpers/ProcessProgress.cs b/Pf2eDataScrapper/Helpers/ProcessProgress.cs
index 5e2f7cb..ec0e608 100644
--- a/Pf2eDataScrapper/Helpers/ProcessProgress.cs
+++ b/Pf2eDataScrapper/Helpers/ProcessProgress.cs
@@ -1,4 +1,6 @@
-namespace Pf2eDataScrapper.Processors;
+using Pf2eDataScrapper.Processors;
+
+namespace Pf2eDataScrapper.Helpers;
internal class ProcessProgress
{
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/AonprdRepository.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/AonprdRepository.cs
index 4fd6785..9e1a631 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/AonprdRepository.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/AonprdRepository.cs
@@ -1,4 +1,5 @@
using Newtonsoft.Json.Linq;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers.Repositories;
using Pf2eDataScrapper.Processors;
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/RepositoryUpdateProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/RepositoryUpdateProcessor.cs
index 3117e5d..9e7d9c1 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/RepositoryUpdateProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/RepositoryUpdateProcessor.cs
@@ -1,4 +1,5 @@
using Pf2eDataScrapper.App;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers.Implementations.Aonprd.Compendium;
using Pf2eDataScrapper.Processors;
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SchemaBuildProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SchemaBuildProcessor.cs
index 1b1820d..82738ae 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SchemaBuildProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SchemaBuildProcessor.cs
@@ -1,6 +1,6 @@
using Pf2eDataScrapper.App;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers.Implementations.Aonprd.Compendium;
-using Pf2eDataScrapper.Processors;
using Pf2eDataScrapper.SchemaBuilder;
namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Common;
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SkillProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SkillProcessor.cs
index 869aefc..09815a2 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SkillProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SkillProcessor.cs
@@ -10,7 +10,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Common;
[Processor(
"aonprd:skill",
InnerType = "skill",
- Description = "Создание цели внешних ссылок",
+ Description = "Навыки",
Group = ProcessorGroupEnum.AonprdPreparation
)]
internal class SkillProcessor(ProcessorInput input, Pf2eDbContext context)
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SourceProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SourceProcessor.cs
index 80d7b26..c369af6 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SourceProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Common/SourceProcessor.cs
@@ -9,7 +9,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Common;
[Processor(
"aonprd:source",
InnerType = "source",
- Description = "Создание цели внешних ссылок",
+ Description = "Источники",
Group = ProcessorGroupEnum.AonprdPreparation
)]
[ProcessorDependencies(["aonprd:repository"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs
index 4be5018..ad7985a 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs
@@ -15,7 +15,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Subclasse
[Processor(
"aonprd:apparition",
InnerType = "apparition",
- Description = "Создание цели внешних ссылок",
+ Description = "Apparitions",
Group = ProcessorGroupEnum.AonprdSubclasses
)]
[ProcessorDependencies(
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs
index ba385ac..56174e3 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs
@@ -11,7 +11,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:action",
InnerType = "action",
- Description = "Создание цели внешних ссылок",
+ Description = "Действия",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs
index 526f4a3..a3aa582 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs
@@ -13,7 +13,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:ancestry",
InnerType = "ancestry",
- Description = "Создание цели внешних ссылок",
+ Description = "Родословные",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source", "aonprd:language"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs
index 17d848e..a97727a 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs
@@ -12,7 +12,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:archetype",
InnerType = "archetype",
- Description = "Создание цели внешних ссылок",
+ Description = "Архетипы",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs
index b720049..1b9b7cf 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs
@@ -14,7 +14,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:background",
InnerType = "background",
- Description = "Создание цели внешних ссылок",
+ Description = "Предыстории",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs
index 0873bfe..2d3a05f 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs
@@ -18,7 +18,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:class",
InnerType = "class",
- Description = "Создание цели внешних ссылок",
+ Description = "Классы",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source", "aonprd:skill"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs
index b6ef9d6..05a517f 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs
@@ -13,7 +13,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:feat",
InnerType = "feat",
- Description = "Создание цели внешних ссылок",
+ Description = "Черты",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source", "aonprd:archetype"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs
index 8ddf42f..7d2960a 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs
@@ -12,7 +12,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:language",
InnerType = "language",
- Description = "Создание цели внешних ссылок",
+ Description = "Языки",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs
index 0a45e36..5d96c0e 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs
@@ -16,7 +16,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:ritual",
InnerType = "ritual",
- Description = "Создание цели внешних ссылок",
+ Description = "Ритуалы",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source", "aonprd:skill"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs
index aeb25fe..5d6737e 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs
@@ -16,7 +16,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types.Rul
[Processor(
"aonprd:rules",
InnerType = "rules",
- Description = "Создание цели внешних ссылок",
+ Description = "Правила",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source", "aonprd:rules-toc"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs
index 200bae7..6c17394 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs
@@ -15,7 +15,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types.Rul
[Processor(
"aonprd:rules-order",
- Description = "Создание цели внешних ссылок",
+ Description = "Формирование порядка правил",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:rules"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs
index c062fa2..052f55d 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs
@@ -12,7 +12,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types.Rul
[Processor(
"aonprd:rules-toc",
- Description = "Создание цели внешних ссылок",
+ Description = "Загрузка содержания правил",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:source"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs
index 3a427b2..d69b536 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs
@@ -15,7 +15,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:spell",
InnerType = "spell",
- Description = "Создание цели внешних ссылок",
+ Description = "Заклинания",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:trait", "aonprd:source"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs
index 9809b7f..718a5f8 100644
--- a/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs
@@ -12,7 +12,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
[Processor(
"aonprd:trait",
InnerType = "trait",
- Description = "Создание цели внешних ссылок",
+ Description = "Признаки",
Group = ProcessorGroupEnum.AonprdEntities
)]
[ProcessorDependencies(["aonprd:external"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/Processors/ActionProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs
similarity index 84%
rename from Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/Processors/ActionProcessor.cs
rename to Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs
index 0438961..f5e860c 100644
--- a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/Processors/ActionProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs
@@ -1,17 +1,16 @@
using Newtonsoft.Json.Linq;
using Pf2eDataScrapper.App;
using Pf2eDataScrapper.Helpers;
-using Pf2eDataScrapper.Importers.Implementations.FoundryEn.DataBuilder;
using Pf2eDataScrapper.Processors;
using Pf2eModel;
using Pf2eModel.Model.Enum;
-namespace Pf2eDataScrapper.Importers.Implementations.Pf2eFoundry.DataBuilder.Processors;
+namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Entities;
[Processor(
"foundry-en:action",
InnerType = "action",
- Description = "Создание цели внешних ссылок",
+ Description = "Действия",
Group = ProcessorGroupEnum.FoundryEnEntities
)]
[ProcessorDependencies(["foundry-en:compendium"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/Processors/ConditionProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs
similarity index 84%
rename from Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/Processors/ConditionProcessor.cs
rename to Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs
index ce0accd..89a3157 100644
--- a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/Processors/ConditionProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs
@@ -1,18 +1,17 @@
using Newtonsoft.Json.Linq;
using Pf2eDataScrapper.App;
using Pf2eDataScrapper.Helpers;
-using Pf2eDataScrapper.Importers.Implementations.FoundryEn.DataBuilder;
using Pf2eDataScrapper.Processors;
using Pf2eModel;
using Pf2eModel.Model.Enum;
using Pf2eModel.Model.Structure;
-namespace Pf2eDataScrapper.Importers.Implementations.Pf2eFoundry.DataBuilder.Processors;
+namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Entities;
[Processor(
"foundry-en:condition",
InnerType = "Item.condition",
- Description = "Создание цели внешних ссылок",
+ Description = "Состояния",
Group = ProcessorGroupEnum.FoundryEnEntities
)]
[ProcessorDependencies(["foundry-en:compendium"])]
diff --git a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/FoundryEnAbstractProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs
similarity index 98%
rename from Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/FoundryEnAbstractProcessor.cs
rename to Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs
index 95d8c2a..829fc9d 100644
--- a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/DataBuilder/FoundryEnAbstractProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs
@@ -13,7 +13,7 @@ using Pf2eModel.Model.Common.I18n;
using Pf2eModel.Model.Enum;
using Pf2eModel.Model.Structure;
-namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.DataBuilder;
+namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors;
internal abstract class FoundryEnAbstractProcessor(
DatabaseHelper databaseHelper,
diff --git a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumItemsProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumItemsProcessor.cs
index 8afe640..77e661f 100644
--- a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumItemsProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumItemsProcessor.cs
@@ -1,5 +1,6 @@
using Newtonsoft.Json.Linq;
using Pf2eDataScrapper.App;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2eDataScrapper.Processors;
diff --git a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs
index ccfb96f..1fcdbfa 100644
--- a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs
@@ -1,4 +1,5 @@
using Pf2eDataScrapper.App;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Processors;
namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
diff --git a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs
index 34b2cfc..5f55eb5 100644
--- a/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs
+++ b/Pf2eDataScrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs
@@ -1,6 +1,5 @@
using Pf2eDataScrapper.App;
-using Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
-using Pf2eDataScrapper.Processors;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.SchemaBuilder;
namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -8,7 +7,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Prepar
[Processor(
"foundry-en:schema",
Description = "Построение схемы данных",
- Group = ProcessorGroupEnum.AonprdPreparation
+ Group = ProcessorGroupEnum.FoundryEnPreparation
)]
[ProcessorDependencies(["foundry-en:compendium"])]
internal class SchemaBuildProcessor(
diff --git a/Pf2eDataScrapper/Importers/Repositories/AbstractImporterRepository.cs b/Pf2eDataScrapper/Importers/Repositories/AbstractImporterRepository.cs
index c88d524..9d09d4a 100644
--- a/Pf2eDataScrapper/Importers/Repositories/AbstractImporterRepository.cs
+++ b/Pf2eDataScrapper/Importers/Repositories/AbstractImporterRepository.cs
@@ -1,4 +1,5 @@
-using Pf2eDataScrapper.Processors;
+using Pf2eDataScrapper.Helpers;
+using Pf2eDataScrapper.Processors;
namespace Pf2eDataScrapper.Importers.Repositories;
diff --git a/Pf2eDataScrapper/Importers/Repositories/GitRepository.cs b/Pf2eDataScrapper/Importers/Repositories/GitRepository.cs
index ab73ea2..db78e45 100644
--- a/Pf2eDataScrapper/Importers/Repositories/GitRepository.cs
+++ b/Pf2eDataScrapper/Importers/Repositories/GitRepository.cs
@@ -1,4 +1,5 @@
using System.Diagnostics;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Processors;
namespace Pf2eDataScrapper.Importers.Repositories;
diff --git a/Pf2eDataScrapper/Pf2eDataScrapper.csproj b/Pf2eDataScrapper/Pf2eDataScrapper.csproj
index 504d388..bb9ae8f 100644
--- a/Pf2eDataScrapper/Pf2eDataScrapper.csproj
+++ b/Pf2eDataScrapper/Pf2eDataScrapper.csproj
@@ -33,4 +33,7 @@
Always
+
+
+
diff --git a/Pf2eDataScrapper/Processors/ProcessorExecutor.cs b/Pf2eDataScrapper/Processors/ProcessorExecutor.cs
index 2d425b1..1de918c 100644
--- a/Pf2eDataScrapper/Processors/ProcessorExecutor.cs
+++ b/Pf2eDataScrapper/Processors/ProcessorExecutor.cs
@@ -2,6 +2,7 @@
using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json.Linq;
using Pf2eDataScrapper.App;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers;
using Pf2eDataScrapper.Importers.Implementations.Aonprd;
using Pf2eDataScrapper.Importers.Implementations.Aonprd.Compendium;
diff --git a/Pf2eDataScrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs b/Pf2eDataScrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs
index 8e449d4..bce0c7b 100644
--- a/Pf2eDataScrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs
+++ b/Pf2eDataScrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs
@@ -1,4 +1,5 @@
using Newtonsoft.Json.Linq;
+using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers;
using Pf2eDataScrapper.Processors;