using xCommons.Extensions; using xDataService.Constants; using xDataService.Models; namespace xDataService.Extensions { public static class XDatabaseDescriptorExtensions { /// /// Validate a Database Descriptor ... /// /// /// public static bool IsValid(this XDatabaseDescriptor source) { // var result = !source.IsNull() && !source.Name.IsNullOrEmpty(); // return result; } /// /// Chack a Descriptor Has Provider or not ... /// /// /// public static bool HasProvider(this XDatabaseDescriptor source) { // var result = source.IsValid() && source.Provider != XDbProviders.None; // return result; } /// /// Check a Descriptor Has EF Core Context or not ... /// /// /// public static bool HasContext(this XDatabaseDescriptor source) { // var result = source.IsValid() && source.HasProvider() && source.Provider != XDbProviders.MongoDB && !source.Context.IsNull(); // return result; } /// /// Check a Descriptor Has Repositories or not ... /// /// /// public static bool HasRepositories(this XDatabaseDescriptor source) { // var result = source.IsValid() && source.HasProvider() && !source.Repositories.IsNull() && source.Repositories.HasChild(); // return result; } /// /// Check a Descriptor Has MongoDB Convention Packs ... /// /// /// public static bool HasConventionPacks(this XDatabaseDescriptor source) { // var result = source.IsValid() && source.HasProvider() && source.Provider == XDbProviders.MongoDB && !source.ConventionPacks.IsNull(); // return result; } } }