screwturn-4/PluginFramework/Snippet.cs
2009-09-30 13:47:13 +00:00

79 lines
2 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.Globalization;
namespace ScrewTurn.Wiki.PluginFramework {
/// <summary>
/// Contains a Snippet.
/// </summary>
public class Snippet {
/// <summary>
/// The name of the Snippet.
/// </summary>
protected string name;
/// <summary>
/// The content of the Snippet.
/// </summary>
protected string content;
/// <summary>
/// The Provider that handles the Snippet.
/// </summary>
protected IPagesStorageProviderV30 provider;
/// <summary>
/// Initializes a new instance of the <b>Snippet</b> class.
/// </summary>
/// <param name="name">The Name of the Snippet.</param>
/// <param name="content">The Content of the Snippet.</param>
/// <param name="provider">The Provider of the Snippet.</param>
public Snippet(string name, string content, IPagesStorageProviderV30 provider) {
this.name = name;
this.content = content;
this.provider = provider;
}
/// <summary>
/// Gets the Name of the Snippet.
/// </summary>
public string Name {
get { return name; }
}
/// <summary>
/// Gets or sets the Content of the Snippet.
/// </summary>
public string Content {
get { return content; }
}
/// <summary>
/// Gets the Provider of the Snippet.
/// </summary>
public IPagesStorageProviderV30 Provider {
get { return provider; }
}
}
/// <summary>
/// Compares two <see cref="T:Snippet" /> objects.
/// </summary>
public class SnippetNameComparer : IComparer<Snippet> {
/// <summary>
/// Compares the name of two <see cref="T:Snippet" /> objects.
/// </summary>
/// <param name="x">The first <see cref="T:Snippet" />.</param>
/// <param name="y">The second <see cref="T:Snippet" />.</param>
/// <returns>The result of the comparison (1, 0 or -1).</returns>
public int Compare(Snippet x, Snippet y) {
return StringComparer.OrdinalIgnoreCase.Compare(x.Name, y.Name);
}
}
}