JD2022-TU1/main/tools/framework/JD.Remoting/Services/IPluginService.cs

36 lines
No EOL
959 B
C#

using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using JD.Interfaces.Remoting;
using Plume.Interfaces.Services;
namespace JD.Remoting.Services
{
/// <inheritdoc />
/// <summary>
/// Plugin service
/// </summary>
public interface IPluginService : IService, INotifyCollectionChanged, IEnumerable<IPlugin>
{
/// <summary>
/// Register a plugin
/// </summary>
/// <param name="plugin"></param>
void Register(IPlugin plugin);
/// <summary>
/// Starts the plugin, from that point, it will try to auto connect to the engine.
/// </summary>
void Start(EndPointId endPointId = default(EndPointId));
/// <summary>
/// Stops to listen/send commands.
/// </summary>
void Stop();
/// <summary>
/// Current endpoint
/// </summary>
EndPointId EndPointId { get; }
}
}