48 lines
No EOL
1,022 B
C#
48 lines
No EOL
1,022 B
C#
using System.Collections.Generic;
|
|
using System.Reflection;
|
|
using JD.Collections;
|
|
using JD.LogService;
|
|
|
|
namespace JD.TeaBoxAddinSystem.Addins.MEF
|
|
{
|
|
public interface IAddinService
|
|
{
|
|
#region Properties
|
|
|
|
IEnumerable<IAddin> Addins
|
|
{
|
|
get;
|
|
}
|
|
|
|
/// <summary>
|
|
/// The assemblies that are gathered from external sources (like script for example).
|
|
/// </summary>
|
|
ObservableList<Assembly> DynamicAssemblies { get; }
|
|
|
|
#endregion
|
|
|
|
#region Methods
|
|
|
|
#region Compose
|
|
|
|
/// <summary>
|
|
/// Satisfies all the imports on the given <paramref name="part"/>.
|
|
/// </summary>
|
|
/// <param name="part"></param>
|
|
void Compose(object part);
|
|
|
|
#endregion
|
|
|
|
#region Validate
|
|
|
|
/// <summary>
|
|
/// Validates the addin ecosystem.
|
|
/// </summary>
|
|
/// <param name="logger"></param>
|
|
bool Validate(ILogger logger);
|
|
|
|
#endregion
|
|
|
|
#endregion
|
|
}
|
|
} |