using GraphQL.Types; using xDataService.GraphQL; using xDataService.Interfaces; using xModels.Base; namespace xDataService.Models { /// /// a Global non Generic Repository Descriptor ... /// public class XRepositoryDescriptor { } /// /// a Repository Descriptor ... /// /// /// public class XRepositoryDescriptor : XRepositoryDescriptor where TEntity : XBaseEntity { /// /// Entity Type GraphQL Schema ... /// /// public Schema GraphSchema { get; set; } = null; /// /// Entity GraphQL Type Helper ... /// /// public IXBaseGraphQLTypeHelper GraphTypeHelper { get; set; } = null; /// /// Entity GrapQL Query ... /// /// public IXBaseGraphQLQuery GraphQuery { get; set; } = null; /// /// Entity GraphQL Type ... /// /// public XBaseGraphObjectType GraphType { get; set; } = null; /// /// Repository Event Provider ... /// /// public IXBaseRepositoryEvents Events { get; set; } = null; /// /// Repository Key Generator for Entity ... /// /// public IXKeyGenerator KeyGenerator { get; set; } = null; /// /// Repository Data Access Design Pattern ... /// /// public IXBaseRepository Repository { get; set; } } }