From fe6bbdf005f4b7b96673f144f6ecf9ec3c8e1759 Mon Sep 17 00:00:00 2001 From: sitereactor Date: Mon, 5 Nov 2012 10:12:17 -0100 Subject: [PATCH] Refactoring usage of UOW in File-, Localization- and MediaService. --- .../Models/PropertyTypeExtensions.cs | 4 +- src/Umbraco.Web/Services/FileService.cs | 50 ++++++++----------- .../Services/LocalizationService.cs | 49 +++++++----------- src/Umbraco.Web/Services/MediaService.cs | 50 ++++++++----------- 4 files changed, 62 insertions(+), 91 deletions(-) diff --git a/src/Umbraco.Core/Models/PropertyTypeExtensions.cs b/src/Umbraco.Core/Models/PropertyTypeExtensions.cs index 23b6d0bf37..727b065ade 100644 --- a/src/Umbraco.Core/Models/PropertyTypeExtensions.cs +++ b/src/Umbraco.Core/Models/PropertyTypeExtensions.cs @@ -18,7 +18,9 @@ namespace Umbraco.Core.Models internal static IDataType DataType(this PropertyType propertyType) { Mandate.ParameterNotNull(propertyType, "propertyType"); - return DataTypesResolver.Current.GetById(propertyType.DataTypeControlId); + var dataType = DataTypesResolver.Current.GetById(propertyType.DataTypeControlId); + dataType.DataTypeDefinitionId = propertyType.DataTypeId; + return dataType; } } } \ No newline at end of file diff --git a/src/Umbraco.Web/Services/FileService.cs b/src/Umbraco.Web/Services/FileService.cs index f9587a05cd..0257299d9a 100644 --- a/src/Umbraco.Web/Services/FileService.cs +++ b/src/Umbraco.Web/Services/FileService.cs @@ -12,6 +12,7 @@ namespace Umbraco.Web.Services public class FileService : IFileService { private readonly IUnitOfWorkProvider _provider; + private readonly IUnitOfWork _unitOfWork; public FileService() : this(new FileUnitOfWorkProvider()) { @@ -20,6 +21,7 @@ namespace Umbraco.Web.Services public FileService(IUnitOfWorkProvider provider) { _provider = provider; + _unitOfWork = provider.GetUnitOfWork(); } /// @@ -28,8 +30,7 @@ namespace Umbraco.Web.Services /// An enumerable list of objects public IEnumerable GetStylesheets(params string[] names) { - var unitOfWork = _provider.GetUnitOfWork(); - var repository = RepositoryResolver.ResolveByType(unitOfWork); + var repository = RepositoryResolver.ResolveByType(_unitOfWork); return repository.GetAll(names); } @@ -40,8 +41,7 @@ namespace Umbraco.Web.Services /// A object public Stylesheet GetStylesheetByName(string name) { - var unitOfWork = _provider.GetUnitOfWork(); - var repository = RepositoryResolver.ResolveByType(unitOfWork); + var repository = RepositoryResolver.ResolveByType(_unitOfWork); return repository.Get(name); } @@ -51,10 +51,9 @@ namespace Umbraco.Web.Services /// to save public void SaveStylesheet(Stylesheet stylesheet) { - var unitOfWork = _provider.GetUnitOfWork(); - var repository = RepositoryResolver.ResolveByType(unitOfWork); + var repository = RepositoryResolver.ResolveByType(_unitOfWork); repository.AddOrUpdate(stylesheet); - unitOfWork.Commit(); + _unitOfWork.Commit(); } /// @@ -63,11 +62,10 @@ namespace Umbraco.Web.Services /// Name incl. extension of the Stylesheet to delete public void DeleteStylesheet(string name) { - var unitOfWork = _provider.GetUnitOfWork(); - var repository = RepositoryResolver.ResolveByType(unitOfWork); + var repository = RepositoryResolver.ResolveByType(_unitOfWork); var stylesheet = repository.Get(name); repository.Delete(stylesheet); - unitOfWork.Commit(); + _unitOfWork.Commit(); } /// @@ -86,8 +84,7 @@ namespace Umbraco.Web.Services /// An enumerable list of objects public IEnumerable