Click here to Skip to main content
13,052,696 members (66,396 online)
Click here to Skip to main content

Stats

89.6K views
1.5K downloads
162 bookmarked
Posted 29 Aug 2008

A Flexible Plugin System

, 3 Sep 2008
A generic plugin system used to load and manage plugins
trunk
dlls
xunit.dll
Examples
Plugins
ExampleApplication.Shared
Properties
ExampleApplication
Properties
ExamplePlugin.Shared
Properties
ExamplePlugin
Properties
Fadd.Globalization.Yaml
fadd.snk
Properties
Tests
fadd
Commands
Net
Tests
fadd.snk
Globalization
Tests
Logging
Plugins
Properties
Tests
Validation
namespace Fadd.Plugins
{
    /// <summary>
    /// Contains user information about a plugin.
    /// </summary>
    /// <remarks>
    /// Should be returned in the current language.
    /// </remarks>
    /// <seealso cref="System.Globalization.CultureInfo.CurrentCulture"/>
    public interface IPluginInfo
    {
        /// <summary>
        /// Name of the plugin, it should be in the local language if possible.
        /// </summary>
        string Name
        { get;  }

        /// <summary>
        /// Description of what the plugin does. Shown to the end user.
        /// </summary>
        /// <remarks>
        /// The description may contain links to other pages and images.
        /// Just make sure that your controller can handle them.
        /// Links should be opened in new windows and not leave the market place.
        /// </remarks>
        string Description
        { get;}

        /// <summary>
        /// Author homepage
        /// </summary>
        string Homepage
        { get;}


        /// <summary>
        /// Copyright owner of this plugin.
        /// </summary>
        string Copyright
        { get;}
    }
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The GNU Lesser General Public License (LGPLv3)

Share

About the Author

jgauffin
Founder Gauffin Interactive AB
Sweden Sweden
Founder of OneTrueError, a .NET service which captures, analyzes and provide possible solutions for exceptions.

blog | twitter

You may also be interested in...

Pro
Permalink | Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.170713.1 | Last Updated 3 Sep 2008
Article Copyright 2008 by jgauffin
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid