Shannon
e3acdbe85b
Fixes up dictionary and language repositories to have underlying simple get repositories since they support getting by id, unique id and string variations but we want to have native repository enabled caching for these items so these get methods now use private repositories based on these keys. Adds more tests, removes N+1 queries for languages and dictionary items. Removes RuntimeCacheProvider, we only want one type of cache, this simplifies things a lot.
2015-01-13 13:25:36 +11:00
Shannon
31a1ee9145
Fixes: U4-6088 Publicize all partial view methods on IFileService & U4-6087 Fix Partial View macro repository usage so that when a macro is created from the FileService, the MacroService events are raised
2015-01-09 18:39:44 +11:00
Shannon
defc9d3bc2
Updated all repo's to have their correct ctor's with their correct dependencies. Updated them all to accept ILogger updated all other dependencies with the same without breaking anything since all is internal, or obsoleted other public methods. Updates lots of the tests with mock instances instead, now more tests have less singleton dependencies, easier to test, much clearer and more IoC driven. Updated unit tests to supply the ILogger for required objects, tests should run faster now since most things are just mocked.
2015-01-09 10:51:15 +11:00
Shannon
86e82c7674
Updates PartialView & PartialViewMacros models/services/repositories, streamlines their operations, fixes up other underlying problems with the FileRepository, fixes tree syncing for partial views, partial view macros and scripts, fixes scripts being created in folders, allows partial views and partial view macros to be managed and created in folders, fixes FileUnitOfWork to use a queue, publicizes some internal test classes, fixes tree syncing when dealing with invariant case, adds correct validation to the create dialogs of scripts and partial views (and partial view macros)
2014-10-22 16:44:45 +10:00
Shannon
5bc00e3e48
Fixes: U4-4989 Media with image cropper doesn’t get removed from disk after delete.
2014-09-10 15:07:20 +10:00
Shannon
202f582661
Renames TagsRepository to TagRepository, Fixes n+1 queries on entity repository, fixes n+1 queries on tag repository, updates umbraco member types to specify an entity type for IMember and IMemberType so the entity repository can use it.
2014-09-01 18:06:24 +10:00
Shannon
7d556a0318
Merge remote-tracking branch 'origin/6.2.0' into 7.1.2
...
Conflicts:
src/Umbraco.Core/Cache/CacheProviderExtensions.cs
src/Umbraco.Core/Cache/DictionaryCacheProviderBase.cs
src/Umbraco.Core/Cache/ICacheProvider.cs
src/Umbraco.Core/Cache/ObjectCacheRuntimeCacheProvider.cs
src/Umbraco.Core/Models/Member.cs
src/Umbraco.Core/Models/PreValue.cs
src/Umbraco.Core/Models/PropertyType.cs
src/Umbraco.Core/Services/DataTypeService.cs
src/Umbraco.Tests/Models/Collections/PropertyCollectionTests.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
src/Umbraco.Web/Models/PublishedProperty.cs
src/Umbraco.Web/umbraco.presentation/umbraco/webservices/MediaUploader.ashx.cs
2014-04-17 18:10:42 +10:00
Shannon
1a13366cc9
Working on U4-4701 Fixup DataTypeService and repository with cache - the deletion logic all now happens in the transaction before it was done quite poorly for updating content types :(
2014-04-17 18:03:34 +10:00
Shannon
bf65bf5bab
Got pre-values caching properly and data types using the runtime cache provider correctly + unit tests.
2014-04-17 14:23:37 +10:00
Shannon
0fc5af5e17
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Core/Persistence/Factories/MemberTypeReadOnlyFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentTypeBaseRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
src/Umbraco.Core/Persistence/RepositoryFactory.cs
src/Umbraco.Tests/packages.config
src/Umbraco.Web.UI/packages.config
2014-02-20 23:06:13 +11:00
Shannon
a1067e676f
publicizes some repository factory methods and interfaces
2014-02-20 21:56:58 +11:00
Shannon
643f05d949
fixes some more merge issues
2014-02-13 16:56:23 +11:00
Shannon
d36cd035e9
Fixes merge issues
2014-02-13 16:46:52 +11:00
Shannon
c4acbf0dbc
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Core/Configuration/ClientDependencyConfiguration.cs
src/Umbraco.Core/Constants-Conventions.cs
src/Umbraco.Core/Models/Member.cs
src/Umbraco.Core/Models/Membership/IUser.cs
src/Umbraco.Core/Models/Template.cs
src/Umbraco.Core/Persistence/Factories/MemberReadOnlyFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IUserRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberGroupRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Core/Persistence/RepositoryFactory.cs
src/Umbraco.Core/Services/ContentService.cs
src/Umbraco.Core/Services/IMemberTypeService.cs
src/Umbraco.Core/Services/IMembershipUserService.cs
src/Umbraco.Core/Services/IUserService.cs
src/Umbraco.Core/Services/MemberService.cs
src/Umbraco.Core/Services/MemberTypeService.cs
src/Umbraco.Core/Services/ServiceContext.cs
src/Umbraco.Core/Services/UserService.cs
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/MockTests.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/EditProfile.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Login.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/LoginStatus.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/RegisterMember.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/Breadcrumb.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/EditProfile.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListAncestorsFromCurrentPage.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesFromCurrentPage.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesOrderedByDate.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesOrderedByName.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesWithDoctype.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListDescendantsFromCurrentPage.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/Login.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/LoginStatus.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/MultinodeTree-picker.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/Navigation.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/RegisterMember.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/SiteMap.cshtml
src/Umbraco.Web.UI/Umbraco/create/PartialView.ascx.cs
src/Umbraco.Web.UI/config/umbracoSettings.config
src/Umbraco.Web/Cache/CacheRefresherEventHandler.cs
src/Umbraco.Web/Controllers/UmbLoginController.cs
src/Umbraco.Web/Controllers/UmbLoginStatusController.cs
src/Umbraco.Web/Controllers/UmbProfileController.cs
src/Umbraco.Web/Controllers/UmbRegisterController.cs
src/Umbraco.Web/Models/LoginModel.cs
src/Umbraco.Web/Models/LoginStatusModel.cs
src/Umbraco.Web/Models/ProfileModel.cs
src/Umbraco.Web/Models/RegisterModel.cs
src/Umbraco.Web/Models/UmbracoProperty.cs
src/Umbraco.Web/Mvc/UmbracoViewPageOfTModel.cs
src/Umbraco.Web/PublishedCache/XmlPublishedCache/PublishedMediaCache.cs
src/Umbraco.Web/Security/WebSecurity.cs
src/Umbraco.Web/Umbraco.Web.csproj
src/Umbraco.Web/UmbracoModule.cs
src/Umbraco.Web/WebApi/UmbracoApiController.cs
src/Umbraco.Web/umbraco.presentation/library.cs
src/Umbraco.Web/umbraco.presentation/umbraco/controls/ContentTypeControlNew.ascx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/create/PartialViewMacrosTasks.cs
src/Umbraco.Web/umbraco.presentation/umbraco/create/PartialViewTasks.cs
src/Umbraco.Web/umbraco.presentation/umbraco/editContent.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/login.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/members/EditMember.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/users/EditUser.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbracobase/baseLibrary.cs
src/Umbraco.Web/umbraco.presentation/umbracobase/restExtension.cs
src/umbraco.businesslogic/User.cs
src/umbraco.providers/UsersMembershipProvider.cs
src/umbraco.providers/members/UmbracoMembershipProvider.cs
2014-02-13 16:22:51 +11:00
Shannon
92235128f1
Got new MemberGroupService done, completed the MemberService for role based stuff, created a member group cache refresher since we are caching member groups by name (probably should cache others too). Public access stuff changes if a name of a member group is changed which is now done with an event instead of coded into the biz logic.
2014-02-12 17:14:16 +11:00
Shannon
bf41694572
Fixed up some more of the member group + member stuff with more unit tests
2014-02-11 19:21:36 +11:00
Shannon
1ca950f721
Starts creating the IMemberGroupService and supporting classes.
2014-02-10 19:48:16 +11:00
Shannon
f2b7e27b34
Fixes: U4-2721 RuntimeCacheProvider is not cleared when data type changes and updates the repo factory to not use the InMemory cache provider since we should only ever use that for very very specific reasons since the memory can never auto-clear with that provider.
2014-01-28 11:30:02 +11:00
Shannon
690d08aa8c
Completes wrapping the new IUserService from the legacy User object. Ensures User cache is handled correctly and distributed cache is updated for Users.
2014-01-28 10:46:59 +11:00
Shannon
e2ac82abca
Gets most of the User and UserType legacy objects wrapping the new services, yay! Now just need to sort out all the caching stuff which I have tasks for.
2014-01-23 18:44:41 +11:00
Shannon
d6a83d9887
Merge remote-tracking branch 'origin/6.2.0' into 7.0.2
...
Conflicts:
src/Umbraco.Core/Models/IMember.cs
src/Umbraco.Core/Models/Member.cs
src/Umbraco.Core/Models/Membership/IUser.cs
src/Umbraco.Core/Models/Membership/MembershipExtensions.cs
src/Umbraco.Core/Models/Membership/UmbracoMembershipMember.cs
src/Umbraco.Core/Models/Membership/User.cs
src/Umbraco.Core/Models/Membership/UserProfile.cs
src/Umbraco.Core/Persistence/Factories/MemberReadOnlyFactory.cs
src/Umbraco.Core/Persistence/Factories/UserFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IUserRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Core/Persistence/Repositories/UserRepository.cs
src/Umbraco.Core/Services/IMembershipUserService.cs
src/Umbraco.Core/Services/MemberService.cs
src/Umbraco.Core/Services/UserService.cs
src/Umbraco.Tests/Persistence/Querying/PetaPocoSqlTests.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserTypeRepositoryTest.cs
src/Umbraco.Tests/Services/ContentServiceTests.cs
src/Umbraco.Tests/Services/UserServiceTests.cs
src/Umbraco.Tests/TestHelpers/Entities/MockedUser.cs
src/Umbraco.Tests/TestHelpers/Entities/MockedUserType.cs
src/Umbraco.Web.UI/umbraco/controls/PasswordChanger.ascx.cs
src/Umbraco.Web.UI/umbraco/dashboard/ChangePassword.ascx
src/Umbraco.Web/Umbraco.Web.csproj
src/Umbraco.Web/umbraco.presentation/umbraco/create/userTasks.cs
src/Umbraco.Web/umbraco.presentation/umbraco/dashboard/ChangePassword.ascx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/members/EditMember.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/users/EditUser.aspx.cs
src/umbraco.businesslogic/User.cs
src/umbraco.providers/members/UmbracoMembershipProvider.cs
2014-01-08 14:32:38 +11:00
Shannon
1b7dc76df2
Updated much more of the UserService + some unit tests
2014-01-06 11:56:53 +11:00
Shannon
367cdde35e
Merge remote-tracking branch 'origin/6.2.0' into 7.0.0
...
Conflicts:
src/umbraco.cms/businesslogic/workflow/Notification.cs
2013-11-08 08:55:22 +11:00
Jeremy Pyne
7cd6882f28
Removed dependence in Stylesheet repository on Entity Service.
2013-10-29 09:24:05 -04:00
Shannon
f8d6c85779
Merge remote-tracking branch 'origin/6.2.0' into 7.0.0
...
Conflicts:
src/Umbraco.Core/ApplicationContext.cs
src/Umbraco.Core/Models/ContentBase.cs
src/Umbraco.Core/Models/ContentTypeBase.cs
src/Umbraco.Core/Models/DataTypeDefinition.cs
src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
src/Umbraco.Core/Persistence/RepositoryFactory.cs
src/Umbraco.Core/Services/IMemberTypeService.cs
src/Umbraco.Core/Services/MemberTypeService.cs
src/Umbraco.Core/Services/ServiceContext.cs
src/Umbraco.Tests/Routing/uQueryGetNodeIdByUrlTests.cs
2013-10-09 13:41:14 +11:00
Shannon
c6389852ea
Adds public ctors for ApplicationContext, ServiceContext, DatabaseContext, RepositoryFactory, makes IDatabaseFactory public, makes an interfaces for IEntityService, adds EnsureContext methods for ApplicationContext - to set the singleton.
2013-10-09 13:17:19 +11:00
Shannon
e6908c7678
Adds tag support to member repository.
2013-10-08 12:29:56 +11:00
Shannon
0b8b413f2f
Adds tag support for any IContentBase and to the MediaRepository, adds test to ensure tags relations are removed.
2013-10-08 12:25:03 +11:00
Shannon
7425e070d2
Got the SetTags and RemoveTags methods in place and working.
2013-10-04 17:13:57 +10:00
Shannon
3cb70f67c9
TagsRepository is all working with unit tests, now to make the service and integrate the extension methods.
2013-10-04 16:11:51 +10:00
Shannon
1e9a17babe
Fixes merge issues, fixes up some unit tests, removes the For<T> config section stuff and simplifies the singleton, refactors it with methods as per discussion with stephen.
2013-09-25 19:23:41 +10:00
Shannon
661bc3149f
Fixes macro parameter id assignment at the repo level.
2013-09-20 13:40:32 +10:00
Shannon
67171db955
Fixes merge issues... but now have to fix all the unit tests
2013-09-18 13:26:09 +10:00
Shannon
81365cec25
Merge remote-tracking branch 'origin/6.2.0' into 7.0.0
...
Conflicts:
src/Umbraco.Core/Persistence/RepositoryFactory.cs
src/Umbraco.Tests/Models/DataValueSetterTests.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserTypeRepositoryTest.cs
src/Umbraco.Tests/TestHelpers/FakeHttpContextFactory.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
src/Umbraco.Tests/packages.config
2013-09-18 12:59:46 +10:00
Shannon
c8fa881bc5
Ensures all service tests do not use any caching in their underlying repos. This change has been made to the base database test classes so any repo/service access done for inheritors also ensure that no cache is used for tests.
2013-09-18 12:54:06 +10:00
Shannon
75c913cced
Updated macro repo and services and ensures correct data joins
2013-09-17 20:19:27 +10:00
Shannon
b043ee577f
Renamed config interfaces properly with Section suffix, re-implemented the For<T> UmbracoConfiguration method to retreive specific settings... might use this entirely instead of the nested access as it might make it easier to mock.
2013-09-16 17:39:45 +10:00
Shannon
f38a6e1561
Makes some massive headway with the real config section, have got all code re-delegated to using it and have migrated the baserest config to the core project, all configs will be shared out of the UmbracoConfiguration singleton, now to get the unit tests all wired up and using mocks for the most part.
2013-09-13 18:11:20 +10:00
Shannon
e962e86c3c
Merge remote-tracking branch 'origin/6.2.0' into 7.0.0
...
Conflicts:
src/Umbraco.Core/Models/Rdbms/MemberReadOnlyDto.cs
src/Umbraco.Core/Models/Rdbms/PropertyDataReadOnlyDto.cs
src/Umbraco.Core/Persistence/Querying/BaseExpressionHelper.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
src/Umbraco.Core/StringExtensions.cs
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
src/Umbraco.Web.UI/umbraco/dialogs/ChangeDocType.aspx.cs
src/Umbraco.Web/Umbraco.Web.csproj
2013-09-10 11:49:05 +10:00
Morten Christensen
c5945789f0
Refactoring the MemberRepository to use the new Member class
2013-09-03 17:02:15 +02:00
Morten Christensen
186d5157ec
Implementing the read only side of the MemberType/MemberTypeRepository.
...
PropertyTypes and PropertyGroups are loaded as part of the MemberType in one go.
MemberTypeRepository uses the same approach as the ContentTypeRepository and MediaTypeRepository for saving/updating.
Refactoring how the 9-PropertyType convention is handled.
2013-09-02 15:53:09 +02:00
Shannon
7806762b80
Implemented a real .Net configuration section for umbracoSettings.config + unit tests for every property. NOTE: This isn't referenced in the codebase yet, going to start setting default values for most of the properties so that we can remove them from the config file for shipping (ship minimal config) then reference these settings in the codebase.
2013-08-31 11:28:19 +10:00
Morten Christensen
37d190c97d
Implementing read-only DTOs for improved reading of Members from db.
...
Started implementation of Member, MemberType and MemberGroup repositories.
2013-08-26 16:59:41 +02:00
Morten Christensen
67a2a9cfe4
Refactoring the optimized Recycle Bin, so that the Recycle Bin's repository is more independent and easier to use with the new events added to the Content- and MediaService.
2013-08-14 16:12:13 +02:00
Shannon
8be54ba0cc
Fixes: U4-1970 v6 API - need to implement caching for templates since we're doing a db lookup on a front-end request. This is a temporary fix until we implement the ApplicationCache properly but it still works by utilizing the existing RuntimeCacheProvider singleton. I've tweaked this provider as well to ensure we use the HttpRuntime.Cache when it is available (during a web session). We don't want to have a seperate caching bucket so that IIS can manage cache memory properly. Have ensured that the template cache is cleared when templates are updated/removed.
2013-07-23 11:46:18 +10:00
Morten Christensen
e34c857f6c
A bit of refactoring around unique naming, and implementing it for media as well
2013-07-04 11:22:59 +02:00
Morten Christensen
b0f4cb7d02
Merge branch '6.0.7' into 6.1.2
2013-06-28 13:30:04 +02:00
Morten Christensen
f809dec874
Updating repository factory to inject unique name setting into ContentRepository
2013-06-28 13:28:03 +02:00
Morten Christensen
efbc461da9
Code cleanup - removing all internal code related to Macros, which was created for v6 but left out for backwards compatibility.
2013-04-07 17:47:10 -02:00
Morten Christensen
381157ac5d
Initial implementation of the EntityRepository and Service, which will be used to retrieve a basic object with a minimum set of propreties for the models that have their base in the umbracoNode table.
...
The intention is to use this for loading trees in the backoffice for faster loading.
2013-03-17 16:25:21 -01:00