@@ -21,14 +21,12 @@ namespace Umbraco.Cms.Core.Services.Implement
2121 /// </summary>
2222 public class DataTypeService : RepositoryService , IDataTypeService
2323 {
24- private readonly IDataValueEditorFactory _dataValueEditorFactory ;
2524 private readonly IDataTypeRepository _dataTypeRepository ;
2625 private readonly IDataTypeContainerRepository _dataTypeContainerRepository ;
2726 private readonly IContentTypeRepository _contentTypeRepository ;
2827 private readonly IMediaTypeRepository _mediaTypeRepository ;
2928 private readonly IMemberTypeRepository _memberTypeRepository ;
3029 private readonly IAuditService _auditService ;
31- private readonly IIOHelper _ioHelper ;
3230 private readonly IDataTypeContainerService _dataTypeContainerService ;
3331 private readonly IUserIdKeyResolver _userIdKeyResolver ;
3432 private readonly Lazy < IIdKeyMap > _idKeyMap ;
@@ -38,22 +36,18 @@ public DataTypeService(
3836 ILoggerFactory loggerFactory ,
3937 IEventMessagesFactory eventMessagesFactory ,
4038 IDataTypeRepository dataTypeRepository ,
41- IDataValueEditorFactory dataValueEditorFactory ,
4239 IAuditService auditService ,
4340 IContentTypeRepository contentTypeRepository ,
4441 IMediaTypeRepository mediaTypeRepository ,
4542 IMemberTypeRepository memberTypeRepository ,
46- IIOHelper ioHelper ,
4743 Lazy < IIdKeyMap > idKeyMap )
4844 : base ( provider , loggerFactory , eventMessagesFactory )
4945 {
50- _dataValueEditorFactory = dataValueEditorFactory ;
5146 _dataTypeRepository = dataTypeRepository ;
5247 _auditService = auditService ;
5348 _contentTypeRepository = contentTypeRepository ;
5449 _mediaTypeRepository = mediaTypeRepository ;
5550 _memberTypeRepository = memberTypeRepository ;
56- _ioHelper = ioHelper ;
5751 _idKeyMap = idKeyMap ;
5852
5953 // resolve dependencies for obsolete methods through the static service provider, so they don't pollute the constructor signature
@@ -62,7 +56,31 @@ public DataTypeService(
6256 _userIdKeyResolver = StaticServiceProvider . Instance . GetRequiredService < IUserIdKeyResolver > ( ) ;
6357 }
6458
65- [ Obsolete ( "Use the non-obsolete constructor instead. Scheduled removal in v19." ) ]
59+ [ Obsolete ( "Use the non-obsolete constructor instead. Scheduled removal in v18." ) ]
60+ public DataTypeService (
61+ ICoreScopeProvider provider ,
62+ ILoggerFactory loggerFactory ,
63+ IEventMessagesFactory eventMessagesFactory ,
64+ IDataTypeRepository dataTypeRepository ,
65+ IAuditRepository auditRepository ,
66+ IContentTypeRepository contentTypeRepository ,
67+ IMediaTypeRepository mediaTypeRepository ,
68+ IMemberTypeRepository memberTypeRepository ,
69+ Lazy < IIdKeyMap > idKeyMap )
70+ : this (
71+ provider ,
72+ loggerFactory ,
73+ eventMessagesFactory ,
74+ dataTypeRepository ,
75+ StaticServiceProvider . Instance . GetRequiredService < IAuditService > ( ) ,
76+ contentTypeRepository ,
77+ mediaTypeRepository ,
78+ memberTypeRepository ,
79+ idKeyMap )
80+ {
81+ }
82+
83+ [ Obsolete ( "Use the non-obsolete constructor instead. Scheduled removal in v18." ) ]
6684 public DataTypeService (
6785 ICoreScopeProvider provider ,
6886 ILoggerFactory loggerFactory ,
@@ -80,17 +98,15 @@ public DataTypeService(
8098 loggerFactory ,
8199 eventMessagesFactory ,
82100 dataTypeRepository ,
83- dataValueEditorFactory ,
84101 StaticServiceProvider . Instance . GetRequiredService < IAuditService > ( ) ,
85102 contentTypeRepository ,
86103 mediaTypeRepository ,
87104 memberTypeRepository ,
88- ioHelper ,
89105 idKeyMap )
90106 {
91107 }
92108
93- [ Obsolete ( "Use the non-obsolete constructor instead. Scheduled removal in v19 ." ) ]
109+ [ Obsolete ( "Use the non-obsolete constructor instead. Scheduled removal in v18 ." ) ]
94110 public DataTypeService (
95111 ICoreScopeProvider provider ,
96112 ILoggerFactory loggerFactory ,
@@ -109,12 +125,10 @@ public DataTypeService(
109125 loggerFactory ,
110126 eventMessagesFactory ,
111127 dataTypeRepository ,
112- dataValueEditorFactory ,
113128 auditService ,
114129 contentTypeRepository ,
115130 mediaTypeRepository ,
116131 memberTypeRepository ,
117- ioHelper ,
118132 idKeyMap )
119133 {
120134 }
@@ -289,7 +303,6 @@ public IEnumerable<EntityContainer> GetContainers(int[] containerIds)
289303 {
290304 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
291305 IDataType ? dataType = _dataTypeRepository . Get ( Query < IDataType > ( ) . Where ( x => x . Name == name ) ) ? . FirstOrDefault ( ) ;
292- ConvertMissingEditorOfDataTypeToLabel ( dataType ) ;
293306
294307 return Task . FromResult ( dataType ) ;
295308 }
@@ -306,7 +319,6 @@ public Task<IEnumerable<IDataType>> GetAllAsync(params Guid[] keys)
306319 }
307320
308321 IDataType [ ] dataTypes = _dataTypeRepository . Get ( query ) . ToArray ( ) ;
309- ConvertMissingEditorsOfDataTypesToLabels ( dataTypes ) ;
310322
311323 return Task . FromResult < IEnumerable < IDataType > > ( dataTypes ) ;
312324 }
@@ -350,7 +362,6 @@ public Task<PagedModel<IDataType>> FilterAsync(string? name = null, string? edit
350362 {
351363 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
352364 IDataType ? dataType = _dataTypeRepository . Get ( id ) ;
353- ConvertMissingEditorOfDataTypeToLabel ( dataType ) ;
354365
355366 return dataType ;
356367 }
@@ -360,7 +371,6 @@ public Task<PagedModel<IDataType>> FilterAsync(string? name = null, string? edit
360371 {
361372 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
362373 IDataType ? dataType = GetDataTypeFromRepository ( id ) ;
363- ConvertMissingEditorOfDataTypeToLabel ( dataType ) ;
364374
365375 return Task . FromResult ( dataType ) ;
366376 }
@@ -380,7 +390,6 @@ public Task<IEnumerable<IDataType>> GetByEditorAliasAsync(string propertyEditorA
380390 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
381391 IQuery < IDataType > query = Query < IDataType > ( ) . Where ( x => x . EditorAlias == propertyEditorAlias ) ;
382392 IEnumerable < IDataType > dataTypes = _dataTypeRepository . Get ( query ) . ToArray ( ) ;
383- ConvertMissingEditorsOfDataTypesToLabels ( dataTypes ) ;
384393
385394 return Task . FromResult ( dataTypes ) ;
386395 }
@@ -391,7 +400,6 @@ public Task<IEnumerable<IDataType>> GetByEditorAliasAsync(string[] propertyEdito
391400 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
392401 IQuery < IDataType > query = Query < IDataType > ( ) . Where ( x => propertyEditorAlias . Contains ( x . EditorAlias ) ) ;
393402 IEnumerable < IDataType > dataTypes = _dataTypeRepository . Get ( query ) . ToArray ( ) ;
394- ConvertMissingEditorsOfDataTypesToLabels ( dataTypes ) ;
395403 return Task . FromResult ( dataTypes ) ;
396404 }
397405
@@ -401,7 +409,6 @@ public Task<IEnumerable<IDataType>> GetByEditorUiAlias(string editorUiAlias)
401409 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
402410 IQuery < IDataType > query = Query < IDataType > ( ) . Where ( x => x . EditorUiAlias == editorUiAlias ) ;
403411 IEnumerable < IDataType > dataTypes = _dataTypeRepository . Get ( query ) . ToArray ( ) ;
404- ConvertMissingEditorsOfDataTypesToLabels ( dataTypes ) ;
405412
406413 return Task . FromResult ( dataTypes ) ;
407414 }
@@ -415,32 +422,10 @@ public IEnumerable<IDataType> GetAll(params int[] ids)
415422 {
416423 using ICoreScope scope = ScopeProvider . CreateCoreScope ( autoComplete : true ) ;
417424 IEnumerable < IDataType > dataTypes = _dataTypeRepository . GetMany ( ids ) . ToArray ( ) ;
418- ConvertMissingEditorsOfDataTypesToLabels ( dataTypes ) ;
419425
420426 return dataTypes ;
421427 }
422428
423- private void ConvertMissingEditorOfDataTypeToLabel ( IDataType ? dataType )
424- {
425- if ( dataType == null )
426- {
427- return ;
428- }
429-
430- ConvertMissingEditorsOfDataTypesToLabels ( [ dataType ] ) ;
431- }
432-
433- private void ConvertMissingEditorsOfDataTypesToLabels ( IEnumerable < IDataType > dataTypes )
434- {
435- // Any data types that don't have an associated editor are created of a specific type.
436- // We convert them to labels to make clear to the user why the data type cannot be used.
437- IEnumerable < IDataType > dataTypesWithMissingEditors = dataTypes . Where ( x => x . Editor is MissingPropertyEditor ) ;
438- foreach ( IDataType dataType in dataTypesWithMissingEditors )
439- {
440- dataType . Editor = new LabelPropertyEditor ( _dataValueEditorFactory , _ioHelper ) ;
441- }
442- }
443-
444429 public Attempt < OperationResult < MoveOperationStatusType > ? > Move ( IDataType toMove , int parentId )
445430 {
446431 Guid ? containerKey = null ;
0 commit comments