using System;
using Umbraco.Cms.Core.DependencyInjection;
using Umbraco.Cms.Core.Routing;
namespace Umbraco.Extensions
{
///
/// Provides extension methods to the class.
///
public static class WebsiteUmbracoBuilderExtensions
{
#region Uniques
///
/// Sets the content last chance finder.
///
/// The type of the content last chance finder.
/// The builder.
public static IUmbracoBuilder SetContentLastChanceFinder(this IUmbracoBuilder builder)
where T : class, IContentLastChanceFinder
{
builder.Services.AddUnique();
return builder;
}
///
/// Sets the content last chance finder.
///
/// The builder.
/// A function creating a last chance finder.
public static IUmbracoBuilder SetContentLastChanceFinder(this IUmbracoBuilder builder, Func factory)
{
builder.Services.AddUnique(factory);
return builder;
}
///
/// Sets the content last chance finder.
///
/// The builder.
/// A last chance finder.
public static IUmbracoBuilder SetContentLastChanceFinder(this IUmbracoBuilder builder, IContentLastChanceFinder finder)
{
builder.Services.AddUnique(finder);
return builder;
}
///
/// Sets the site domain helper.
///
/// The type of the site domain helper.
///
public static IUmbracoBuilder SetSiteDomainHelper(this IUmbracoBuilder builder)
where T : class, ISiteDomainMapper
{
builder.Services.AddUnique();
return builder;
}
///
/// Sets the site domain helper.
///
/// The builder.
/// A function creating a helper.
public static IUmbracoBuilder SetSiteDomainHelper(this IUmbracoBuilder builder, Func factory)
{
builder.Services.AddUnique(factory);
return builder;
}
///
/// Sets the site domain helper.
///
/// The builder.
/// A helper.
public static IUmbracoBuilder SetSiteDomainHelper(this IUmbracoBuilder builder, ISiteDomainMapper helper)
{
builder.Services.AddUnique(helper);
return builder;
}
#endregion
}
}