55 lines
1.7 KiB
C#
55 lines
1.7 KiB
C#
using System;
|
|
using System.Linq.Expressions;
|
|
using Umbraco.Core.LightInject;
|
|
using Umbraco.Core.ObjectResolution;
|
|
|
|
namespace Umbraco.Core.Dictionary
|
|
{
|
|
/// <summary>
|
|
/// Resolves the current CultureDictionaryFactory
|
|
/// </summary>
|
|
public sealed class CultureDictionaryFactoryResolver : ContainerSingleObjectResolver<CultureDictionaryFactoryResolver, ICultureDictionaryFactory>
|
|
{
|
|
/// <summary>
|
|
/// Initializes the resolver to use IoC
|
|
/// </summary>
|
|
/// <param name="container"></param>
|
|
/// <param name="implementationType"></param>
|
|
internal CultureDictionaryFactoryResolver(IServiceContainer container, Type implementationType)
|
|
: base(container, implementationType)
|
|
{
|
|
}
|
|
|
|
internal CultureDictionaryFactoryResolver(ICultureDictionaryFactory factory)
|
|
: base(factory)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// Initializes the resolver to use IoC
|
|
/// </summary>
|
|
/// <param name="container"></param>
|
|
/// <param name="implementationType"></param>
|
|
internal CultureDictionaryFactoryResolver(IServiceContainer container, Expression<Func<IServiceFactory, ICultureDictionaryFactory>> implementationType)
|
|
: base(container, implementationType)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// Can be used by developers at runtime to set their ICultureDictionaryFactory at app startup
|
|
/// </summary>
|
|
/// <param name="factory"></param>
|
|
public void SetContentStore(ICultureDictionaryFactory factory)
|
|
{
|
|
Value = factory;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Returns the ICultureDictionaryFactory
|
|
/// </summary>
|
|
public ICultureDictionaryFactory Factory
|
|
{
|
|
get { return Value; }
|
|
}
|
|
}
|
|
} |