add-some-xml-documentation

This commit is contained in:
Mark Monteiro 2020-02-10 10:26:28 +01:00
parent 77428d338d
commit a381eb884c
3 changed files with 36 additions and 2 deletions

View File

@ -6,20 +6,45 @@ using System.Collections.Generic;
namespace MediaBrowser.Common.Configuration
{
/// <summary>
/// Provides an interface to retrieve a configuration store. Classes with this interface are scanned for at
/// application start to dynamically register configuration for various modules/plugins.
/// </summary>
public interface IConfigurationFactory
{
/// <summary>
/// Get the configuration store for this module.
/// </summary>
/// <returns>The configuration store.</returns>
IEnumerable<ConfigurationStore> GetConfigurations();
}
/// <summary>
/// Describes a single entry in the application configuration.
/// </summary>
public class ConfigurationStore
{
/// <summary>
/// Gets or sets the unique identifier for the configuration.
/// </summary>
public string Key { get; set; }
/// <summary>
/// Gets or sets the type used to store the data for this configuration entry.
/// </summary>
public Type ConfigurationType { get; set; }
}
/// <summary>
/// A configuration store that can be validated.
/// </summary>
public interface IValidatingConfiguration
{
/// <summary>
/// Validation method to be invoked before saving the configuration.
/// </summary>
/// <param name="oldConfig">The old configuration.</param>
/// <param name="newConfig">The new configuration.</param>
void Validate(object oldConfig, object newConfig);
}
}

View File

@ -4,16 +4,22 @@ using System.Threading.Tasks;
namespace MediaBrowser.Controller.Plugins
{
/// <summary>
/// Interface IServerEntryPoint
/// Represents an entry point for a module in the application. This interface is scanned for automatically and
/// provides a hook to initialize the module at application start.
/// The entry point can additionally be flagged as a pre-startup task by applying the
/// <see cref="IRunBeforeStartup"/> interface.
/// </summary>
public interface IServerEntryPoint : IDisposable
{
/// <summary>
/// Runs this instance.
/// Run the initialization for this module. This method is invoked at application start.
/// </summary>
Task RunAsync();
}
/// <summary>
/// Indicates that a <see cref="IServerEntryPoint"/> should be invoked as a pre-startup task.
/// </summary>
public interface IRunBeforeStartup
{

View File

@ -5,6 +5,9 @@ using System;
namespace MediaBrowser.Model.Services
{
/// <summary>
/// Identifies a single API endpoint.
/// </summary>
[AttributeUsage(AttributeTargets.Property, AllowMultiple = true, Inherited = true)]
public class ApiMemberAttribute : Attribute
{