2 Commits
580 changed files with 184425 additions and 204419 deletions
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors').[AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor')
## AbstractEntityProcessor\.Context Property
Предоставляет механизм для освобождения неуправляемых ресурсов\.
```csharp
public Pf2eModel.Pf2eDbContext Context { get; }
```
#### Property Value
[Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
@@ -1,14 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors').[AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor')
## AbstractEntityProcessor\.GetEntityName\(\) Method
Получает имя сущности из входных данных\.
```csharp
protected virtual string GetEntityName();
```
#### Returns
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Имя сущности\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors').[AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor')
## AbstractEntityProcessor\.Globals Property
Класс\-помощник, хранящий необходимые глобальные данные\.
```csharp
public Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers.AonprdBuilderGlobals Globals { get; }
```
#### Property Value
[AonprdBuilderGlobals](AonprdBuilderGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers\.AonprdBuilderGlobals')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors').[AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor')
## AbstractEntityProcessor\.Helper Property
Класс предоставляет методы для работы с базой данных\.
```csharp
public Pf2eDataScrapper.Helpers.DatabaseHelper Helper { get; }
```
#### Property Value
[DatabaseHelper](DatabaseHelper.md 'Pf2eDataScrapper\.Helpers\.DatabaseHelper')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors').[AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor')
## AbstractEntityProcessor\.Name Property
Название сущности, которое будет использоваться для обработки данных\.
```csharp
public string Name { get; }
```
#### Property Value
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
@@ -39,11 +39,7 @@ Derived
| Properties | | | Properties | |
| :--- | :--- | | :--- | :--- |
| [Context](AbstractEntityProcessor.Context.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Context') | Предоставляет механизм для освобождения неуправляемых ресурсов\. |
| [Entity](AbstractEntityProcessor.Entity.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Entity') | Корневая сущность\. | | [Entity](AbstractEntityProcessor.Entity.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Entity') | Корневая сущность\. |
| [Globals](AbstractEntityProcessor.Globals.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Globals') | Класс\-помощник, хранящий необходимые глобальные данные\. |
| [Helper](AbstractEntityProcessor.Helper.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Helper') | Класс предоставляет методы для работы с базой данных\. |
| [Name](AbstractEntityProcessor.Name.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Name') | Название сущности, которое будет использоваться для обработки данных\. |
| [Object](AbstractEntityProcessor.Object.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Object') | Основная сущность\. | | [Object](AbstractEntityProcessor.Object.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Object') | Основная сущность\. |
| [Type](AbstractEntityProcessor.Type.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Type') | Тип сущности\. | | [Type](AbstractEntityProcessor.Type.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Type') | Тип сущности\. |
@@ -60,6 +56,5 @@ Derived
| [Check\(\)](AbstractEntityProcessor.Check().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Check\(\)') | Проверки необходимости импорта сущности\. | | [Check\(\)](AbstractEntityProcessor.Check().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Check\(\)') | Проверки необходимости импорта сущности\. |
| [GenerateJsonString\(ICollection&lt;string&gt;\)](AbstractEntityProcessor.GenerateJsonString(ICollection_string_).md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GenerateJsonString\(System\.Collections\.Generic\.ICollection\<string\>\)') | Генерация JSON\-строки из объектов, располагаюхися по путям, указанным в [paths](AbstractEntityProcessor.GenerateJsonString(ICollection_string_).md#Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.AbstractEntityProcessor.GenerateJsonString(System.Collections.Generic.ICollection_string_).paths 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GenerateJsonString\(System\.Collections\.Generic\.ICollection\<string\>\)\.paths')\. | | [GenerateJsonString\(ICollection&lt;string&gt;\)](AbstractEntityProcessor.GenerateJsonString(ICollection_string_).md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GenerateJsonString\(System\.Collections\.Generic\.ICollection\<string\>\)') | Генерация JSON\-строки из объектов, располагаюхися по путям, указанным в [paths](AbstractEntityProcessor.GenerateJsonString(ICollection_string_).md#Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.AbstractEntityProcessor.GenerateJsonString(System.Collections.Generic.ICollection_string_).paths 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GenerateJsonString\(System\.Collections\.Generic\.ICollection\<string\>\)\.paths')\. |
| [GetDescription\(\)](AbstractEntityProcessor.GetDescription().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GetDescription\(\)') | Сгенерировать описание сущности\. | | [GetDescription\(\)](AbstractEntityProcessor.GetDescription().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GetDescription\(\)') | Сгенерировать описание сущности\. |
| [GetEntityName\(\)](AbstractEntityProcessor.GetEntityName().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.GetEntityName\(\)') | Получает имя сущности из входных данных\. |
| [Process\(\)](AbstractEntityProcessor.Process().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Process\(\)') | Основной метод обработки данных\. | | [Process\(\)](AbstractEntityProcessor.Process().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Process\(\)') | Основной метод обработки данных\. |
| [Save\(\)](AbstractEntityProcessor.Save().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Save\(\)') | Метод для сохранения изменений в базе данных\. | | [Save\(\)](AbstractEntityProcessor.Save().md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor\.Save\(\)') | Метод для сохранения изменений в базе данных\. |
@@ -17,7 +17,6 @@ Derived
&#8627; [AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor') &#8627; [AbstractEntityProcessor](AbstractEntityProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.AbstractEntityProcessor')
&#8627; [SkillProcessor](SkillProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Preparation\.SkillProcessor') &#8627; [SkillProcessor](SkillProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Preparation\.SkillProcessor')
&#8627; [SourceProcessor](SourceProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Preparation\.SourceProcessor') &#8627; [SourceProcessor](SourceProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Preparation\.SourceProcessor')
&#8627; [FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
Implements [IProcessor](IProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor') Implements [IProcessor](IProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor')
@@ -1,27 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers](Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers').[AonprdBuilderGlobals](AonprdBuilderGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers\.AonprdBuilderGlobals')
## AonprdBuilderGlobals\.JsonToDictionary\(JObject, string\) Method
Преобразовать JSON\-объект в словарь\.
```csharp
public static System.Collections.Generic.Dictionary<string,string> JsonToDictionary(Newtonsoft.Json.Linq.JObject json, string tokenPath);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers.AonprdBuilderGlobals.JsonToDictionary(Newtonsoft.Json.Linq.JObject,string).json'></a>
`json` [Newtonsoft\.Json\.Linq\.JObject](https://docs.microsoft.com/en-us/dotnet/api/Newtonsoft.Json.Linq.JObject 'Newtonsoft\.Json\.Linq\.JObject')
Исходный JSON\-объект\.
<a name='Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers.AonprdBuilderGlobals.JsonToDictionary(Newtonsoft.Json.Linq.JObject,string).tokenPath'></a>
`tokenPath` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Путь к токену в JSON\.
#### Returns
[System\.Collections\.Generic\.Dictionary&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[,](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')
Результирующий словарь\.
@@ -28,4 +28,3 @@ Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.
| Methods | | | Methods | |
| :--- | :--- | | :--- | :--- |
| [GetSlugSuffix\(string\)](AonprdBuilderGlobals.GetSlugSuffix(string).md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers\.AonprdBuilderGlobals\.GetSlugSuffix\(string\)') | Получить суффикс для ссылки\. | | [GetSlugSuffix\(string\)](AonprdBuilderGlobals.GetSlugSuffix(string).md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers\.AonprdBuilderGlobals\.GetSlugSuffix\(string\)') | Получить суффикс для ссылки\. |
| [JsonToDictionary\(JObject, string\)](AonprdBuilderGlobals.JsonToDictionary(JObject,string).md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Helpers\.AonprdBuilderGlobals\.JsonToDictionary\(Newtonsoft\.Json\.Linq\.JObject, string\)') | Преобразовать JSON\-объект в словарь\. |
@@ -0,0 +1,10 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium')
## CompendiumDocumentType Enum
Тип документов компендиума\.
```csharp
internal enum CompendiumDocumentType
```
@@ -0,0 +1,47 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder Constructors
| Overloads | |
| :--- | :--- |
| [CompendiumFolder\(JObject\)](CompendiumFolder.CompendiumFolder.md#Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(Newtonsoft.Json.Linq.JObject) 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.CompendiumFolder\(Newtonsoft\.Json\.Linq\.JObject\)') | Конструктор папки компендиума из JSON\-объекта\. |
| [CompendiumFolder\(string, string\)](CompendiumFolder.CompendiumFolder.md#Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(string,string) 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.CompendiumFolder\(string, string\)') | Конструктор папки компендиума\. |
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(Newtonsoft.Json.Linq.JObject)'></a>
## CompendiumFolder\(JObject\) Constructor
Конструктор папки компендиума из JSON\-объекта\.
```csharp
public CompendiumFolder(Newtonsoft.Json.Linq.JObject json);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(Newtonsoft.Json.Linq.JObject).json'></a>
`json` [Newtonsoft\.Json\.Linq\.JObject](https://docs.microsoft.com/en-us/dotnet/api/Newtonsoft.Json.Linq.JObject 'Newtonsoft\.Json\.Linq\.JObject')
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(string,string)'></a>
## CompendiumFolder\(string, string\) Constructor
Конструктор папки компендиума\.
```csharp
public CompendiumFolder(string id, string name);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(string,string).id'></a>
`id` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Идентификатор папки\.
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(string,string).name'></a>
`name` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Название папки\.
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.Id Property
Идентификатор папки\.
```csharp
public string Id { get; }
```
#### Property Value
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.IsContained Property
Указатель, что папка содержится в других папках\.
```csharp
public bool IsContained { get; }
```
#### Property Value
[System\.Boolean](https://docs.microsoft.com/en-us/dotnet/api/System.Boolean 'System\.Boolean')
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.Name Property
Название папки\.
```csharp
public string Name { get; }
```
#### Property Value
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.Parent Property
Родительская папка\.
```csharp
public Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder? Parent { get; set; }
```
#### Property Value
[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.Path Property
Путь к папке\.
```csharp
public string? Path { get; }
```
#### Property Value
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
@@ -0,0 +1,14 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.ToString\(\) Method
Строковое представление данных о папки компендиума\.
```csharp
public override string ToString();
```
#### Returns
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Строковое представление данных о папки компендиума\.
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
## CompendiumFolder\.Type Property
Тип документов в папке\.
```csharp
public Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumDocumentType Type { get; }
```
#### Property Value
[CompendiumDocumentType](CompendiumDocumentType.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumDocumentType')
@@ -0,0 +1,30 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium')
## CompendiumFolder Class
Папка компендиума\.
```csharp
internal class CompendiumFolder
```
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; CompendiumFolder
| Constructors | |
| :--- | :--- |
| [CompendiumFolder\(JObject\)](CompendiumFolder.CompendiumFolder.md#Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(Newtonsoft.Json.Linq.JObject) 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.CompendiumFolder\(Newtonsoft\.Json\.Linq\.JObject\)') | Конструктор папки компендиума из JSON\-объекта\. |
| [CompendiumFolder\(string, string\)](CompendiumFolder.CompendiumFolder.md#Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder.CompendiumFolder(string,string) 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.CompendiumFolder\(string, string\)') | Конструктор папки компендиума\. |
| Properties | |
| :--- | :--- |
| [Id](CompendiumFolder.Id.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.Id') | Идентификатор папки\. |
| [IsContained](CompendiumFolder.IsContained.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.IsContained') | Указатель, что папка содержится в других папках\. |
| [Name](CompendiumFolder.Name.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.Name') | Название папки\. |
| [Parent](CompendiumFolder.Parent.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.Parent') | Родительская папка\. |
| [Path](CompendiumFolder.Path.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.Path') | Путь к папке\. |
| [Type](CompendiumFolder.Type.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.Type') | Тип документов в папке\. |
| Methods | |
| :--- | :--- |
| [ToString\(\)](CompendiumFolder.ToString().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\.ToString\(\)') | Строковое представление данных о папки компендиума\. |
@@ -0,0 +1,17 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolderCollection](CompendiumFolderCollection.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection')
## CompendiumFolderCollection\.Add\(CompendiumFolder\) Method
Добавление информации о папке\.
```csharp
public void Add(Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder folder);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolderCollection.Add(Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder).folder'></a>
`folder` [CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
Добавляемая папка\.
@@ -0,0 +1,21 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolderCollection](CompendiumFolderCollection.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection')
## CompendiumFolderCollection\.GetById\(string\) Method
Получение папки по идентификатору
```csharp
public Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder? GetById(string id);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolderCollection.GetById(string).id'></a>
`id` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Искомый идентификатор
#### Returns
[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
Искомая папка
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[CompendiumFolderCollection](CompendiumFolderCollection.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection')
## CompendiumFolderCollection\.Items Property
Список загруженных папок\.
```csharp
public System.Collections.Generic.List<Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder> Items { get; }
```
#### Property Value
[System\.Collections\.Generic\.List&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.List-1 'System\.Collections\.Generic\.List\`1')[CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.List-1 'System\.Collections\.Generic\.List\`1')
@@ -0,0 +1,21 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium')
## CompendiumFolderCollection Class
Коллекция папок компендиума
```csharp
internal class CompendiumFolderCollection
```
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; CompendiumFolderCollection
| Properties | |
| :--- | :--- |
| [Items](CompendiumFolderCollection.Items.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection\.Items') | Список загруженных папок\. |
| Methods | |
| :--- | :--- |
| [Add\(CompendiumFolder\)](CompendiumFolderCollection.Add(CompendiumFolder).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection\.Add\(Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\)') | Добавление информации о папке\. |
| [GetById\(string\)](CompendiumFolderCollection.GetById(string).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection\.GetById\(string\)') | Получение папки по идентификатору |
@@ -0,0 +1,10 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation').[CompendiumFolderProcessor](CompendiumFolderProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.CompendiumFolderProcessor')
## CompendiumFolderProcessor\.LoadPacks\(\) Method
Загрузка основных папок\.
```csharp
private void LoadPacks();
```
@@ -0,0 +1,19 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation').[CompendiumFolderProcessor](CompendiumFolderProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.CompendiumFolderProcessor')
## CompendiumFolderProcessor\.ProcessPackFolders\(JArray, CompendiumFolder\) Method
Обработка папок компендиума в поле \`packFolders\`\.
```csharp
private void ProcessPackFolders(Newtonsoft.Json.Linq.JArray folders, Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder? parent);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.CompendiumFolderProcessor.ProcessPackFolders(Newtonsoft.Json.Linq.JArray,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder).folders'></a>
`folders` [Newtonsoft\.Json\.Linq\.JArray](https://docs.microsoft.com/en-us/dotnet/api/Newtonsoft.Json.Linq.JArray 'Newtonsoft\.Json\.Linq\.JArray')
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.CompendiumFolderProcessor.ProcessPackFolders(Newtonsoft.Json.Linq.JArray,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolder).parent'></a>
`parent` [CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder')
@@ -0,0 +1,17 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation')
## CompendiumFolderProcessor Class
```csharp
internal class CompendiumFolderProcessor : Pf2eDataScrapper.Processors.Definitions.IProcessor
```
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; CompendiumFolderProcessor
Implements [IProcessor](IProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor')
| Methods | |
| :--- | :--- |
| [LoadPacks\(\)](CompendiumFolderProcessor.LoadPacks().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.CompendiumFolderProcessor\.LoadPacks\(\)') | Загрузка основных папок\. |
| [ProcessPackFolders\(JArray, CompendiumFolder\)](CompendiumFolderProcessor.ProcessPackFolders(JArray,CompendiumFolder).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.CompendiumFolderProcessor\.ProcessPackFolders\(Newtonsoft\.Json\.Linq\.JArray, Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder\)') | Обработка папок компендиума в поле \`packFolders\`\. |
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Helpers](Pf2eDataScrapper.Helpers.md 'Pf2eDataScrapper\.Helpers').[EntityView](EntityView.md 'Pf2eDataScrapper\.Helpers\.EntityView')
## EntityView\.Context Property
Контекст базы данных, используемый для получения сущностей\.
```csharp
private Pf2eModel.Pf2eDbContext Context { private get; }
```
#### Property Value
[Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
@@ -6,7 +6,7 @@
Корневая сущность\. Корневая сущность\.
```csharp ```csharp
public Pf2eModel.Model.Base.Entity Entity { get; } public Pf2eModel.Model.Base.Entity? Entity { get; }
``` ```
#### Property Value #### Property Value
@@ -0,0 +1,29 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Helpers](Pf2eDataScrapper.Helpers.md 'Pf2eDataScrapper\.Helpers').[EntityView](EntityView.md 'Pf2eDataScrapper\.Helpers\.EntityView')
## EntityView\(Pf2eDbContext, EntityType, int\) Constructor
Конструктор класса, который получает сущность из базы данных и заполняет её данными\.
```csharp
public EntityView(Pf2eModel.Pf2eDbContext context, Pf2eModel.Model.Enum.EntityType type, int id);
```
#### Parameters
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int).context'></a>
`context` [Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
Контекст базы данных\.
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int).type'></a>
`type` [Pf2eModel\.Model\.Enum\.EntityType](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Enum.EntityType 'Pf2eModel\.Model\.Enum\.EntityType')
Тип запрашиваемой сущности\.
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int).id'></a>
`id` [System\.Int32](https://docs.microsoft.com/en-us/dotnet/api/System.Int32 'System\.Int32')
Идентификатор запрашиваемой сущности\.
@@ -1,61 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Helpers](Pf2eDataScrapper.Helpers.md 'Pf2eDataScrapper\.Helpers').[EntityView](EntityView.md 'Pf2eDataScrapper\.Helpers\.EntityView')
## EntityView Constructors
| Overloads | |
| :--- | :--- |
| [EntityView\(Pf2eDbContext, Entity\)](EntityView.EntityView.md#Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Base.Entity) 'Pf2eDataScrapper\.Helpers\.EntityView\.EntityView\(Pf2eModel\.Pf2eDbContext, Pf2eModel\.Model\.Base\.Entity\)') | Конструктор класса, который получает сущность из базы данных по переданной сущности и заполняет её данными\. |
| [EntityView\(Pf2eDbContext, EntityType, int\)](EntityView.EntityView.md#Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int) 'Pf2eDataScrapper\.Helpers\.EntityView\.EntityView\(Pf2eModel\.Pf2eDbContext, Pf2eModel\.Model\.Enum\.EntityType, int\)') | Конструктор класса, который получает сущность из базы данных по типу и идентификатору и заполняет её данными\. |
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Base.Entity)'></a>
## EntityView\(Pf2eDbContext, Entity\) Constructor
Конструктор класса, который получает сущность из базы данных по переданной сущности и заполняет её данными\.
```csharp
public EntityView(Pf2eModel.Pf2eDbContext context, Pf2eModel.Model.Base.Entity entity);
```
#### Parameters
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Base.Entity).context'></a>
`context` [Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
Контекст базы данных\.
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Base.Entity).entity'></a>
`entity` [Pf2eModel\.Model\.Base\.Entity](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Base.Entity 'Pf2eModel\.Model\.Base\.Entity')
Сущность, которую нужно обработать\.
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int)'></a>
## EntityView\(Pf2eDbContext, EntityType, int\) Constructor
Конструктор класса, который получает сущность из базы данных по типу и идентификатору и заполняет её данными\.
```csharp
public EntityView(Pf2eModel.Pf2eDbContext context, Pf2eModel.Model.Enum.EntityType type, int id);
```
#### Parameters
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int).context'></a>
`context` [Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
Контекст базы данных\.
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int).type'></a>
`type` [Pf2eModel\.Model\.Enum\.EntityType](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Enum.EntityType 'Pf2eModel\.Model\.Enum\.EntityType')
Тип запрашиваемой сущности\.
<a name='Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int).id'></a>
`id` [System\.Int32](https://docs.microsoft.com/en-us/dotnet/api/System.Int32 'System\.Int32')
Идентификатор запрашиваемой сущности\.
@@ -1,27 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Helpers](Pf2eDataScrapper.Helpers.md 'Pf2eDataScrapper\.Helpers').[EntityView](EntityView.md 'Pf2eDataScrapper\.Helpers\.EntityView')
## EntityView\.GetEntity\(EntityType, int\) Method
Получает сущность из базы данных по типу и идентификатору\.
```csharp
private Pf2eModel.Model.Base.Entity GetEntity(Pf2eModel.Model.Enum.EntityType type, int id);
```
#### Parameters
<a name='Pf2eDataScrapper.Helpers.EntityView.GetEntity(Pf2eModel.Model.Enum.EntityType,int).type'></a>
`type` [Pf2eModel\.Model\.Enum\.EntityType](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Enum.EntityType 'Pf2eModel\.Model\.Enum\.EntityType')
Тип сущности\.
<a name='Pf2eDataScrapper.Helpers.EntityView.GetEntity(Pf2eModel.Model.Enum.EntityType,int).id'></a>
`id` [System\.Int32](https://docs.microsoft.com/en-us/dotnet/api/System.Int32 'System\.Int32')
Идентификатор сущности\.
#### Returns
[Pf2eModel\.Model\.Base\.Entity](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Base.Entity 'Pf2eModel\.Model\.Base\.Entity')
Сущность, соответствующая указанному типу и идентификатору\.
@@ -1,27 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Helpers](Pf2eDataScrapper.Helpers.md 'Pf2eDataScrapper\.Helpers').[EntityView](EntityView.md 'Pf2eDataScrapper\.Helpers\.EntityView')
## EntityView\.GetSubEntity\(EntityType, int\) Method
Получает подчинённую сущность по типу и идентификатору\.
```csharp
private Pf2eModel.Model.IEntity? GetSubEntity(Pf2eModel.Model.Enum.EntityType type, int id);
```
#### Parameters
<a name='Pf2eDataScrapper.Helpers.EntityView.GetSubEntity(Pf2eModel.Model.Enum.EntityType,int).type'></a>
`type` [Pf2eModel\.Model\.Enum\.EntityType](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Enum.EntityType 'Pf2eModel\.Model\.Enum\.EntityType')
Тип сущности\.
<a name='Pf2eDataScrapper.Helpers.EntityView.GetSubEntity(Pf2eModel.Model.Enum.EntityType,int).id'></a>
`id` [System\.Int32](https://docs.microsoft.com/en-us/dotnet/api/System.Int32 'System\.Int32')
Идентификатор сущности\.
#### Returns
[Pf2eModel\.Model\.IEntity](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.IEntity 'Pf2eModel\.Model\.IEntity')
Подчинённая сущность, соответствующая указанному типу и идентификатору\.
+1 -8
View File
@@ -13,8 +13,7 @@ Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.
| Constructors | | | Constructors | |
| :--- | :--- | | :--- | :--- |
| [EntityView\(Pf2eDbContext, Entity\)](EntityView.EntityView.md#Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Base.Entity) 'Pf2eDataScrapper\.Helpers\.EntityView\.EntityView\(Pf2eModel\.Pf2eDbContext, Pf2eModel\.Model\.Base\.Entity\)') | Конструктор класса, который получает сущность из базы данных по переданной сущности и заполняет её данными\. | | [EntityView\(Pf2eDbContext, EntityType, int\)](EntityView.EntityView(Pf2eDbContext,EntityType,int).md 'Pf2eDataScrapper\.Helpers\.EntityView\.EntityView\(Pf2eModel\.Pf2eDbContext, Pf2eModel\.Model\.Enum\.EntityType, int\)') | Конструктор класса, который получает сущность из базы данных и заполняет её данными\. |
| [EntityView\(Pf2eDbContext, EntityType, int\)](EntityView.EntityView.md#Pf2eDataScrapper.Helpers.EntityView.EntityView(Pf2eModel.Pf2eDbContext,Pf2eModel.Model.Enum.EntityType,int) 'Pf2eDataScrapper\.Helpers\.EntityView\.EntityView\(Pf2eModel\.Pf2eDbContext, Pf2eModel\.Model\.Enum\.EntityType, int\)') | Конструктор класса, который получает сущность из базы данных по типу и идентификатору и заполняет её данными\. |
| Fields | | | Fields | |
| :--- | :--- | | :--- | :--- |
@@ -22,11 +21,5 @@ Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.
| Properties | | | Properties | |
| :--- | :--- | | :--- | :--- |
| [Context](EntityView.Context.md 'Pf2eDataScrapper\.Helpers\.EntityView\.Context') | Контекст базы данных, используемый для получения сущностей\. |
| [Entity](EntityView.Entity.md 'Pf2eDataScrapper\.Helpers\.EntityView\.Entity') | Корневая сущность\. | | [Entity](EntityView.Entity.md 'Pf2eDataScrapper\.Helpers\.EntityView\.Entity') | Корневая сущность\. |
| [SubEntity](EntityView.SubEntity.md 'Pf2eDataScrapper\.Helpers\.EntityView\.SubEntity') | Основная сущность\. | | [SubEntity](EntityView.SubEntity.md 'Pf2eDataScrapper\.Helpers\.EntityView\.SubEntity') | Основная сущность\. |
| Methods | |
| :--- | :--- |
| [GetEntity\(EntityType, int\)](EntityView.GetEntity(EntityType,int).md 'Pf2eDataScrapper\.Helpers\.EntityView\.GetEntity\(Pf2eModel\.Model\.Enum\.EntityType, int\)') | Получает сущность из базы данных по типу и идентификатору\. |
| [GetSubEntity\(EntityType, int\)](EntityView.GetSubEntity(EntityType,int).md 'Pf2eDataScrapper\.Helpers\.EntityView\.GetSubEntity\(Pf2eModel\.Model\.Enum\.EntityType, int\)') | Получает подчинённую сущность по типу и идентификатору\. |
@@ -1,10 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.AddExternal\(\) Method
Генерация внешних ссылок сущности\.
```csharp
protected virtual void AddExternal();
```
@@ -1,10 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.CheckEntity\(\) Method
Проверяет входные данные на наличие идентификатора сущности и игнорирует её, если она указана в списке игнорируемых\.
```csharp
public virtual void CheckEntity();
```
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Context Property
Предоставляет механизм для освобождения неуправляемых ресурсов\.
```csharp
public Pf2eModel.Pf2eDbContext Context { get; }
```
#### Property Value
[Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Entity Property
Основная сущность, которая будет использоваться для обработки данных\.
```csharp
public Pf2eModel.Model.Base.Entity Entity { get; }
```
#### Property Value
[Pf2eModel\.Model\.Base\.Entity](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Base.Entity 'Pf2eModel\.Model\.Base\.Entity')
@@ -1,37 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\(DatabaseHelper, Pf2eDbContext, FoundryEnGlobals, ProcessorInput\) Constructor
Абстрактный класс\-обработчик сущностей, полученных из молуля Foundry pf2e\.
Класс предназначен для обработки данных с помощью различных обработчиков,
для которых указан атрибут [ProcessorAttribute](ProcessorAttribute.md 'Pf2eDataScrapper\.Processors\.Attributes\.ProcessorAttribute')\.
```csharp
protected FoundryEnAbstractProcessor(Pf2eDataScrapper.Helpers.DatabaseHelper databaseHelper, Pf2eModel.Pf2eDbContext context, Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals globals, Pf2eDataScrapper.Processors.ProcessorInput input);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.FoundryEnAbstractProcessor_TEntity_.FoundryEnAbstractProcessor(Pf2eDataScrapper.Helpers.DatabaseHelper,Pf2eModel.Pf2eDbContext,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals,Pf2eDataScrapper.Processors.ProcessorInput).databaseHelper'></a>
`databaseHelper` [DatabaseHelper](DatabaseHelper.md 'Pf2eDataScrapper\.Helpers\.DatabaseHelper')
\[DI\] \<inheritdoc cref="T:Pf2eDataScrapper\.Helpers\.DatabaseHelper" /\>
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.FoundryEnAbstractProcessor_TEntity_.FoundryEnAbstractProcessor(Pf2eDataScrapper.Helpers.DatabaseHelper,Pf2eModel.Pf2eDbContext,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals,Pf2eDataScrapper.Processors.ProcessorInput).context'></a>
`context` [Pf2eModel\.Pf2eDbContext](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Pf2eDbContext 'Pf2eModel\.Pf2eDbContext')
\[DI\] \<inheritdoc cref="T:Pf2eModel\.Pf2eDbContext" /\>
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.FoundryEnAbstractProcessor_TEntity_.FoundryEnAbstractProcessor(Pf2eDataScrapper.Helpers.DatabaseHelper,Pf2eModel.Pf2eDbContext,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals,Pf2eDataScrapper.Processors.ProcessorInput).globals'></a>
`globals` [FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
\[DI\] \<inheritdoc cref="T:Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals" /\>
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.FoundryEnAbstractProcessor_TEntity_.FoundryEnAbstractProcessor(Pf2eDataScrapper.Helpers.DatabaseHelper,Pf2eModel.Pf2eDbContext,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals,Pf2eDataScrapper.Processors.ProcessorInput).input'></a>
`input` [ProcessorInput](ProcessorInput.md 'Pf2eDataScrapper\.Processors\.ProcessorInput')
Объект обработки вводимого JSON\.
@@ -1,14 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.GetEntityName\(\) Method
Получить имя сущности из входных данных\.
```csharp
protected virtual string GetEntityName();
```
#### Returns
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Имя сущности\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Globals Property
Глобальные константы и утилиты для импорта данных в формате Foundry En\.
```csharp
public Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals Globals { get; }
```
#### Property Value
[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Helper Property
Класс предоставляет методы для работы с базой данных\.
```csharp
protected Pf2eDataScrapper.Helpers.DatabaseHelper Helper { protected get; }
```
#### Property Value
[DatabaseHelper](DatabaseHelper.md 'Pf2eDataScrapper\.Helpers\.DatabaseHelper')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Name Property
Название сущности, которое будет использоваться для обработки данных\.
```csharp
public string Name { get; }
```
#### Property Value
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Object Property
Подчинённая сущность, которая будет использоваться для обработки данных\.
```csharp
public TEntity Object { get; }
```
#### Property Value
[TEntity](FoundryEnAbstractProcessor_TEntity_.md#Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.FoundryEnAbstractProcessor_TEntity_.TEntity 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.TEntity')
@@ -1,12 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Process\(\) Method
Основной метод обработки данных\.
```csharp
public override void Process();
```
Implements [Process\(\)](IProcessor.Process().md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor\.Process\(\)')
@@ -1,14 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.ResolveEntity\(\) Method
Разрешает сущность, основываясь на входных данных\.
```csharp
public virtual int ResolveEntity();
```
#### Returns
[System\.Int32](https://docs.microsoft.com/en-us/dotnet/api/System.Int32 'System\.Int32')
Идентификатор сущности\.
@@ -1,12 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Save\(\) Method
Метод для сохранения изменений в базе данных\.
```csharp
public override void Save();
```
Implements [Save\(\)](IProcessor.Save().md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor\.Save\(\)')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.Type Property
Тип сущности\.
```csharp
public abstract Pf2eModel.Model.Enum.EntityType Type { get; }
```
#### Property Value
[Pf2eModel\.Model\.Enum\.EntityType](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Enum.EntityType 'Pf2eModel\.Model\.Enum\.EntityType')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors').[FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>')
## FoundryEnAbstractProcessor\<TEntity\>\.View Property
Представление сущности, которое будет использоваться для обработки данных\.
```csharp
public Pf2eDataScrapper.Helpers.EntityView View { get; private set; }
```
#### Property Value
[EntityView](EntityView.md 'Pf2eDataScrapper\.Helpers\.EntityView')
@@ -1,44 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors')
## FoundryEnAbstractProcessor\<TEntity\> Class
Абстрактный класс\-обработчик сущностей, полученных из молуля Foundry pf2e\.
Класс предназначен для обработки данных с помощью различных обработчиков,
для которых указан атрибут [ProcessorAttribute](ProcessorAttribute.md 'Pf2eDataScrapper\.Processors\.Attributes\.ProcessorAttribute')\.
```csharp
internal abstract class FoundryEnAbstractProcessor<TEntity> : Pf2eDataScrapper.Processors.Definitions.AbstractInputProcessor
where TEntity : class, Pf2eModel.Model.IEntity
```
#### Type parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.FoundryEnAbstractProcessor_TEntity_.TEntity'></a>
`TEntity`
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; [AbstractInputProcessor](AbstractInputProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.AbstractInputProcessor') &#129106; FoundryEnAbstractProcessor<TEntity>
| Constructors | |
| :--- | :--- |
| [FoundryEnAbstractProcessor\(DatabaseHelper, Pf2eDbContext, FoundryEnGlobals, ProcessorInput\)](FoundryEnAbstractProcessor_TEntity_.FoundryEnAbstractProcessor(DatabaseHelper,Pf2eDbContext,FoundryEnGlobals,ProcessorInput).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.FoundryEnAbstractProcessor\(Pf2eDataScrapper\.Helpers\.DatabaseHelper, Pf2eModel\.Pf2eDbContext, Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals, Pf2eDataScrapper\.Processors\.ProcessorInput\)') | Абстрактный класс\-обработчик сущностей, полученных из молуля Foundry pf2e\. Класс предназначен для обработки данных с помощью различных обработчиков, для которых указан атрибут [ProcessorAttribute](ProcessorAttribute.md 'Pf2eDataScrapper\.Processors\.Attributes\.ProcessorAttribute')\. |
| Properties | |
| :--- | :--- |
| [Context](FoundryEnAbstractProcessor_TEntity_.Context.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Context') | Предоставляет механизм для освобождения неуправляемых ресурсов\. |
| [Entity](FoundryEnAbstractProcessor_TEntity_.Entity.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Entity') | Основная сущность, которая будет использоваться для обработки данных\. |
| [Globals](FoundryEnAbstractProcessor_TEntity_.Globals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Globals') | Глобальные константы и утилиты для импорта данных в формате Foundry En\. |
| [Helper](FoundryEnAbstractProcessor_TEntity_.Helper.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Helper') | Класс предоставляет методы для работы с базой данных\. |
| [Name](FoundryEnAbstractProcessor_TEntity_.Name.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Name') | Название сущности, которое будет использоваться для обработки данных\. |
| [Object](FoundryEnAbstractProcessor_TEntity_.Object.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Object') | Подчинённая сущность, которая будет использоваться для обработки данных\. |
| [Type](FoundryEnAbstractProcessor_TEntity_.Type.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Type') | Тип сущности\. |
| [View](FoundryEnAbstractProcessor_TEntity_.View.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.View') | Представление сущности, которое будет использоваться для обработки данных\. |
| Methods | |
| :--- | :--- |
| [AddExternal\(\)](FoundryEnAbstractProcessor_TEntity_.AddExternal().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.AddExternal\(\)') | Генерация внешних ссылок сущности\. |
| [CheckEntity\(\)](FoundryEnAbstractProcessor_TEntity_.CheckEntity().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.CheckEntity\(\)') | Проверяет входные данные на наличие идентификатора сущности и игнорирует её, если она указана в списке игнорируемых\. |
| [GetEntityName\(\)](FoundryEnAbstractProcessor_TEntity_.GetEntityName().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.GetEntityName\(\)') | Получить имя сущности из входных данных\. |
| [Process\(\)](FoundryEnAbstractProcessor_TEntity_.Process().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Process\(\)') | Основной метод обработки данных\. |
| [ResolveEntity\(\)](FoundryEnAbstractProcessor_TEntity_.ResolveEntity().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.ResolveEntity\(\)') | Разрешает сущность, основываясь на входных данных\. |
| [Save\(\)](FoundryEnAbstractProcessor_TEntity_.Save().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>\.Save\(\)') | Метод для сохранения изменений в базе данных\. |
@@ -0,0 +1,13 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[FoundryEnCompendium](FoundryEnCompendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium')
## FoundryEnCompendium\.Folders Property
Набор папок компендиума
```csharp
public Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolderCollection Folders { get; }
```
#### Property Value
[CompendiumFolderCollection](CompendiumFolderCollection.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection')
@@ -1,17 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[FoundryEnCompendium](FoundryEnCompendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium')
## FoundryEnCompendium\(FoundryEnRepository\) Constructor
Загрузчик данных компендиума\.
```csharp
public FoundryEnCompendium(Pf2eDataScrapper.Importers.Implementations.FoundryEn.FoundryEnRepository repository);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.FoundryEnCompendium.FoundryEnCompendium(Pf2eDataScrapper.Importers.Implementations.FoundryEn.FoundryEnRepository).repository'></a>
`repository` [FoundryEnRepository](FoundryEnRepository.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.FoundryEnRepository')
\<inheritdoc cref="T:Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.FoundryEnRepository" /\>
@@ -0,0 +1,23 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium').[FoundryEnCompendium](FoundryEnCompendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium')
## FoundryEnCompendium\(FoundryEnRepository, CompendiumFolderCollection\) Constructor
Загрузчик данных компендиума\.
```csharp
public FoundryEnCompendium(Pf2eDataScrapper.Importers.Implementations.FoundryEn.FoundryEnRepository repository, Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolderCollection folders);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.FoundryEnCompendium.FoundryEnCompendium(Pf2eDataScrapper.Importers.Implementations.FoundryEn.FoundryEnRepository,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolderCollection).repository'></a>
`repository` [FoundryEnRepository](FoundryEnRepository.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.FoundryEnRepository')
Репозиторий данных\.
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.FoundryEnCompendium.FoundryEnCompendium(Pf2eDataScrapper.Importers.Implementations.FoundryEn.FoundryEnRepository,Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.CompendiumFolderCollection).folders'></a>
`folders` [CompendiumFolderCollection](CompendiumFolderCollection.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection')
\[DI\] Коллекция папок компендиумов\.
@@ -13,10 +13,11 @@ Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.
| Constructors | | | Constructors | |
| :--- | :--- | | :--- | :--- |
| [FoundryEnCompendium\(FoundryEnRepository\)](FoundryEnCompendium.FoundryEnCompendium(FoundryEnRepository).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.FoundryEnCompendium\(Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.FoundryEnRepository\)') | Загрузчик данных компендиума\. | | [FoundryEnCompendium\(FoundryEnRepository, CompendiumFolderCollection\)](FoundryEnCompendium.FoundryEnCompendium(FoundryEnRepository,CompendiumFolderCollection).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.FoundryEnCompendium\(Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.FoundryEnRepository, Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection\)') | Загрузчик данных компендиума\. |
| Properties | | | Properties | |
| :--- | :--- | | :--- | :--- |
| [Folders](FoundryEnCompendium.Folders.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.Folders') | Набор папок компендиума |
| [Items](FoundryEnCompendium.Items.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.Items') | Коллекция всех записей компендиума\. | | [Items](FoundryEnCompendium.Items.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.Items') | Коллекция всех записей компендиума\. |
| [Repository](FoundryEnCompendium.Repository.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.Repository') | Репозиторий данных\. | | [Repository](FoundryEnCompendium.Repository.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium\.Repository') | Репозиторий данных\. |
@@ -1,10 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\(\) Constructor
Конструктор класса [FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')\.
```csharp
public FoundryEnGlobals();
```
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\.FoundryTarget Property
Цель внешних ссылок для Foundry En\.
```csharp
public Pf2eModel.Model.Base.Targets.ExternalTarget FoundryTarget { get; set; }
```
#### Property Value
[Pf2eModel\.Model\.Base\.Targets\.ExternalTarget](https://docs.microsoft.com/en-us/dotnet/api/Pf2eModel.Model.Base.Targets.ExternalTarget 'Pf2eModel\.Model\.Base\.Targets\.ExternalTarget')
@@ -1,21 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\.GetSlugSuffix\(string\) Method
Получить суффикс для ссылки\.
```csharp
public string GetSlugSuffix(string id);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals.GetSlugSuffix(string).id'></a>
`id` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Идентификатор Aonprd\.
#### Returns
[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Суффикс для ссылки или пустая строка\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\.Ignore Property
Список идентификаторв пропускаемых сущностей\.
```csharp
public System.Collections.Generic.List<string> Ignore { get; }
```
#### Property Value
[System\.Collections\.Generic\.List&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.List-1 'System\.Collections\.Generic\.List\`1')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.List-1 'System\.Collections\.Generic\.List\`1')
@@ -1,27 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\.JsonToDictionary\(JObject, string\) Method
Преобразовать JSON\-объект в словарь\.
```csharp
public static System.Collections.Generic.Dictionary<string,string> JsonToDictionary(Newtonsoft.Json.Linq.JObject json, string tokenPath);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals.JsonToDictionary(Newtonsoft.Json.Linq.JObject,string).json'></a>
`json` [Newtonsoft\.Json\.Linq\.JObject](https://docs.microsoft.com/en-us/dotnet/api/Newtonsoft.Json.Linq.JObject 'Newtonsoft\.Json\.Linq\.JObject')
Исходный JSON\-объект\.
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.FoundryEnGlobals.JsonToDictionary(Newtonsoft.Json.Linq.JObject,string).tokenPath'></a>
`tokenPath` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Путь к токену в JSON\.
#### Returns
[System\.Collections\.Generic\.Dictionary&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[,](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')
Результирующий словарь\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\.MatchToAonprd Property
Словарь соответствий идентификаторов Aonprd к Foundry En\.
```csharp
public System.Collections.Generic.Dictionary<string,string> MatchToAonprd { get; }
```
#### Property Value
[System\.Collections\.Generic\.Dictionary&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[,](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers').[FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')
## FoundryEnGlobals\.SlugSuffixes Property
Словарей суффиксов для сущностей\.
```csharp
public System.Collections.Generic.Dictionary<string,string> SlugSuffixes { get; }
```
#### Property Value
[System\.Collections\.Generic\.Dictionary&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[,](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 'System\.Collections\.Generic\.Dictionary\`2')
@@ -1,28 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers')
## FoundryEnGlobals Class
Глобальные константы и утилиты для импорта данных в формате Foundry En\.
```csharp
internal class FoundryEnGlobals
```
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; FoundryEnGlobals
| Constructors | |
| :--- | :--- |
| [FoundryEnGlobals\(\)](FoundryEnGlobals.FoundryEnGlobals().md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.FoundryEnGlobals\(\)') | Конструктор класса [FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals')\. |
| Properties | |
| :--- | :--- |
| [FoundryTarget](FoundryEnGlobals.FoundryTarget.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.FoundryTarget') | Цель внешних ссылок для Foundry En\. |
| [Ignore](FoundryEnGlobals.Ignore.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.Ignore') | Список идентификаторв пропускаемых сущностей\. |
| [MatchToAonprd](FoundryEnGlobals.MatchToAonprd.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.MatchToAonprd') | Словарь соответствий идентификаторов Aonprd к Foundry En\. |
| [SlugSuffixes](FoundryEnGlobals.SlugSuffixes.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.SlugSuffixes') | Словарей суффиксов для сущностей\. |
| Methods | |
| :--- | :--- |
| [GetSlugSuffix\(string\)](FoundryEnGlobals.GetSlugSuffix(string).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.GetSlugSuffix\(string\)') | Получить суффикс для ссылки\. |
| [JsonToDictionary\(JObject, string\)](FoundryEnGlobals.JsonToDictionary(JObject,string).md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals\.JsonToDictionary\(Newtonsoft\.Json\.Linq\.JObject, string\)') | Преобразовать JSON\-объект в словарь\. |
@@ -6,10 +6,10 @@
Git\-репозиторий данных FoundryVTT\-модуля "pf2e"\. Git\-репозиторий данных FoundryVTT\-модуля "pf2e"\.
```csharp ```csharp
internal class FoundryEnRepository : Pf2eDataScrapper.Importers.Repositories.AbstractGitHubRepository internal class FoundryEnRepository : Pf2eDataScrapper.Importers.Repositories.GitRepository
``` ```
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; [AbstractImporterRepository](AbstractImporterRepository.md 'Pf2eDataScrapper\.Importers\.Repositories\.AbstractImporterRepository') &#129106; [Pf2eDataScrapper\.Importers\.Repositories\.AbstractGitHubRepository](https://docs.microsoft.com/en-us/dotnet/api/Pf2eDataScrapper.Importers.Repositories.AbstractGitHubRepository 'Pf2eDataScrapper\.Importers\.Repositories\.AbstractGitHubRepository') &#129106; FoundryEnRepository Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; [AbstractImporterRepository](AbstractImporterRepository.md 'Pf2eDataScrapper\.Importers\.Repositories\.AbstractImporterRepository') &#129106; [GitRepository](GitRepository.md 'Pf2eDataScrapper\.Importers\.Repositories\.GitRepository') &#129106; FoundryEnRepository
| Constructors | | | Constructors | |
| :--- | :--- | | :--- | :--- |
@@ -11,6 +11,9 @@ internal class GitRepository : Pf2eDataScrapper.Importers.Repositories.AbstractI
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; [AbstractImporterRepository](AbstractImporterRepository.md 'Pf2eDataScrapper\.Importers\.Repositories\.AbstractImporterRepository') &#129106; GitRepository Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; [AbstractImporterRepository](AbstractImporterRepository.md 'Pf2eDataScrapper\.Importers\.Repositories\.AbstractImporterRepository') &#129106; GitRepository
Derived
&#8627; [FoundryEnRepository](FoundryEnRepository.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.FoundryEnRepository')
| Constructors | | | Constructors | |
| :--- | :--- | | :--- | :--- |
| [GitRepository\(AbstractImporter, string\)](GitRepository.GitRepository(AbstractImporter,string).md 'Pf2eDataScrapper\.Importers\.Repositories\.GitRepository\.GitRepository\(Pf2eDataScrapper\.Importers\.AbstractImporter, string\)') | Репозиторий, загружающий данные из GIT\-источника\. | | [GitRepository\(AbstractImporter, string\)](GitRepository.GitRepository(AbstractImporter,string).md 'Pf2eDataScrapper\.Importers\.Repositories\.GitRepository\.GitRepository\(Pf2eDataScrapper\.Importers\.AbstractImporter, string\)') | Репозиторий, загружающий данные из GIT\-источника\. |
@@ -12,6 +12,7 @@ public interface IProcessor
Derived Derived
&#8627; [RulesOrderProcessor](RulesOrderProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules\.RulesOrderProcessor') &#8627; [RulesOrderProcessor](RulesOrderProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules\.RulesOrderProcessor')
&#8627; [RulesTocProcessor](RulesTocProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules\.RulesTocProcessor') &#8627; [RulesTocProcessor](RulesTocProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules\.RulesTocProcessor')
&#8627; [CompendiumFolderProcessor](CompendiumFolderProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.CompendiumFolderProcessor')
&#8627; [AbstractInputProcessor](AbstractInputProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.AbstractInputProcessor') &#8627; [AbstractInputProcessor](AbstractInputProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.AbstractInputProcessor')
&#8627; [AbstractSimpleProcessor](AbstractSimpleProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.AbstractSimpleProcessor') &#8627; [AbstractSimpleProcessor](AbstractSimpleProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.AbstractSimpleProcessor')
&#8627; [AbstractSchemaBuildProcessor](AbstractSchemaBuildProcessor.md 'Pf2eDataScrapper\.SchemaBuilder\.AbstractSchemaBuildProcessor') &#8627; [AbstractSchemaBuildProcessor](AbstractSchemaBuildProcessor.md 'Pf2eDataScrapper\.SchemaBuilder\.AbstractSchemaBuildProcessor')
@@ -6,5 +6,11 @@
| Classes | | | Classes | |
| :--- | :--- | | :--- | :--- |
| [CompendiumFolder](CompendiumFolder.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolder') | Папка компендиума\. |
| [CompendiumFolderCollection](CompendiumFolderCollection.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumFolderCollection') | Коллекция папок компендиума |
| [FoundryEnCompendium](FoundryEnCompendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium') | Загрузчик данных компендиума\. | | [FoundryEnCompendium](FoundryEnCompendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendium') | Загрузчик данных компендиума\. |
| [FoundryEnCompendiumItem](FoundryEnCompendiumItem.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendiumItem') | Ссылка на сущность с указанием файла, в котором она хранится\. | | [FoundryEnCompendiumItem](FoundryEnCompendiumItem.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.FoundryEnCompendiumItem') | Ссылка на сущность с указанием файла, в котором она хранится\. |
| Enums | |
| :--- | :--- |
| [CompendiumDocumentType](CompendiumDocumentType.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium\.CompendiumDocumentType') | Тип документов компендиума\. |
@@ -1,7 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
## Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers Namespace
| Classes | |
| :--- | :--- |
| [FoundryEnGlobals](FoundryEnGlobals.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers\.FoundryEnGlobals') | Глобальные константы и утилиты для импорта данных в формате Foundry En\. |
@@ -6,5 +6,6 @@
| Classes | | | Classes | |
| :--- | :--- | | :--- | :--- |
| [CompendiumFolderProcessor](CompendiumFolderProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.CompendiumFolderProcessor') | |
| [SchemaBuildProcessor](SchemaBuildProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.SchemaBuildProcessor') | | | [SchemaBuildProcessor](SchemaBuildProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.SchemaBuildProcessor') | |
| [SchemaTypeResolver](SchemaTypeResolver.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.SchemaTypeResolver') | | | [SchemaTypeResolver](SchemaTypeResolver.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.SchemaTypeResolver') | |
@@ -1,7 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
## Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors Namespace
| Classes | |
| :--- | :--- |
| [FoundryEnAbstractProcessor&lt;TEntity&gt;](FoundryEnAbstractProcessor_TEntity_.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.FoundryEnAbstractProcessor\<TEntity\>') | Абстрактный класс\-обработчик сущностей, полученных из молуля Foundry pf2e\. Класс предназначен для обработки данных с помощью различных обработчиков, для которых указан атрибут [ProcessorAttribute](ProcessorAttribute.md 'Pf2eDataScrapper\.Processors\.Attributes\.ProcessorAttribute')\. |
@@ -8,7 +8,6 @@
| :--- | :--- | | :--- | :--- |
| [EnumSolver&lt;TEnum&gt;](EnumSolver_TEnum_.md 'Pf2eDataScrapper\.Processors\.EnumSolver\<TEnum\>') | Абстрактный класс для разрешения значений перечислений\. | | [EnumSolver&lt;TEnum&gt;](EnumSolver_TEnum_.md 'Pf2eDataScrapper\.Processors\.EnumSolver\<TEnum\>') | Абстрактный класс для разрешения значений перечислений\. |
| [LegacyItemException](LegacyItemException.md 'Pf2eDataScrapper\.Processors\.LegacyItemException') | Исключение, показывающее, что обработка сущности пропускается как устаревшая\. | | [LegacyItemException](LegacyItemException.md 'Pf2eDataScrapper\.Processors\.LegacyItemException') | Исключение, показывающее, что обработка сущности пропускается как устаревшая\. |
| [ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor') | Класс, выполняющий обработку коллекции обработчиков\. |
| [ProcessorInput](ProcessorInput.md 'Pf2eDataScrapper\.Processors\.ProcessorInput') | Класс для работы с JSON\-объектом\. | | [ProcessorInput](ProcessorInput.md 'Pf2eDataScrapper\.Processors\.ProcessorInput') | Класс для работы с JSON\-объектом\. |
| [ProcessorInput\.InvalidEnumStringException](ProcessorInput.InvalidEnumStringException.md 'Pf2eDataScrapper\.Processors\.ProcessorInput\.InvalidEnumStringException') | Исключение при неверном значении для перечисленния\. | | [ProcessorInput\.InvalidEnumStringException](ProcessorInput.InvalidEnumStringException.md 'Pf2eDataScrapper\.Processors\.ProcessorInput\.InvalidEnumStringException') | Исключение при неверном значении для перечисленния\. |
| [SilentSkipItemException](SilentSkipItemException.md 'Pf2eDataScrapper\.Processors\.SilentSkipItemException') | Исключение, показывающее, что обработка сущности пропускается без вывода сообщения\. | | [SilentSkipItemException](SilentSkipItemException.md 'Pf2eDataScrapper\.Processors\.SilentSkipItemException') | Исключение, показывающее, что обработка сущности пропускается без вывода сообщения\. |
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.Collection Property
Класс с коллекцией обработчиков\.
```csharp
public Pf2eDataScrapper.Processors.Collection.ProcessorCollection Collection { get; }
```
#### Property Value
[ProcessorCollection](ProcessorCollection.md 'Pf2eDataScrapper\.Processors\.Collection\.ProcessorCollection')
@@ -1,14 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.Continue\(\) Method
Переходит к обработке следующего элемента в коллекции или завершает процесс, если все элементы были обработаны\.
```csharp
private void Continue();
```
### Remarks
Этот метод увеличивает текущий индекс и определяет, начинать ли обработку следующего элемента или завершить
процесс\. Если текущий индекс превышает количество элементов в коллекции, процесс помечается как завершенный\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.CurrentFactory Property
Текущая фабрика процессоров, которая используется для обработки\.
```csharp
private Pf2eDataScrapper.Processors.Factory.AbstractProcessorFactory CurrentFactory { private get; private set; }
```
#### Property Value
[AbstractProcessorFactory](AbstractProcessorFactory.md 'Pf2eDataScrapper\.Processors\.Factory\.AbstractProcessorFactory')
@@ -1,20 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.IterateProcessors\(\) Method
Выполняет итерацию по всем процессорам, предоставленным текущей фабрикой\.
```csharp
private System.Collections.Generic.IEnumerable<Pf2eDataScrapper.Processors.Definitions.IProcessor> IterateProcessors();
```
#### Returns
[System\.Collections\.Generic\.IEnumerable&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.IEnumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[IProcessor](IProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.IEnumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')
Перечисляемая коллекция экземпляров [IProcessor](IProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor'),
представляющая процессоры, доступные в текущей фабрике\.
### Remarks
Этот метод выдает каждый процессор последовательно, позволяя вызывающему
обрабатывать их по одному за раз\. Отслеживание прогресса обновляется для каждого
процессора во время итерации\.
@@ -1,29 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\(ProcessorCollection, ProcessProgress, ApplicationSettings\) Constructor
Класс, выполняющий обработку коллекции обработчиков\.
```csharp
public ProcessorExecutor(Pf2eDataScrapper.Processors.Collection.ProcessorCollection collection, Pf2eDataScrapper.Helpers.ProcessProgress progress, Pf2eDataScrapper.ApplicationSettings settings);
```
#### Parameters
<a name='Pf2eDataScrapper.Processors.ProcessorExecutor.ProcessorExecutor(Pf2eDataScrapper.Processors.Collection.ProcessorCollection,Pf2eDataScrapper.Helpers.ProcessProgress,Pf2eDataScrapper.ApplicationSettings).collection'></a>
`collection` [ProcessorCollection](ProcessorCollection.md 'Pf2eDataScrapper\.Processors\.Collection\.ProcessorCollection')
\[DI\] \<inheritdoc cref="T:Pf2eDataScrapper\.Processors\.Collection\.ProcessorCollection" /\>
<a name='Pf2eDataScrapper.Processors.ProcessorExecutor.ProcessorExecutor(Pf2eDataScrapper.Processors.Collection.ProcessorCollection,Pf2eDataScrapper.Helpers.ProcessProgress,Pf2eDataScrapper.ApplicationSettings).progress'></a>
`progress` [ProcessProgress](ProcessProgress.md 'Pf2eDataScrapper\.Helpers\.ProcessProgress')
\[DI\] \<inheritdoc cref="T:Pf2eDataScrapper\.Helpers\.ProcessProgress" /\>
<a name='Pf2eDataScrapper.Processors.ProcessorExecutor.ProcessorExecutor(Pf2eDataScrapper.Processors.Collection.ProcessorCollection,Pf2eDataScrapper.Helpers.ProcessProgress,Pf2eDataScrapper.ApplicationSettings).settings'></a>
`settings` [ApplicationSettings](ApplicationSettings.md 'Pf2eDataScrapper\.ApplicationSettings')
\[DI\] \<inheritdoc cref="T:Pf2eDataScrapper\.ApplicationSettings" /\>
@@ -1,35 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.RunProcessor\(IProcessor, ParallelLoopState, long\) Method
Запускает указанный процессор для выполнения операций обработки и сохранения\.
```csharp
private void RunProcessor(Pf2eDataScrapper.Processors.Definitions.IProcessor processor, System.Threading.Tasks.ParallelLoopState state, long arg3);
```
#### Parameters
<a name='Pf2eDataScrapper.Processors.ProcessorExecutor.RunProcessor(Pf2eDataScrapper.Processors.Definitions.IProcessor,System.Threading.Tasks.ParallelLoopState,long).processor'></a>
`processor` [IProcessor](IProcessor.md 'Pf2eDataScrapper\.Processors\.Definitions\.IProcessor')
Экземпляр процессора, выполняющий операции обработки и сохранения\.
<a name='Pf2eDataScrapper.Processors.ProcessorExecutor.RunProcessor(Pf2eDataScrapper.Processors.Definitions.IProcessor,System.Threading.Tasks.ParallelLoopState,long).state'></a>
`state` [System\.Threading\.Tasks\.ParallelLoopState](https://docs.microsoft.com/en-us/dotnet/api/System.Threading.Tasks.ParallelLoopState 'System\.Threading\.Tasks\.ParallelLoopState')
Экземпляр [System\.Threading\.Tasks\.ParallelLoopState](https://docs.microsoft.com/en-us/dotnet/api/System.Threading.Tasks.ParallelLoopState 'System\.Threading\.Tasks\.ParallelLoopState'), который можно использовать для управления выполнением
параллельного цикла\.
<a name='Pf2eDataScrapper.Processors.ProcessorExecutor.RunProcessor(Pf2eDataScrapper.Processors.Definitions.IProcessor,System.Threading.Tasks.ParallelLoopState,long).arg3'></a>
`arg3` [System\.Int64](https://docs.microsoft.com/en-us/dotnet/api/System.Int64 'System\.Int64')
Длинное значение, представляющее текущий индекс итерации или связанные данные для процессора\.
### Remarks
Если процессор выдает [SkipItemException](SkipItemException.md 'Pf2eDataScrapper\.Processors\.SkipItemException'), сообщение об исключении
регистрируется как информационный прогресс\. Если выдается [SilentSkipItemException](SilentSkipItemException.md 'Pf2eDataScrapper\.Processors\.SilentSkipItemException'),
оно молча игнорируется\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.Settings Property
Настройки программы\.
```csharp
public Pf2eDataScrapper.ApplicationSettings Settings { get; }
```
#### Property Value
[ApplicationSettings](ApplicationSettings.md 'Pf2eDataScrapper\.ApplicationSettings')
@@ -1,10 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.Start\(\) Method
Запускает обработку коллекции обработчиков\.
```csharp
public void Start();
```
@@ -1,17 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.StartItem\(\) Method
Инициирует обработку текущего элемента в коллекции\.
```csharp
private void StartItem();
```
### Remarks
Этот метод извлекает текущий элемент из коллекции, подготавливает связанную
фабрику и запускает фоновый обработчик для обработки задач элемента\. Обработка
выполняется параллельно, если конфигурация элемента это позволяет, со степенью
параллелизма, определяемой настройками приложения\. После завершения обработки метод
переходит к следующему шагу рабочего процесса\.
@@ -1,13 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors').[ProcessorExecutor](ProcessorExecutor.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor')
## ProcessorExecutor\.\_currentIndex Field
Текущий индекс обрабатываемого элемента в коллекции\.
```csharp
private int _currentIndex;
```
#### Field Value
[System\.Int32](https://docs.microsoft.com/en-us/dotnet/api/System.Int32 'System\.Int32')
@@ -1,34 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors')
## ProcessorExecutor Class
Класс, выполняющий обработку коллекции обработчиков\.
```csharp
internal sealed class ProcessorExecutor
```
Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.Object 'System\.Object') &#129106; ProcessorExecutor
| Constructors | |
| :--- | :--- |
| [ProcessorExecutor\(ProcessorCollection, ProcessProgress, ApplicationSettings\)](ProcessorExecutor.ProcessorExecutor(ProcessorCollection,ProcessProgress,ApplicationSettings).md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.ProcessorExecutor\(Pf2eDataScrapper\.Processors\.Collection\.ProcessorCollection, Pf2eDataScrapper\.Helpers\.ProcessProgress, Pf2eDataScrapper\.ApplicationSettings\)') | Класс, выполняющий обработку коллекции обработчиков\. |
| Fields | |
| :--- | :--- |
| [\_currentIndex](ProcessorExecutor._currentIndex.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.\_currentIndex') | Текущий индекс обрабатываемого элемента в коллекции\. |
| Properties | |
| :--- | :--- |
| [Collection](ProcessorExecutor.Collection.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.Collection') | Класс с коллекцией обработчиков\. |
| [CurrentFactory](ProcessorExecutor.CurrentFactory.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.CurrentFactory') | Текущая фабрика процессоров, которая используется для обработки\. |
| [Settings](ProcessorExecutor.Settings.md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.Settings') | Настройки программы\. |
| Methods | |
| :--- | :--- |
| [Continue\(\)](ProcessorExecutor.Continue().md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.Continue\(\)') | Переходит к обработке следующего элемента в коллекции или завершает процесс, если все элементы были обработаны\. |
| [IterateProcessors\(\)](ProcessorExecutor.IterateProcessors().md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.IterateProcessors\(\)') | Выполняет итерацию по всем процессорам, предоставленным текущей фабрикой\. |
| [RunProcessor\(IProcessor, ParallelLoopState, long\)](ProcessorExecutor.RunProcessor(IProcessor,ParallelLoopState,long).md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.RunProcessor\(Pf2eDataScrapper\.Processors\.Definitions\.IProcessor, System\.Threading\.Tasks\.ParallelLoopState, long\)') | Запускает указанный процессор для выполнения операций обработки и сохранения\. |
| [Start\(\)](ProcessorExecutor.Start().md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.Start\(\)') | Запускает обработку коллекции обработчиков\. |
| [StartItem\(\)](ProcessorExecutor.StartItem().md 'Pf2eDataScrapper\.Processors\.ProcessorExecutor\.StartItem\(\)') | Инициирует обработку текущего элемента в коллекции\. |
@@ -1,21 +0,0 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation').[SchemaBuildProcessor](SchemaBuildProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.SchemaBuildProcessor')
## SchemaBuildProcessor\.GetSchemaNodes\(AbstractCompendiumItem\) Method
Получить список названий элементов структуры данных на основе вводимого элемента\.
```csharp
protected override System.Collections.Generic.ICollection<string> GetSchemaNodes(Pf2eDataScrapper.Importers.AbstractCompendiumItem item);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.SchemaBuildProcessor.GetSchemaNodes(Pf2eDataScrapper.Importers.AbstractCompendiumItem).item'></a>
`item` [AbstractCompendiumItem](AbstractCompendiumItem.md 'Pf2eDataScrapper\.Importers\.AbstractCompendiumItem')
Вводимый элемент
#### Returns
[System\.Collections\.Generic\.ICollection&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.ICollection-1 'System\.Collections\.Generic\.ICollection\`1')[System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.ICollection-1 'System\.Collections\.Generic\.ICollection\`1')
Коллекция названий элементов структуры данных/
@@ -0,0 +1,21 @@
#### [Pf2eDataScrapper](index.md 'index')
### [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation').[SchemaBuildProcessor](SchemaBuildProcessor.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation\.SchemaBuildProcessor')
## SchemaBuildProcessor\.GetSchemaNodes\(string\) Method
Выбор целевых элементом схемы данных для типа элемента\.
```csharp
private System.Collections.Generic.List<Pf2eDataScrapper.SchemaBuilder.SchemaNode> GetSchemaNodes(string type);
```
#### Parameters
<a name='Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.SchemaBuildProcessor.GetSchemaNodes(string).type'></a>
`type` [System\.String](https://docs.microsoft.com/en-us/dotnet/api/System.String 'System\.String')
Тип входного элемента\.
#### Returns
[System\.Collections\.Generic\.List&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.List-1 'System\.Collections\.Generic\.List\`1')[SchemaNode](SchemaNode.md 'Pf2eDataScrapper\.SchemaBuilder\.SchemaNode')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.List-1 'System\.Collections\.Generic\.List\`1')
Список целевых элементов схемы данных\.
-2
View File
@@ -17,8 +17,6 @@
| [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types.Rules.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules') | Обработчики правил с сайта [Archives of Nethys Pathfinder 2e](https://aonprd.com/ 'https://aonprd\.com/')\. | | [Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules](Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types.Rules.md 'Pf2eDataScrapper\.Importers\.Implementations\.Aonprd\.Processors\.Types\.Rules') | Обработчики правил с сайта [Archives of Nethys Pathfinder 2e](https://aonprd.com/ 'https://aonprd\.com/')\. |
| [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn](Pf2eDataScrapper.Importers.Implementations.FoundryEn.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn') | Импортёр данных из модуля [pf2e](https://github.com/foundryvtt/pf2e 'https://github\.com/foundryvtt/pf2e') для FoundryVTT\. | | [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn](Pf2eDataScrapper.Importers.Implementations.FoundryEn.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn') | Импортёр данных из модуля [pf2e](https://github.com/foundryvtt/pf2e 'https://github\.com/foundryvtt/pf2e') для FoundryVTT\. |
| [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium') | Компендиум данных из модуля [pf2e](https://github.com/foundryvtt/pf2e 'https://github\.com/foundryvtt/pf2e') для FoundryVTT\. | | [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Compendium') | Компендиум данных из модуля [pf2e](https://github.com/foundryvtt/pf2e 'https://github\.com/foundryvtt/pf2e') для FoundryVTT\. |
| [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Helpers') | |
| [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors') | |
| [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation') | Обработчики для подготовки данных из модуля [pf2e](https://github.com/foundryvtt/pf2e 'https://github\.com/foundryvtt/pf2e') для FoundryVTT\. | | [Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation](Pf2eDataScrapper.Importers.Implementations.FoundryEn.Processors.Preparation.md 'Pf2eDataScrapper\.Importers\.Implementations\.FoundryEn\.Processors\.Preparation') | Обработчики для подготовки данных из модуля [pf2e](https://github.com/foundryvtt/pf2e 'https://github\.com/foundryvtt/pf2e') для FoundryVTT\. |
| [Pf2eDataScrapper\.Importers\.Repositories](Pf2eDataScrapper.Importers.Repositories.md 'Pf2eDataScrapper\.Importers\.Repositories') | Общее описание репозиториев для хранения данных, которые используются в импортёрах и процессорах\. | | [Pf2eDataScrapper\.Importers\.Repositories](Pf2eDataScrapper.Importers.Repositories.md 'Pf2eDataScrapper\.Importers\.Repositories') | Общее описание репозиториев для хранения данных, которые используются в импортёрах и процессорах\. |
| [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors') | Общее описание обработчиков данных\. | | [Pf2eDataScrapper\.Processors](Pf2eDataScrapper.Processors.md 'Pf2eDataScrapper\.Processors') | Общее описание обработчиков данных\. |
+24 -6
View File
@@ -40,38 +40,56 @@ public enum ActionCategory
Действие классовой черты\. Действие классовой черты\.
<a name='Pf2eModel.Model.Enum.ActionCategory.Offensive'></a>
`Offensive` 5
Действие атаки\.
<a name='Pf2eModel.Model.Enum.ActionCategory.Defensive'></a>
`Defensive` 6
Действие защиты\.
<a name='Pf2eModel.Model.Enum.ActionCategory.Interaction'></a>
`Interaction` 7
Действие взаимодействия\.
<a name='Pf2eModel.Model.Enum.ActionCategory.Familiar'></a> <a name='Pf2eModel.Model.Enum.ActionCategory.Familiar'></a>
`Familiar` 5 `Familiar` 8
Действие фамильяра\. Действие фамильяра\.
<a name='Pf2eModel.Model.Enum.ActionCategory.ArmyTactic'></a> <a name='Pf2eModel.Model.Enum.ActionCategory.ArmyTactic'></a>
`ArmyTactic` 6 `ArmyTactic` 9
Действие тактики армии\. Действие тактики армии\.
<a name='Pf2eModel.Model.Enum.ActionCategory.ArmyWarAction'></a> <a name='Pf2eModel.Model.Enum.ActionCategory.ArmyWarAction'></a>
`ArmyWarAction` 7 `ArmyWarAction` 10
Действие войны армии\. Действие войны армии\.
<a name='Pf2eModel.Model.Enum.ActionCategory.KingdomActivity'></a> <a name='Pf2eModel.Model.Enum.ActionCategory.KingdomActivity'></a>
`KingdomActivity` 8 `KingdomActivity` 11
Активность королевства\. Активность королевства\.
<a name='Pf2eModel.Model.Enum.ActionCategory.KingdomFeat'></a> <a name='Pf2eModel.Model.Enum.ActionCategory.KingdomFeat'></a>
`KingdomFeat` 9 `KingdomFeat` 12
Действие черты королевства\. Действие черты королевства\.
<a name='Pf2eModel.Model.Enum.ActionCategory.KingdomFeature'></a> <a name='Pf2eModel.Model.Enum.ActionCategory.KingdomFeature'></a>
`KingdomFeature` 10 `KingdomFeature` 13
Действие особенности королевства\. Действие особенности королевства\.
@@ -1,13 +0,0 @@
#### [Pf2eModel](index.md 'index')
### [Pf2eModel\.Model\.Base](Pf2eModel.Model.Base.md 'Pf2eModel\.Model\.Base').[Entity](Entity.md 'Pf2eModel\.Model\.Base\.Entity')
## Entity\.IsLegacy Property
Флаг, указывающий, что сущность является устаревшей\.
```csharp
public System.Nullable<bool> IsLegacy { get; set; }
```
#### Property Value
[System\.Nullable&lt;](https://docs.microsoft.com/en-us/dotnet/api/System.Nullable-1 'System\.Nullable\`1')[System\.Boolean](https://docs.microsoft.com/en-us/dotnet/api/System.Boolean 'System\.Boolean')[&gt;](https://docs.microsoft.com/en-us/dotnet/api/System.Nullable-1 'System\.Nullable\`1')
-1
View File
@@ -19,7 +19,6 @@ Inheritance [System\.Object](https://docs.microsoft.com/en-us/dotnet/api/System.
| [Id](Entity.Id.md 'Pf2eModel\.Model\.Base\.Entity\.Id') | Идентификатор сущности\. | | [Id](Entity.Id.md 'Pf2eModel\.Model\.Base\.Entity\.Id') | Идентификатор сущности\. |
| [Img](Entity.Img.md 'Pf2eModel\.Model\.Base\.Entity\.Img') | Изображение сущности\. | | [Img](Entity.Img.md 'Pf2eModel\.Model\.Base\.Entity\.Img') | Изображение сущности\. |
| [IsChecked](Entity.IsChecked.md 'Pf2eModel\.Model\.Base\.Entity\.IsChecked') | Флаг, указывающий, что объект был проверен и не требует автоматической перезаписи\. | | [IsChecked](Entity.IsChecked.md 'Pf2eModel\.Model\.Base\.Entity\.IsChecked') | Флаг, указывающий, что объект был проверен и не требует автоматической перезаписи\. |
| [IsLegacy](Entity.IsLegacy.md 'Pf2eModel\.Model\.Base\.Entity\.IsLegacy') | Флаг, указывающий, что сущность является устаревшей\. |
| [IsTranslated](Entity.IsTranslated.md 'Pf2eModel\.Model\.Base\.Entity\.IsTranslated') | Флаг, указывающий, что у объекта существует перевод\. | | [IsTranslated](Entity.IsTranslated.md 'Pf2eModel\.Model\.Base\.Entity\.IsTranslated') | Флаг, указывающий, что у объекта существует перевод\. |
| [Keywords](Entity.Keywords.md 'Pf2eModel\.Model\.Base\.Entity\.Keywords') | Коллекция ключевых слов, связанных с сущностью\. | | [Keywords](Entity.Keywords.md 'Pf2eModel\.Model\.Base\.Entity\.Keywords') | Коллекция ключевых слов, связанных с сущностью\. |
| [LegacyEntities](Entity.LegacyEntities.md 'Pf2eModel\.Model\.Base\.Entity\.LegacyEntities') | Коллекция устаревших сущностей\. | | [LegacyEntities](Entity.LegacyEntities.md 'Pf2eModel\.Model\.Base\.Entity\.LegacyEntities') | Коллекция устаревших сущностей\. |
-8
View File
@@ -182,14 +182,6 @@ namespace Pf2eDataScrapper.WPF
internal static class NamespaceDoc { } internal static class NamespaceDoc { }
} }
namespace Pf2eDataScrapper.WPF.AuthForm
{
/// <summary>
/// WPF-приложение для авторизации пользователя во внешнем сервисе.
/// </summary>
internal static class NamespaceDoc { }
}
namespace Pf2eDataScrapper.WPF.EntityViewer namespace Pf2eDataScrapper.WPF.EntityViewer
{ {
/// <summary> /// <summary>
+12 -43
View File
@@ -18,7 +18,7 @@ public class EntityView
/// <summary> /// <summary>
/// Корневая сущность. /// Корневая сущность.
/// </summary> /// </summary>
public Entity Entity { get; } public Entity? Entity { get; }
/// <summary> /// <summary>
/// Основная сущность. /// Основная сущность.
@@ -26,43 +26,17 @@ public class EntityView
public IEntity? SubEntity { get; } public IEntity? SubEntity { get; }
/// <summary> /// <summary>
/// Контекст базы данных, используемый для получения сущностей. /// Конструктор класса, который получает сущность из базы данных и заполняет её данными.
/// </summary>
private Pf2eDbContext Context { get; }
/// <summary>
/// Конструктор класса, который получает сущность из базы данных по типу и идентификатору и заполняет её данными.
/// </summary> /// </summary>
/// <param name="context">Контекст базы данных.</param> /// <param name="context">Контекст базы данных.</param>
/// <param name="type">Тип запрашиваемой сущности.</param> /// <param name="type">Тип запрашиваемой сущности.</param>
/// <param name="id">Идентификатор запрашиваемой сущности.</param> /// <param name="id">Идентификатор запрашиваемой сущности.</param>
public EntityView(Pf2eDbContext context, EntityType type, int id) public EntityView(Pf2eDbContext context, EntityType type, int id)
{ {
Context = context; Getter? getter = _getters.FirstOrDefault(g => g.Type == type);
Entity = GetEntity(type, id);
SubEntity = GetSubEntity(type, id);
}
/// <summary> Entity fullEntity =
/// Конструктор класса, который получает сущность из базы данных по переданной сущности и заполняет её данными. context
/// </summary>
/// <param name="context">Контекст базы данных.</param>
/// <param name="entity">Сущность, которую нужно обработать.</param>
public EntityView(Pf2eDbContext context, Entity entity)
{
Context = context;
Entity = entity;
SubEntity = GetSubEntity(entity.Type, entity.Id);
}
/// <summary>
/// Получает сущность из базы данных по типу и идентификатору.
/// </summary>
/// <param name="type">Тип сущности.</param>
/// <param name="id">Идентификатор сущности.</param>
/// <returns>Сущность, соответствующая указанному типу и идентификатору.</returns>
private Entity GetEntity(EntityType type, int id) =>
Context
.Entities.Where(e => e.Id == id && e.Type == type) .Entities.Where(e => e.Id == id && e.Type == type)
.Include(e => e.Sources) .Include(e => e.Sources)
.ThenInclude(s => s.Source) .ThenInclude(s => s.Source)
@@ -73,18 +47,13 @@ public class EntityView
.ThenInclude(t => t.Entity) .ThenInclude(t => t.Entity)
.FirstOrDefault() ?? throw new("Entity is null"); .FirstOrDefault() ?? throw new("Entity is null");
/// <summary> IEntity? subEntity =
/// Получает подчинённую сущность по типу и идентификатору. (getter != null)
/// </summary> ? getter.Get(id, context)
/// <param name="type">Тип сущности.</param> : (IEntity?)context.Find(EntityOfTypeAttribute.Resolve(fullEntity), id);
/// <param name="id">Идентификатор сущности.</param>
/// <returns>Подчинённая сущность, соответствующая указанному типу и идентификатору.</returns> Entity = fullEntity;
private IEntity? GetSubEntity(EntityType type, int id) SubEntity = subEntity;
{
Getter? getter = _getters.FirstOrDefault(g => g.Type == type);
return (getter != null)
? getter.Get(id, this.Context)
: (IEntity?)Context.Find(EntityOfTypeAttribute.Resolve(Entity), id);
} }
/// <summary> /// <summary>
@@ -55,7 +55,7 @@ internal sealed class AonprdCompendium(AonprdRepository repository) : AbstractCo
if ( if (
id is null id is null
|| !fileReferences.TryGetValue(id, out AonprdCompendiumItem? reference) || !fileReferences.TryGetValue(id, out AonprdCompendiumItem? reference)
|| (types.Count > 0 && !types.Contains(reference.Type)) || !types.Contains(reference.Type)
) )
{ {
continue; continue;
@@ -80,13 +80,7 @@ internal class AonprdBuilderGlobals
return SlugSuffixes.TryGetValue(id, out string? slug) ? $"-{slug}" : string.Empty; return SlugSuffixes.TryGetValue(id, out string? slug) ? $"-{slug}" : string.Empty;
} }
/// <summary> private Dictionary<string, string> JsonToDictionary(JObject json, string tokenPath)
/// Преобразовать JSON-объект в словарь.
/// </summary>
/// <param name="json">Исходный JSON-объект.</param>
/// <param name="tokenPath">Путь к токену в JSON.</param>
/// <returns>Результирующий словарь.</returns>
public static Dictionary<string, string> JsonToDictionary(JObject json, string tokenPath)
{ {
return json.SelectToken(tokenPath)?.ToObject<Dictionary<string, string>>() ?? []; return json.SelectToken(tokenPath)?.ToObject<Dictionary<string, string>>() ?? [];
} }
@@ -36,16 +36,9 @@ internal abstract class AbstractEntityProcessor(
AonprdBuilderGlobals globals AonprdBuilderGlobals globals
) : AbstractInputProcessor(input) ) : AbstractInputProcessor(input)
{ {
/// <inheritdoc cref="Pf2eDbContext"/>
public Pf2eDbContext Context { get; } = new(); public Pf2eDbContext Context { get; } = new();
/// <inheritdoc cref="StringHelper"/>
public StringHelper StringHelper { get; } = stringHelper; public StringHelper StringHelper { get; } = stringHelper;
/// <inheritdoc cref="DatabaseHelper"/>
public DatabaseHelper Helper { get; } = helper; public DatabaseHelper Helper { get; } = helper;
/// <inheritdoc cref="AonprdBuilderGlobals"/>
public AonprdBuilderGlobals Globals { get; } = globals; public AonprdBuilderGlobals Globals { get; } = globals;
/// <summary> /// <summary>
@@ -63,15 +56,6 @@ internal abstract class AbstractEntityProcessor(
/// </summary> /// </summary>
public abstract IEntity Object { get; } public abstract IEntity Object { get; }
/// <summary>
/// Название сущности, которое будет использоваться для обработки данных.
/// </summary>
public string Name
{
get { return _name ??= GetEntityName(); }
}
private string? _name = null;
/// <summary> /// <summary>
/// Добавление основной сущности в контекст базы данных. /// Добавление основной сущности в контекст базы данных.
/// </summary> /// </summary>
@@ -102,7 +86,7 @@ internal abstract class AbstractEntityProcessor(
{ {
if (Globals.MergeSources.ContainsKey(Input.GetRequired<string>("id"))) if (Globals.MergeSources.ContainsKey(Input.GetRequired<string>("id")))
{ {
throw new SkipItemException(Name, "помечено на слияние."); throw new SkipItemException(Input.GetRequired<string>("name"), "помечено на слияние.");
} }
} }
@@ -161,12 +145,6 @@ internal abstract class AbstractEntityProcessor(
#region "Генерация сущности" #region "Генерация сущности"
/// <summary>
/// Получает имя сущности из входных данных.
/// </summary>
/// <returns>Имя сущности.</returns>
protected virtual string GetEntityName() => Input.GetRequired<string>("name").Replace("’", "'");
/// <summary> /// <summary>
/// Генерация основных полей корневой сущности. /// Генерация основных полей корневой сущности.
/// </summary> /// </summary>
@@ -178,7 +156,7 @@ internal abstract class AbstractEntityProcessor(
} }
Entity.Type = Type; Entity.Type = Type;
Entity.Name[LocaleType.English] = Name; Entity.Name[LocaleType.English] = Input.GetRequired<string>("name");
Entity.Img = ""; Entity.Img = "";
Entity.Description = GetDescription(); Entity.Description = GetDescription();
Entity.Rarity = Input.EnumOptional("rarity", EntityRarity.Common); Entity.Rarity = Input.EnumOptional("rarity", EntityRarity.Common);
@@ -34,8 +34,6 @@ internal class LegacyRemasterProcessors(ProcessorInput input) : AbstractInputPro
Context.Entities.FirstOrDefault(e => e.Id == entityId) Context.Entities.FirstOrDefault(e => e.Id == entityId)
?? throw new($"Неизвестная сущность с ID {entityId}"); ?? throw new($"Неизвестная сущность с ID {entityId}");
legacyEntity.IsLegacy = true;
foreach (int remasterId in GetEntityIds("remaster_id")) foreach (int remasterId in GetEntityIds("remaster_id"))
{ {
Context.LegacyRemasters.Add(new() { LegacyId = entityId, RemasterId = remasterId }); Context.LegacyRemasters.Add(new() { LegacyId = entityId, RemasterId = remasterId });
@@ -75,8 +75,6 @@ internal class MissingLegacyRemasterProcessor(string legacyId, string remasterId
new() { LegacyId = legacyEntity.Id, RemasterId = remasterEntity.Id } new() { LegacyId = legacyEntity.Id, RemasterId = remasterEntity.Id }
); );
legacyEntity.IsLegacy = true;
if (legacyEntity.Slug == remasterEntity.Slug) if (legacyEntity.Slug == remasterEntity.Slug)
{ {
legacyEntity.Slug += "-legacy"; legacyEntity.Slug += "-legacy";
@@ -1,7 +1,4 @@
using System; using System.IO;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using Pf2eDataScrapper.Helpers; using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers.Implementations.Aonprd.Compendium; using Pf2eDataScrapper.Importers.Implementations.Aonprd.Compendium;
@@ -54,14 +51,5 @@ internal class CompendiumLoadProcessor(
Progress.Local.Complete(); Progress.Local.Complete();
} }
public void Save() public void Save() { }
{
List<AonprdCompendiumItem> result = Compendium.Items.OrderBy(item => item.Id).ToList();
Compendium.Items.Clear();
foreach (AonprdCompendiumItem item in result)
{
Compendium.Items.Add(item);
}
}
} }
@@ -1,12 +1,8 @@
using System.IO; using Pf2eDataScrapper.Helpers;
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
using Pf2eDataScrapper.Helpers;
using Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers; using Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2eDataScrapper.Processors; using Pf2eDataScrapper.Processors;
using Pf2eDataScrapper.Processors.Attributes; using Pf2eDataScrapper.Processors.Attributes;
using Pf2eModel.Model.Common.I18n; using Pf2eDataScrapper.Processors.Collection;
using Pf2eModel.Model.Enum; using Pf2eModel.Model.Enum;
using StringHelper = Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers.StringHelper; using StringHelper = Pf2eDataScrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -20,7 +16,7 @@ namespace Pf2eDataScrapper.Importers.Implementations.Aonprd.Processors.Types;
Group = ProcessorGroupEnum.AonprdEntities Group = ProcessorGroupEnum.AonprdEntities
)] )]
[ProcessorDependencies(["aonprd:trait", "aonprd:source"])] [ProcessorDependencies(["aonprd:trait", "aonprd:source"])]
internal partial class ActionProcessor( internal class ActionProcessor(
ProcessorInput input, ProcessorInput input,
StringHelper stringHelper, StringHelper stringHelper,
DatabaseHelper helper, DatabaseHelper helper,
@@ -0,0 +1,17 @@
namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
/// <summary>
/// Тип документов компендиума.
/// </summary>
internal enum CompendiumDocumentType
{
Actor,
Adventure,
Cards,
Item,
JournalEntry,
Macro,
Playlist,
RollTable,
Scene,
}
@@ -0,0 +1,88 @@
using System;
using Newtonsoft.Json.Linq;
namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
/// <summary>
/// Папка компендиума.
/// </summary>
internal class CompendiumFolder
{
/// <summary>
/// Идентификатор папки.
/// </summary>
public string Id { get; }
/// <summary>
/// Название папки.
/// </summary>
public string Name { get; }
/// <summary>
/// Путь к папке.
/// </summary>
public string? Path { get; }
/// <summary>
/// Указатель, что папка содержится в других папках.
/// </summary>
public bool IsContained { get; }
/// <summary>
/// Тип документов в папке.
/// </summary>
public CompendiumDocumentType Type { get; }
/// <summary>
/// Родительская папка.
/// </summary>
public CompendiumFolder? Parent { get; set; } = null;
/// <summary>
/// Конструктор папки компендиума из JSON-объекта.
/// </summary>
/// <param name="json"></param>
public CompendiumFolder(JObject json)
{
if (json.TryGetValue("_id", out JToken? id))
{
// Вложенная папка через _folders.json
Id = id.ToString();
Name = json["name"]!.ToString();
Path = null;
IsContained = true;
}
else
{
// Корневой пак в system.json
Id = json["name"]!.ToString();
Name = json["label"]!.ToString();
Path = json["path"]!.ToString();
IsContained = false;
}
Type = Enum.Parse<CompendiumDocumentType>(json["type"]!.ToString());
}
/// <summary>
/// Конструктор папки компендиума.
/// </summary>
/// <param name="id">Идентификатор папки.</param>
/// <param name="name">Название папки.</param>
public CompendiumFolder(string id, string name)
{
Id = id;
Name = name;
Path = null;
IsContained = false;
}
/// <summary>
/// Строковое представление данных о папки компендиума.
/// </summary>
/// <returns>Строковое представление данных о папки компендиума.</returns>
public override string ToString()
{
return $"CompendiumFolder([Id={Id}][Type={Type}][Group={Name}][Path={Path}][Parent={Parent?.Name ?? "null"}])";
}
}
@@ -0,0 +1,34 @@
using System.Collections.Generic;
using System.Linq;
namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
/// <summary>
/// Коллекция папок компендиума
/// </summary>
internal class CompendiumFolderCollection
{
/// <summary>
/// Список загруженных папок.
/// </summary>
public List<CompendiumFolder> Items { get; } = [];
/// <summary>
/// Добавление информации о папке.
/// </summary>
/// <param name="folder">Добавляемая папка.</param>
public void Add(CompendiumFolder folder)
{
Items.Add(folder);
}
/// <summary>
/// Получение папки по идентификатору
/// </summary>
/// <param name="id">Искомый идентификатор</param>
/// <returns>Искомая папка</returns>
public CompendiumFolder? GetById(string id)
{
return Items.FirstOrDefault(x => x.Id == id);
}
}
@@ -10,12 +10,21 @@ namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
/// <summary> /// <summary>
/// Загрузчик данных компендиума. /// Загрузчик данных компендиума.
/// </summary> /// </summary>
/// <param name="repository"><inheritdoc cref="FoundryEnRepository"/></param> /// <param name="repository">Репозиторий данных.</param>
internal sealed class FoundryEnCompendium(FoundryEnRepository repository) : AbstractCompendium /// <param name="folders">[DI] Коллекция папок компендиумов.</param>
internal sealed class FoundryEnCompendium(
FoundryEnRepository repository,
CompendiumFolderCollection folders
) : AbstractCompendium
{ {
/// <inheritdoc/> /// <inheritdoc/>
public override FoundryEnRepository Repository { get; } = repository; public override FoundryEnRepository Repository { get; } = repository;
/// <summary>
/// Набор папок компендиума
/// </summary>
public CompendiumFolderCollection Folders { get; } = folders;
/// <summary> /// <summary>
/// Коллекция всех записей компендиума. /// Коллекция всех записей компендиума.
/// </summary> /// </summary>
@@ -30,38 +39,17 @@ internal sealed class FoundryEnCompendium(FoundryEnRepository repository) : Abst
params ICollection<string> types params ICollection<string> types
) )
{ {
IEnumerable<string> files = foreach (
types.Count == 0 FoundryEnCompendiumItem item in types.Count == 0
? Items.Select(item => item.File).Distinct() ? Items
: Items : Items.Where(i => types.Contains(i.Type))
.Where(item => types.Contains(item.Type))
.Select(item => item.File)
.Distinct();
foreach (string file in files)
{
Dictionary<string, FoundryEnCompendiumItem> fileReferences = Items
.Where(i => i.File == file)
.ToDictionary(i => i.Id);
using StreamReader fileReader = new(file);
JArray array = JArray.Parse(fileReader.ReadToEnd());
foreach (JToken item in array)
{
string? id = item.SelectToken("_id")?.ToString();
if (
id is null
|| !fileReferences.TryGetValue(id, out FoundryEnCompendiumItem? reference)
|| (types.Count > 0 && !types.Contains(reference.Type))
) )
{ {
continue; using StreamReader fileReader = new(
} Path.Combine(Repository.RepositoryDirPath, item.File)
);
yield return new(reference, (JObject)item); yield return new(item, JObject.Parse(fileReader.ReadToEnd()));
}
} }
} }
} }
@@ -1,6 +1,5 @@
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium; using Pf2eDataScrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2eDataScrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2eDataScrapper.Importers.Repositories; using Pf2eDataScrapper.Importers.Repositories;
namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn; namespace Pf2eDataScrapper.Importers.Implementations.FoundryEn;
@@ -33,8 +32,7 @@ internal class FoundryEnImporter : AbstractImporter
services.AddSingleton<FoundryEnRepository>(); services.AddSingleton<FoundryEnRepository>();
services.AddSingleton<FoundryEnCompendium>(); services.AddSingleton<FoundryEnCompendium>();
// Помощники services.AddSingleton<CompendiumFolderCollection>();
services.AddSingleton<FoundryEnGlobals>();
} }
#endregion #endregion
@@ -44,11 +42,7 @@ internal class FoundryEnImporter : AbstractImporter
/// Git-репозиторий данных FoundryVTT-модуля "pf2e". /// Git-репозиторий данных FoundryVTT-модуля "pf2e".
/// </summary> /// </summary>
/// <param name="importer"><inheritdoc cref="FoundryEnImporter"/></param> /// <param name="importer"><inheritdoc cref="FoundryEnImporter"/></param>
internal class FoundryEnRepository(FoundryEnImporter importer) : AbstractGitHubRepository(importer) internal class FoundryEnRepository(FoundryEnImporter importer) : GitRepository(importer, GitUrl)
{ {
/// <inheritdoc/> public const string GitUrl = "https://github.com/foundryvtt/pf2e.git";
public override string Repository => "foundryvtt/pf2e";
/// <inheritdoc/>
public override string AssetName => "json-assets.zip";
} }

Some files were not shown because too many files have changed in this diff Show More