IConnectorEntitySchemaProvider.cs•1.1 kB
using Api.DigitalPages.Interfaces.Models;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Api.DigitalPages.Interfaces.Connector
{
/// <summary>
/// Ação executada de tempos em tempos e em sua inserção, com objetivo de sincronizar lista de entidades
/// </summary>
public interface IConnectorEntitySchemaProvider
{
/// <summary>
/// Retona uma lista de estruturas de entidades que devem ser cadastradas no escopo de um diretório ou projeto
/// </summary>
/// <typeparam name="TEntitySchema"></typeparam>
/// <returns></returns>
Task<List<TEntitySchema>> Schemas<TEntitySchema>() where TEntitySchema : IEntitySchema, new();
/// <summary>
/// Retorna uma de lista entidades relacionada ao esquema informado
/// </summary>
/// <typeparam name="TEntityItem"></typeparam>
/// <param name="schema"></param>
/// <returns></returns>
Task<List<TEntityItem>> Items<TEntityItem>(IEntitySchema schema) where TEntityItem : IEntityItem, new();
}
}