feat(abstractions): add IAcDreamPlugin, IPluginHost, ILogger
This commit is contained in:
parent
42480cc751
commit
ed1c2d061c
4 changed files with 29 additions and 3 deletions
9
src/AcDream.Plugin.Abstractions/IAcDreamPlugin.cs
Normal file
9
src/AcDream.Plugin.Abstractions/IAcDreamPlugin.cs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
// src/AcDream.Plugin.Abstractions/IAcDreamPlugin.cs
|
||||
namespace AcDream.Plugin.Abstractions;
|
||||
|
||||
public interface IAcDreamPlugin
|
||||
{
|
||||
void Initialize(IPluginHost host);
|
||||
void Enable();
|
||||
void Disable();
|
||||
}
|
||||
9
src/AcDream.Plugin.Abstractions/ILogger.cs
Normal file
9
src/AcDream.Plugin.Abstractions/ILogger.cs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
// src/AcDream.Plugin.Abstractions/ILogger.cs
|
||||
namespace AcDream.Plugin.Abstractions;
|
||||
|
||||
public interface ILogger
|
||||
{
|
||||
void Info(string message);
|
||||
void Warn(string message);
|
||||
void Error(string message, Exception? exception = null);
|
||||
}
|
||||
11
src/AcDream.Plugin.Abstractions/IPluginHost.cs
Normal file
11
src/AcDream.Plugin.Abstractions/IPluginHost.cs
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
// src/AcDream.Plugin.Abstractions/IPluginHost.cs
|
||||
namespace AcDream.Plugin.Abstractions;
|
||||
|
||||
/// <summary>
|
||||
/// Entry point for a plugin into the acdream runtime. The surface will grow
|
||||
/// across phases as more systems come online. For Phase 1 only ILogger is real.
|
||||
/// </summary>
|
||||
public interface IPluginHost
|
||||
{
|
||||
ILogger Log { get; }
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
// src/AcDream.Plugin.Abstractions/Placeholder.cs
|
||||
namespace AcDream.Plugin.Abstractions;
|
||||
internal static class Placeholder { }
|
||||
Loading…
Add table
Add a link
Reference in a new issue