mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-12 03:48:56 +00:00
Datamodel - Simplified some things
This commit is contained in:
1 parent
9b09942bda
commit
291a343428
10 files changed
+111
-116
No files matched your search
@@ -61,37 +61,26 @@ namespace Artemis.Core.Services
|
||||
}
|
||||
}
|
||||
|
||||
public DataModelDescription GetMainDataModelDescription()
|
||||
{
|
||||
var dataModelDescription = new DataModelDescription();
|
||||
|
||||
return dataModelDescription;
|
||||
}
|
||||
|
||||
private void PluginServiceOnPluginEnabled(object sender, PluginEventArgs e)
|
||||
{
|
||||
if (e.PluginInfo.Instance is Module module && module.InternalExpandsMainDataModel)
|
||||
{
|
||||
if (!module.InternalDataModel.Initialized)
|
||||
if (module.InternalDataModel.DataModelDescription == null)
|
||||
{
|
||||
module.InternalDataModel.DataModelDescription = module.InternalGetDataModelDescription();
|
||||
if (module.InternalDataModel.DataModelDescription == null)
|
||||
throw new ArtemisPluginException(module.PluginInfo, "Module overrides GetDataModelDescription but returned null");
|
||||
|
||||
module.InternalDataModel.Initialize();
|
||||
}
|
||||
|
||||
_dataModelExpansions.Add(module.InternalDataModel);
|
||||
}
|
||||
else if (e.PluginInfo.Instance is BaseDataModelExpansion dataModelExpansion)
|
||||
{
|
||||
if (!dataModelExpansion.InternalDataModel.Initialized)
|
||||
if (dataModelExpansion.InternalDataModel.DataModelDescription == null)
|
||||
{
|
||||
dataModelExpansion.InternalDataModel.DataModelDescription = dataModelExpansion.GetDataModelDescription();
|
||||
if (dataModelExpansion.InternalDataModel.DataModelDescription == null)
|
||||
throw new ArtemisPluginException(dataModelExpansion.PluginInfo, "Data model expansion overrides GetDataModelDescription but returned null");
|
||||
|
||||
dataModelExpansion.InternalDataModel.Initialize();
|
||||
}
|
||||
|
||||
_dataModelExpansions.Add(dataModelExpansion.InternalDataModel);
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
using Artemis.Core.Models;
|
||||
using System.Collections.ObjectModel;
|
||||
using Artemis.Core.Models;
|
||||
using Artemis.Core.Plugins.Abstract.DataModels;
|
||||
|
||||
namespace Artemis.Core.Services.Interfaces
|
||||
{
|
||||
public interface IDataModelService : IArtemisService
|
||||
{
|
||||
ReadOnlyCollection<DataModel> DataModelExpansions { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Add an expansion to the datamodel to be available for use after the next update
|
||||
/// </summary>
|
||||
@@ -16,11 +19,5 @@ namespace Artemis.Core.Services.Interfaces
|
||||
/// </summary>
|
||||
/// <param name="baseDataModelExpansion"></param>
|
||||
void RemoveExpansion(DataModel baseDataModelExpansion);
|
||||
|
||||
/// <summary>
|
||||
/// Generates a data model description for the main datamodel including all it's expansions
|
||||
/// </summary>
|
||||
/// <returns>The generated data model description</returns>
|
||||
DataModelDescription GetMainDataModelDescription();
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user