Shannon
4a3525ece3
Fixes a memory leak caused by deep cloning
...
There was a memory leak with PublicAccessEntry during even unassignment which was not clearing the correct handler.
This goes a step further and adds a new ClearCollectionChangedEvents method for all observable collections used in umbraco
which allows fully clearing ALL event handlers instead of having to track specific ones. This will ensure there are no
unintended memory leaks in case end-users have assigned event handlers to the collection changed event which would
not be unassigned during deep cloning.
2021-01-12 13:41:50 +11:00
Stephan
bc987a825a
Cleanup
2019-02-04 10:09:32 +01:00
Shannon
80165c3c0f
Fixes allocations of property selectors, with nameof we save a bunch of both memory and initial reflection lookups
2019-02-04 19:52:04 +11:00
Stephan
f9967e2d7d
Fix e25e509d84 breaking tests, fix original issue
2018-12-10 17:48:24 +01:00
Shannon
42f0d2b356
Fixes dirty tracking with resetting properties
2018-10-25 15:47:25 +11:00
Stephan
9320c1a061
Cleanup variants dirty tracking
2018-10-23 15:38:47 +02:00
Shannon
71fd47f452
Fixes issue of observable collections, event binding and deep cloning
2018-10-19 08:45:53 +11:00
Stephan
7a615133ff
Renormalize
2018-06-29 19:52:40 +02:00
Stephan
d23933a5b1
DataType refactoring preparation - Entity refactoring
2018-01-15 13:28:35 +01:00
Stephan
b5856803e1
DataType refactoring preparation - Entity refactoring
2018-01-10 12:48:51 +01:00
Stephan
ef11fda272
More content refactoring (tests)
2017-11-15 08:53:20 +01:00
Stephan
c76403077f
Normalize cr/lf/tab
2017-07-20 11:21:28 +02:00
Shannon
33ca761441
Updated all to use the ref parameter, tests are passing - now to see if they run any faster :)
2016-06-21 20:43:02 +02:00
Shannon
b5411a5402
Initial commit of refactor of better/more efficient in terms of mem and performance properpty selectors for our models, this also yields a much cleaner syntax. I have discovered one issue now which is that the PropertyChanged event now fires before the property value is actually set, this is why the lambda syntax existed before. Instead we can use a ref property for the SetPropertyValueAndDetectChanges methods which will work much nicer - and also potentially have less allocations.
2016-06-21 18:11:03 +02:00
Stephan
eb5589e064
Remove PropertyGroup.ParentId, sanitize Property groups/types
2015-11-17 16:55:14 +01:00
Shannon
bb8864f51b
ensures that when setting the PropertyType's property on a PropertyGroup that the PropertyGroupId is set
2015-07-13 13:41:15 +02:00
Shannon
ece2e2359e
Updates PropertyGroup's equality comparisons to: check the base comparison, then check for a case insensitive comparison with name, fixes GetHashCode to be consistent with the Equals method.
2015-04-08 11:31:14 +10:00
Shannon
a4949a1132
Merge remote-tracking branch 'origin/6.2.0' into 7.1.2
2014-04-22 17:49:01 +10:00
Shannon
d772336c0f
Fixes: U4-4695 Copy document type to new parent seems to lose some data, U4-4535 Create Copy method on the content type Service
2014-04-22 17:48:08 +10:00
Shannon
4f8485e7d9
Merge remote-tracking branch 'origin/6.2.0' into 7.1.2
2014-04-22 14:00:28 +10:00
Shannon
c4046ecb32
Fixes 'Clone' methods to ensure a Deep clone is used
2014-04-22 13:48:51 +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
1f2e46a195
Simplifies much of the deep cloning with the DeepCloneHelper and adds tests
2014-04-16 13:39:42 +10:00
Shannon
58758e7a41
More work on deep cloning, have test passing for IContent
2014-04-15 13:52:49 +10:00
Shannon
b7f7775b89
adds initial commit of entity cloning
2014-02-20 22:34:54 +11: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
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
89ce60ef0f
Merge remote-tracking branch 'origin/6.1.4' into 7.0.0
...
Conflicts:
src/Umbraco.Core/Events/RecycleBinEventArgs.cs
src/Umbraco.Core/Persistence/Querying/BaseExpressionHelper.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/SimilarNodeNameComparer.cs
src/Umbraco.Web.UI/config/ExamineIndex.config
src/Umbraco.Web/Strategies/DeleteFilesAfterEmptiedRecycleBin.cs
src/Umbraco.Web/Umbraco.Web.csproj
2013-08-15 12:59:05 +10:00
Morten Christensen
ca71c59880
Fixes U4-2218 Document Type copy looses property tab assignment
2013-08-13 17:41:35 +02:00
Shannon
4b8fed9f06
Started converting content model mapping over to use AutoMapper to fix the composite tabs/properties. New unit tests for the mapping as well.
2013-07-25 15:31:26 +10:00
Shannon Deminick
ab8b0f4ebb
Merge with 6.0.3
2013-03-21 20:39:33 +06:00
Morten Christensen
63de9e6691
Refactoring package installer to use the new PackagingService.
...
Refactoring ImportDocumentType dialog to import through the PackagingService.
Making a few corrections to the ProppertyGroup and PropertyType classes to support bulk saving.
2013-03-21 12:34:10 -01:00
Shannon Deminick
7ea87638f7
Updates all Entity models to use SetPropertyValueAndDetectChanges for setting all simple properties so that
...
tracking changes works the way it is supposed to. Creates a TracksChangesEntityBase class for any other entity
that wants to implement IRememberBeingDirty (now Entity inherits from this). Upgraded a bunch of other entities that
were not tracking changes properly.
2013-03-21 00:05:56 +06:00
Shannon Deminick
75d218d2e3
Updated how mappers for persistence work with the MapperFor attribute and have made BaseMapper public but have
...
kept all properties, etc.. internal just so that they can be found so we don't have to register them.
Updates unit test to ensure the plugin manager is init'd properly with the 'false' override. Ensures that the base
db test also initializes the plugin manager properly.
2013-03-13 01:09:29 +04:00
Shannon Deminick
da331b7408
Changed how model mappers work for persistence objects so we don't have to statically associate the mapper.
2013-03-07 22:27:47 +06:00
Morten Christensen
520a7f238d
Refactoring ContentTypeControlNew and ContentControl
2013-02-22 16:25:45 -01:00
Morten@Thinkpad-X220
90108e344f
Refactoring database changes from 4.10.0.
...
Implementing the contnet type composition as part of U4-956.
2012-10-10 07:15:51 -02:00
Morten@Thinkpad-X220
58ee5b4d55
Adding Property and PropertyCollection classes U4-924.
...
Adding PropertyGroup and PropertyGroupCollection classes U4-926.
Adding PropertyType and PropertyTypeCollection classes U4-925.
Adding DataTypeDefinition and DataTypeDatabaseType U4-927.
Had to update the Property ref. on page and DynamicDocumentExtensions because of a conflict with the new Property class.
2012-10-03 08:03:45 -02:00