huge commit for advanced stats feature.

broke data out into its own library.
may be breaking changes with existing plugins
This commit is contained in:
RaidMax
2021-03-22 11:09:25 -05:00
parent db2e1deb2f
commit c5375b661b
505 changed files with 13671 additions and 3271 deletions

View File

@ -0,0 +1,9 @@
using System;
namespace SharedLibraryCore.Interfaces
{
public interface IAuditFields
{
DateTime CreatedDateTime { get; set; }
}
}

View File

@ -1,4 +1,4 @@
using SharedLibraryCore.Database.Models;
using Data.Models;
namespace SharedLibraryCore.Interfaces
{

View File

@ -1,17 +0,0 @@
using SharedLibraryCore.Database;
namespace SharedLibraryCore.Interfaces
{
/// <summary>
/// describes the capabilities of the database context factory
/// </summary>
public interface IDatabaseContextFactory
{
/// <summary>
/// create or retrieves an existing database context instance
/// </summary>
/// <param name="enableTracking">indicated if entity tracking should be enabled</param>
/// <returns>database context instance</returns>
DatabaseContext CreateContext(bool? enableTracking = true);
}
}

View File

@ -1,4 +1,5 @@
using System.Threading.Tasks;
using Data.Models;
using SharedLibraryCore.Database.Models;
namespace SharedLibraryCore.Interfaces

View File

@ -1,5 +1,5 @@
using System.Threading.Tasks;
using static SharedLibraryCore.Database.Models.EFClient;
using static Data.Models.Client.EFClient;
using static SharedLibraryCore.Server;
namespace SharedLibraryCore.Interfaces

View File

@ -1,4 +1,5 @@
using SharedLibraryCore.Database.Models;
using Data.Models;
using SharedLibraryCore.Database.Models;
using SharedLibraryCore.Dtos;
using SharedLibraryCore.QueryHelper;
using System;

View File

@ -12,7 +12,7 @@ namespace SharedLibraryCore.Interfaces
/// discovers C# assembly plugin and command types
/// </summary>
/// <returns>tuple of IPlugin implementation type definitions, and IManagerCommand type definitions</returns>
(IEnumerable<Type>, IEnumerable<Type>) DiscoverAssemblyPluginImplementations();
(IEnumerable<Type>, IEnumerable<Type>, IEnumerable<Type>) DiscoverAssemblyPluginImplementations();
/// <summary>
/// discovers the script plugins

View File

@ -1,23 +0,0 @@
namespace SharedLibraryCore.Interfaces
{
/// <summary>
/// describes the capability of extending properties by name
/// </summary>
interface IPropertyExtender
{
/// <summary>
/// adds or updates property by name
/// </summary>
/// <param name="name">unique name of the property</param>
/// <param name="value">value of the property</param>
void SetAdditionalProperty(string name, object value);
/// <summary>
/// retreives a property by name
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="name">name of the property</param>
/// <returns>property value if exists, otherwise default T</returns>
T GetAdditionalProperty<T>(string name);
}
}