docs: XML warnings (#14663)
* chore: Fix XML warnings * docs: Fix XML warnings * docs: Fix XML in resource designer * docs: Fix XML warnings * Revert "docs: Fix XML in resource designer" This reverts commit 8ea61c51ac161e1853ae080db7fe1b4d4cb4d2be.
This commit is contained in:
committed by
GitHub
parent
401c881567
commit
6d48091328
@@ -49,6 +49,7 @@ public sealed class ImageSharpImageUrlGenerator : IImageUrlGenerator
|
||||
/// Initializes a new instance of the <see cref="ImageSharpImageUrlGenerator" /> class.
|
||||
/// </summary>
|
||||
/// <param name="supportedImageFileTypes">The supported image file types/extensions.</param>
|
||||
/// <param name="options">The ImageSharp middleware options.</param>
|
||||
/// <param name="requestAuthorizationUtilities">Contains helpers that allow authorization of image requests.</param>
|
||||
/// <remarks>
|
||||
/// This constructor is only used for testing.
|
||||
|
||||
@@ -22,7 +22,7 @@ internal class SqlServerEFCoreDistributedLockingMechanism<T> : IDistributedLocki
|
||||
private readonly Lazy<IEFCoreScopeAccessor<T>> _scopeAccessor; // Hooray it's a circular dependency.
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="SqlServerDistributedLockingMechanism" /> class.
|
||||
/// Initializes a new instance of the <see cref="SqlServerEFCoreDistributedLockingMechanism{T}"/> class.
|
||||
/// </summary>
|
||||
public SqlServerEFCoreDistributedLockingMechanism(
|
||||
ILogger<SqlServerEFCoreDistributedLockingMechanism<T>> logger,
|
||||
|
||||
@@ -35,7 +35,7 @@ public abstract class CacheRefresherBase<TNotification> : ICacheRefresher
|
||||
public abstract string Name { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the <see cref="ICacheRefresherNotificationFactory" /> for <see cref="TNotification" />
|
||||
/// Gets the <see cref="ICacheRefresherNotificationFactory" /> for <typeparamref name="TNotification"/>.
|
||||
/// </summary>
|
||||
protected ICacheRefresherNotificationFactory NotificationFactory { get; }
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ public abstract class JsonCacheRefresherBase<TNotification, TJsonPayload> : Cach
|
||||
where TNotification : CacheRefresherNotification
|
||||
{
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="JsonCacheRefresherBase{TInstanceType}" />.
|
||||
/// Initializes a new instance of the <see cref="JsonCacheRefresherBase{TNotification, TJsonPayload}"/> class.
|
||||
/// </summary>
|
||||
protected JsonCacheRefresherBase(
|
||||
AppCaches appCaches,
|
||||
|
||||
@@ -37,7 +37,7 @@ public class EventClearingObservableCollection<TValue> : ObservableCollection<TV
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Clears all event handlers for the <see cref="CollectionChanged" /> event
|
||||
/// Clears all event handlers for the <see cref="INotifyCollectionChanged.CollectionChanged" /> event.
|
||||
/// </summary>
|
||||
public void ClearCollectionChangedEvents() => _changed = null;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace Umbraco.Cms.Core.Collections;
|
||||
@@ -84,7 +84,7 @@ public class ObservableDictionary<TKey, TValue> : ObservableCollection<TValue>,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Clears all <see cref="CollectionChanged" /> event handlers
|
||||
/// Clears all <see cref="INotifyCollectionChanged.CollectionChanged" /> event handlers
|
||||
/// </summary>
|
||||
public void ClearCollectionChangedEvents() => _changed = null;
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using System.Reflection;
|
||||
using Umbraco.Cms.Core.Semver;
|
||||
|
||||
namespace Umbraco.Cms.Core.Configuration;
|
||||
|
||||
@@ -53,7 +53,7 @@ public static partial class Constants
|
||||
public static readonly char[] Comma = { ',' };
|
||||
|
||||
/// <summary>
|
||||
/// Char array containing only &
|
||||
/// Char array containing only &
|
||||
/// </summary>
|
||||
public static readonly char[] Ampersand = { '&' };
|
||||
|
||||
@@ -88,7 +88,7 @@ public static partial class Constants
|
||||
public static readonly char[] QuestionMark = { '?' };
|
||||
|
||||
/// <summary>
|
||||
/// Char array containing ? &
|
||||
/// Char array containing ? &
|
||||
/// </summary>
|
||||
public static readonly char[] QuestionMarkAmpersand = { '?', '&' };
|
||||
|
||||
|
||||
@@ -33,8 +33,8 @@ public class DelegateEqualityComparer<T> : IEqualityComparer<T>
|
||||
/// <returns>
|
||||
/// true if the specified objects are equal; otherwise, false.
|
||||
/// </returns>
|
||||
/// <param name="x">The first object of type <paramref name="T" /> to compare.</param>
|
||||
/// <param name="y">The second object of type <paramref name="T" /> to compare.</param>
|
||||
/// <param name="x">The first object of type <typeparamref name="T"/> to compare.</param>
|
||||
/// <param name="y">The second object of type <typeparamref name="T"/> to compare.</param>
|
||||
public bool Equals(T? x, T? y) => _equals.Invoke(x, y);
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -6,7 +6,7 @@ using Umbraco.Cms.Core.Models.PublishedContent;
|
||||
namespace Umbraco.Extensions;
|
||||
|
||||
/// <summary>
|
||||
/// Provides extension methods to the <see cref="IFactory" /> class.
|
||||
/// Provides extension methods to the <see cref="IServiceProvider" /> class.
|
||||
/// </summary>
|
||||
public static class ServiceProviderExtensions
|
||||
{
|
||||
@@ -28,7 +28,7 @@ public static class ServiceProviderExtensions
|
||||
/// <summary>
|
||||
/// Creates an instance of a service, with arguments.
|
||||
/// </summary>
|
||||
/// <param name="serviceProvider">The <see cref="IServiceProvider" /></param>
|
||||
/// <param name="serviceProvider">The <see cref="IServiceProvider" />.</param>
|
||||
/// <param name="type">The type of the instance.</param>
|
||||
/// <param name="args">Named arguments.</param>
|
||||
/// <returns>An instance of the specified type.</returns>
|
||||
|
||||
@@ -167,7 +167,7 @@ public static class ExpressionHelper
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets a <see cref="MethodInfo" /> from an <see cref="Expression{Action{T}}" /> provided it refers to a method call.
|
||||
/// Gets a <see cref="MethodInfo" /> from an <see cref="Expression{TDelegate}"/> of <see cref="Action{T}"/> provided it refers to a method call.
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <param name="fromExpression">From expression.</param>
|
||||
@@ -254,7 +254,7 @@ public static class ExpressionHelper
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets a <see cref="MemberInfo" /> from an <see cref="Expression{Func{T, TReturn}}" /> provided it refers to member
|
||||
/// Gets a <see cref="MemberInfo" /> from an <see cref="Expression{TDelegate}" /> of <see cref="Func{T, TReturn}"/> provided it refers to member
|
||||
/// access.
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
|
||||
@@ -320,6 +320,8 @@ public static class ContentExtensions
|
||||
/// Stores a file.
|
||||
/// </summary>
|
||||
/// <param name="content"><see cref="IContentBase" />A content item.</param>
|
||||
/// <param name="mediaFileManager">The media file manager.</param>
|
||||
/// <param name="contentTypeBaseServiceProvider">The content type base service provider.</param>
|
||||
/// <param name="propertyTypeAlias">The property alias.</param>
|
||||
/// <param name="filename">The name of the file.</param>
|
||||
/// <param name="filestream">A stream containing the file data.</param>
|
||||
|
||||
@@ -11,7 +11,7 @@ using Umbraco.Cms.Core;
|
||||
namespace Umbraco.Extensions;
|
||||
|
||||
/// <summary>
|
||||
/// Extension methods for Dictionary & ConcurrentDictionary
|
||||
/// Extension methods for Dictionary & ConcurrentDictionary.
|
||||
/// </summary>
|
||||
public static class DictionaryExtensions
|
||||
{
|
||||
@@ -254,7 +254,7 @@ public static class DictionaryExtensions
|
||||
|
||||
/// <summary>
|
||||
/// Converts a dictionary object to a query string representation such as:
|
||||
/// firstname=shannon&lastname=deminick
|
||||
/// firstname=shannon&lastname=deminick.
|
||||
/// </summary>
|
||||
/// <param name="d"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -353,7 +353,8 @@ public static class EnumerableExtensions
|
||||
/// <summary>
|
||||
/// Transforms an enumerable.
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <typeparam name="TSource"></typeparam>
|
||||
/// <typeparam name="TTarget"></typeparam>
|
||||
/// <param name="source"></param>
|
||||
/// <param name="transform"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -1253,7 +1253,7 @@ public static class PublishedContentExtensions
|
||||
/// </returns>
|
||||
/// <remarks>
|
||||
/// This is the same as calling
|
||||
/// <see cref="Umbraco.Web.PublishedContentExtensions.AncestorOrSelf(IPublishedContent, int)" /> with <c>maxLevel</c>
|
||||
/// <see cref="AncestorOrSelf(IPublishedContent, int)" /> with <c>maxLevel</c>
|
||||
/// set to 1.
|
||||
/// </remarks>
|
||||
public static IPublishedContent Root(this IPublishedContent content) => content.AncestorOrSelf(1);
|
||||
@@ -1270,7 +1270,7 @@ public static class PublishedContentExtensions
|
||||
/// </returns>
|
||||
/// <remarks>
|
||||
/// This is the same as calling
|
||||
/// <see cref="Umbraco.Web.PublishedContentExtensions.AncestorOrSelf{T}(IPublishedContent, int)" /> with
|
||||
/// <see cref="AncestorOrSelf{T}(IPublishedContent, int)" /> with
|
||||
/// <c>maxLevel</c> set to 1.
|
||||
/// </remarks>
|
||||
public static T? Root<T>(this IPublishedContent content)
|
||||
|
||||
@@ -28,7 +28,7 @@ public static class RequestHandlerSettingsExtension
|
||||
return RequestHandlerSettings.DefaultCharCollection;
|
||||
}
|
||||
|
||||
/// Merges CharCollection and UserDefinedCharCollection, prioritizing UserDefinedCharCollection.
|
||||
// Merges CharCollection and UserDefinedCharCollection, prioritizing UserDefinedCharCollection.
|
||||
return MergeUnique(requestHandlerSettings.UserDefinedCharCollection, RequestHandlerSettings.DefaultCharCollection);
|
||||
}
|
||||
|
||||
|
||||
@@ -194,7 +194,7 @@ public static class StringExtensions
|
||||
/// <returns></returns>
|
||||
/// <remarks>
|
||||
/// This methods ensures that the resulting URL is structured correctly, that there's only one '?' and that things are
|
||||
/// delimited properly with '&'
|
||||
/// delimited properly with '&'
|
||||
/// </remarks>
|
||||
public static string AppendQueryStringToUrl(this string url, params string[] queryStrings)
|
||||
{
|
||||
|
||||
@@ -28,7 +28,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -51,7 +51,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -74,7 +74,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -102,7 +102,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -130,7 +130,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -153,7 +153,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -176,7 +176,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
@@ -203,7 +203,7 @@ public static class XmlExtensions
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="variables" />
|
||||
/// <paramref name="variables" />
|
||||
/// is <c>null</c>, or is empty, or contains only one single
|
||||
/// value which itself is <c>null</c>, then variables are ignored.
|
||||
/// </para>
|
||||
|
||||
@@ -121,7 +121,6 @@ public sealed class MediaFileManager
|
||||
/// <param name="content"></param>
|
||||
/// <param name="mediaFilePath">The file path if a file was found</param>
|
||||
/// <param name="propertyTypeAlias"></param>
|
||||
/// <param name="variationContextAccessor"></param>
|
||||
/// <param name="culture"></param>
|
||||
/// <param name="segment"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -22,14 +22,14 @@ public class UniqueMediaPathScheme : IMediaPathScheme
|
||||
/// <inheritdoc />
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// Returning null so that <see cref="MediaFileSystem.DeleteMediaFiles" /> does *not*
|
||||
/// Returning null so that <see cref="MediaFileManager.DeleteMediaFiles(IEnumerable{string})" /> does *not*
|
||||
/// delete any directory. This is because the above shortening of the Guid to 8 chars
|
||||
/// means we're increasing the risk of collision, and we don't want to delete files
|
||||
/// belonging to other media items.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// And, at the moment, we cannot delete directory "only if it is empty" because of
|
||||
/// race conditions. We'd need to implement locks in <see cref="MediaFileSystem" /> for
|
||||
/// race conditions. We'd need to implement locks in <see cref="MediaFileManager" /> for
|
||||
/// this.
|
||||
/// </para>
|
||||
/// </remarks>
|
||||
|
||||
@@ -113,7 +113,7 @@ public class DisposableTimer : DisposableObjectSlim
|
||||
/// <summary>
|
||||
/// Disposes resources.
|
||||
/// </summary>
|
||||
/// <remarks>Overrides abstract class <see cref="DisposableObject" /> which handles required locking.</remarks>
|
||||
/// <remarks>Overrides abstract class <see cref="DisposableObjectSlim" /> which handles required locking.</remarks>
|
||||
protected override void DisposeResources()
|
||||
{
|
||||
Stopwatch.Stop();
|
||||
|
||||
@@ -141,7 +141,7 @@ public sealed class ProfilingLogger : IProfilingLogger
|
||||
public void LogTrace(string messageTemplate, params object[] propertyValues)
|
||||
=> Logger.LogTrace(messageTemplate, propertyValues);
|
||||
|
||||
///<inheritdoc>/>
|
||||
///<inheritdoc/>
|
||||
public bool IsEnabled(LogLevel logLevel)
|
||||
{
|
||||
switch (logLevel)
|
||||
|
||||
@@ -15,7 +15,7 @@ public interface IEmbedProvider
|
||||
/// <summary>
|
||||
/// A collection of querystring request parameters to append to the API URL
|
||||
/// </summary>
|
||||
/// <example>?key=value&key2=value2</example>
|
||||
/// <example>?key=value&key2=value2</example>
|
||||
Dictionary<string, string> RequestParams { get; }
|
||||
|
||||
string? GetMarkup(string url, int maxWidth = 0, int maxHeight = 0);
|
||||
|
||||
@@ -20,9 +20,7 @@ namespace Umbraco.Cms.Core.Models.Blocks
|
||||
/// <param name="content">The content.</param>
|
||||
/// <param name="settingsUdi">The settings UDI.</param>
|
||||
/// <param name="settings">The settings.</param>
|
||||
/// <param name="rowSpan">The number of rows to span</param>
|
||||
/// <param name="columnSpan">The number of columns to span</param>
|
||||
/// <exception cref="System.ArgumentNullException">contentUdi
|
||||
/// <exception cref="ArgumentNullException">contentUdi
|
||||
/// or
|
||||
/// content</exception>
|
||||
public BlockGridItem(Udi contentUdi, IPublishedElement content, Udi settingsUdi, IPublishedElement settings)
|
||||
@@ -114,8 +112,6 @@ namespace Umbraco.Cms.Core.Models.Blocks
|
||||
/// <param name="content">The content.</param>
|
||||
/// <param name="settingsUdi">The settings UDI.</param>
|
||||
/// <param name="settings">The settings.</param>
|
||||
/// <param name="rowSpan">The number of rows to span</param>
|
||||
/// <param name="columnSpan">The number of columns to span</param>
|
||||
public BlockGridItem(Udi contentUdi, T content, Udi settingsUdi, IPublishedElement settings)
|
||||
: base(contentUdi, content, settingsUdi, settings)
|
||||
{
|
||||
@@ -147,8 +143,6 @@ namespace Umbraco.Cms.Core.Models.Blocks
|
||||
/// <param name="content">The content.</param>
|
||||
/// <param name="settingsUdi">The settings udi.</param>
|
||||
/// <param name="settings">The settings.</param>
|
||||
/// <param name="rowSpan">The number of rows to span</param>
|
||||
/// <param name="columnSpan">The number of columns to span</param>
|
||||
public BlockGridItem(Udi contentUdi, TContent content, Udi settingsUdi, TSettings settings)
|
||||
: base(contentUdi, content, settingsUdi, settings)
|
||||
{
|
||||
|
||||
@@ -44,7 +44,8 @@ public interface IBlockReference<TSettings> : IBlockReference
|
||||
/// <summary>
|
||||
/// Represents a data item reference with content and settings for a Block editor implementation.
|
||||
/// </summary>
|
||||
/// <typeparam name="TSettings">The type of the content.</typeparam>
|
||||
/// <typeparam name="TContent">The type of the content.</typeparam>
|
||||
/// <typeparam name="TSettings">The type of the settings.</typeparam>
|
||||
public interface IBlockReference<TContent, TSettings> : IBlockReference<TSettings>
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -59,6 +59,7 @@ public static class ContentRepositoryExtensions
|
||||
/// </summary>
|
||||
/// <param name="content"></param>
|
||||
/// <param name="date"></param>
|
||||
/// <param name="publishing"></param>
|
||||
/// <remarks>
|
||||
/// This is so that in an operation where (for example) 2 languages are updates like french and english, it is possible
|
||||
/// that
|
||||
|
||||
@@ -182,7 +182,6 @@ public sealed class CultureImpact
|
||||
/// </summary>
|
||||
/// <param name="culture">The culture code.</param>
|
||||
/// <param name="isDefault">A value indicating whether the culture is the default culture.</param>
|
||||
/// <param name="allowEditInvariantFromNonDefault">A value indicating if publishing invariant properties from non-default language.</param>
|
||||
[Obsolete("Use ICultureImpactService instead.")]
|
||||
public static CultureImpact Explicit(string? culture, bool isDefault)
|
||||
{
|
||||
@@ -211,7 +210,6 @@ public sealed class CultureImpact
|
||||
/// <param name="culture">The culture code.</param>
|
||||
/// <param name="isDefault">A value indicating whether the culture is the default culture.</param>
|
||||
/// <param name="content">The content item.</param>
|
||||
/// <param name="allowEditInvariantFromNonDefault">A value indicating if publishing invariant properties from non-default language.</param>
|
||||
/// <remarks>
|
||||
/// <para>Validates that the culture is compatible with the variation.</para>
|
||||
/// </remarks>
|
||||
|
||||
@@ -10,6 +10,7 @@ public interface IMediaUrlGenerator
|
||||
/// </summary>
|
||||
/// <param name="propertyEditorAlias">The property editor alias</param>
|
||||
/// <param name="value">The value of the property</param>
|
||||
/// <param name="mediaPath">The media path</param>
|
||||
/// <returns>
|
||||
/// True if a media path was returned
|
||||
/// </returns>
|
||||
|
||||
@@ -58,7 +58,7 @@ public class Media : ContentBase, IMedia
|
||||
/// <summary>
|
||||
/// Changes the <see cref="IMediaType" /> for the current Media object
|
||||
/// </summary>
|
||||
/// <param name="contentType">New MediaType for this Media</param>
|
||||
/// <param name="mediaType">New MediaType for this Media</param>
|
||||
/// <remarks>Leaves PropertyTypes intact after change</remarks>
|
||||
internal void ChangeContentType(IMediaType mediaType) => ChangeContentType(mediaType, false);
|
||||
|
||||
@@ -66,7 +66,7 @@ public class Media : ContentBase, IMedia
|
||||
/// Changes the <see cref="IMediaType" /> for the current Media object and removes PropertyTypes,
|
||||
/// which are not part of the new MediaType.
|
||||
/// </summary>
|
||||
/// <param name="contentType">New MediaType for this Media</param>
|
||||
/// <param name="mediaType">New MediaType for this Media</param>
|
||||
/// <param name="clearProperties">Boolean indicating whether to clear PropertyTypes upon change</param>
|
||||
internal void ChangeContentType(IMediaType mediaType, bool clearProperties)
|
||||
{
|
||||
|
||||
@@ -3,7 +3,7 @@ using Umbraco.Cms.Core.Models.Entities;
|
||||
namespace Umbraco.Cms.Core.Models.Membership;
|
||||
|
||||
/// <summary>
|
||||
/// Represents an <see cref="IContent" /> -> user group & permission key value pair collection
|
||||
/// Represents an <see cref="IContent" /> -> user group & permission key value pair collection
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// This implements <see cref="IEntity" /> purely so it can be used with the repository layer which is why it's
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace Umbraco.Cms.Core.Models.Membership;
|
||||
|
||||
/// <summary>
|
||||
/// Represents an entity -> user group & permission key value pair collection
|
||||
/// Represents an entity -> user group & permission key value pair collection
|
||||
/// </summary>
|
||||
public class EntityPermissionSet
|
||||
{
|
||||
@@ -20,7 +20,7 @@ public class EntityPermissionSet
|
||||
public virtual int EntityId { get; }
|
||||
|
||||
/// <summary>
|
||||
/// The key/value pairs of user group id & single permission
|
||||
/// The key/value pairs of user group id & single permission
|
||||
/// </summary>
|
||||
public EntityPermissionCollection PermissionsSet { get; }
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ namespace Umbraco.Cms.Core.Models;
|
||||
/// <summary>
|
||||
/// Represents a paged result for a model collection
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
[DataContract(Name = "pagedCollection", Namespace = "")]
|
||||
public abstract class PagedResult
|
||||
{
|
||||
|
||||
@@ -3,7 +3,7 @@ using Umbraco.Cms.Core.Cache;
|
||||
namespace Umbraco.Cms.Core.Models.PublishedContent;
|
||||
|
||||
/// <summary>
|
||||
/// Implements <see cref="IVariationContextAccessor" /> on top of <see cref="IHttpContextAccessor" />.
|
||||
/// Implements <see cref="IVariationContextAccessor" /> on top of <see cref="IRequestCache" />.
|
||||
/// </summary>
|
||||
public class HttpContextVariationContextAccessor : IVariationContextAccessor
|
||||
{
|
||||
|
||||
@@ -6,7 +6,9 @@ namespace Umbraco.Cms.Core.Models;
|
||||
/// Represents a range with a minimum and maximum value.
|
||||
/// </summary>
|
||||
/// <typeparam name="T">The type of the minimum and maximum values.</typeparam>
|
||||
/// <seealso cref="IEquatable{Range{T}}" />
|
||||
/// <remarks>
|
||||
/// See also <see cref="IEquatable{T}"/> of <see cref="Range{T}"/>
|
||||
/// </remarks>
|
||||
public class Range<T> : IEquatable<Range<T>>
|
||||
where T : IComparable<T>
|
||||
{
|
||||
|
||||
@@ -24,7 +24,6 @@ public sealed class ContentPublishedNotification : EnumerableObjectNotification<
|
||||
public ContentPublishedNotification(IEnumerable<IContent> target, EventMessages messages, bool includeDescendants)
|
||||
: base(target, messages) => IncludeDescendants = includeDescendants;
|
||||
|
||||
/// </summary>
|
||||
public IEnumerable<IContent> PublishedEntities => Target;
|
||||
|
||||
public bool IncludeDescendants { get; }
|
||||
|
||||
@@ -3,7 +3,7 @@ using System.Text;
|
||||
namespace Umbraco.Cms.Core.Notifications;
|
||||
|
||||
/// <summary>
|
||||
/// Contains event data for the <see cref="ModelBindingException" /> event.
|
||||
/// Contains event data for the <see cref="T:Umbraco.Cms.Web.Common.ModelBinders.ModelBindingException" /> event.
|
||||
/// </summary>
|
||||
public class ModelBindingErrorNotification : INotification
|
||||
{
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
namespace Umbraco.Cms.Core.Notifications;
|
||||
|
||||
/// <summary>
|
||||
/// Notification that occurs at the very end of the Umbraco boot process (after all <see cref="IComponent" />s are
|
||||
/// Notification that occurs at the very end of the Umbraco boot process (after all <see cref="Composing.IComponent" />s are
|
||||
/// initialized).
|
||||
/// </summary>
|
||||
/// <seealso cref="Umbraco.Cms.Core.Notifications.IUmbracoApplicationLifetimeNotification" />
|
||||
/// <seealso cref="IUmbracoApplicationLifetimeNotification" />
|
||||
public class UmbracoApplicationStartingNotification : IUmbracoApplicationLifetimeNotification
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -2,9 +2,9 @@ namespace Umbraco.Cms.Core.Notifications;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Notification that occurs when Umbraco is shutting down (after all <see cref="IComponent" />s are terminated).
|
||||
/// Notification that occurs when Umbraco is shutting down (after all <see cref="Composing.IComponent" />s are terminated).
|
||||
/// </summary>
|
||||
/// <seealso cref="Umbraco.Cms.Core.Notifications.IUmbracoApplicationLifetimeNotification" />
|
||||
/// <seealso cref="IUmbracoApplicationLifetimeNotification" />
|
||||
public class UmbracoApplicationStoppingNotification : IUmbracoApplicationLifetimeNotification
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -22,7 +22,7 @@ public interface IPackageInstallation
|
||||
/// <summary>
|
||||
/// Reads the package xml and returns the <see cref="CompiledPackage" /> model
|
||||
/// </summary>
|
||||
/// <param name="packageFile"></param>
|
||||
/// <param name="packageXmlFile"></param>
|
||||
/// <returns></returns>
|
||||
CompiledPackage ReadPackage(XDocument? packageXmlFile);
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ using Umbraco.Cms.Core.Models;
|
||||
namespace Umbraco.Cms.Core.Persistence.Repositories;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a repository for <see cref="ICacheInstruction" /> entities.
|
||||
/// Represents a repository for <see cref="CacheInstruction" /> entities.
|
||||
/// </summary>
|
||||
public interface ICacheInstructionRepository : IRepository
|
||||
{
|
||||
|
||||
@@ -36,9 +36,8 @@ public interface IDocumentRepository : IContentRepository<int, IContent>, IReadR
|
||||
/// Gets <see cref="IContent" /> objects having an expiration date before (lower than, or equal to) a specified date.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// The content returned from this method may be culture variant, in which case the resulting
|
||||
/// <see cref="IContent.ContentSchedule" /> should be queried
|
||||
/// for which culture(s) have been scheduled.
|
||||
/// The content returned from this method may be culture variant, in which case you can use
|
||||
/// <see cref="Umbraco.Extensions.ContentExtensions.GetStatus(IContent, ContentScheduleCollection, string?)" /> to get the status for a specific culture.
|
||||
/// </remarks>
|
||||
IEnumerable<IContent> GetContentForExpiration(DateTime date);
|
||||
|
||||
@@ -46,9 +45,8 @@ public interface IDocumentRepository : IContentRepository<int, IContent>, IReadR
|
||||
/// Gets <see cref="IContent" /> objects having a release date before (lower than, or equal to) a specified date.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// The content returned from this method may be culture variant, in which case the resulting
|
||||
/// <see cref="IContent.ContentSchedule" /> should be queried
|
||||
/// for which culture(s) have been scheduled.
|
||||
/// The content returned from this method may be culture variant, in which case you can use
|
||||
/// <see cref="Umbraco.Extensions.ContentExtensions.GetStatus(IContent, ContentScheduleCollection, string?)" /> to get the status for a specific culture.
|
||||
/// </remarks>
|
||||
IEnumerable<IContent> GetContentForRelease(DateTime date);
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace Umbraco.Cms.Core.PropertyEditors;
|
||||
|
||||
/// <summary>
|
||||
/// Provides a default implementation for
|
||||
/// <see ref="IPropertyIndexValueFactory">, returning a single field to index containing the property value.
|
||||
/// <see ref="IPropertyIndexValueFactory" />, returning a single field to index containing the property value.
|
||||
/// </summary>
|
||||
public class DefaultPropertyIndexValueFactory : IPropertyIndexValueFactory
|
||||
{
|
||||
|
||||
@@ -17,7 +17,7 @@ public class VoidEditor : DataEditor
|
||||
/// Initializes a new instance of the <see cref="VoidEditor" /> class.
|
||||
/// </summary>
|
||||
/// <param name="aliasSuffix">An optional alias suffix.</param>
|
||||
/// <param name="loggerFactory">A logger factory.</param>
|
||||
/// <param name="dataValueEditorFactory">A data value editor factory.</param>
|
||||
/// <remarks>
|
||||
/// The default alias of the editor is "Umbraco.Void". When a suffix is provided,
|
||||
/// it is appended to the alias. Eg if the suffix is "Foo" the alias is "Umbraco.Void.Foo".
|
||||
@@ -39,7 +39,7 @@ public class VoidEditor : DataEditor
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="VoidEditor" /> class.
|
||||
/// </summary>
|
||||
/// <param name="loggerFactory">A logger factory.</param>
|
||||
/// <param name="dataValueEditorFactory">A data value editor factory.</param>
|
||||
/// <remarks>The alias of the editor is "Umbraco.Void".</remarks>
|
||||
public VoidEditor(
|
||||
IDataValueEditorFactory dataValueEditorFactory)
|
||||
|
||||
@@ -19,7 +19,7 @@ public interface IPublishedContentCache : IPublishedCache
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="hideTopLevelNode" />
|
||||
/// <paramref name="hideTopLevelNode" />
|
||||
/// is <c>null</c> then the settings value is used.
|
||||
/// </para>
|
||||
/// <para>The value of <paramref name="preview" /> overrides defaults.</para>
|
||||
@@ -40,7 +40,7 @@ public interface IPublishedContentCache : IPublishedCache
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// If
|
||||
/// <param name="hideTopLevelNode" />
|
||||
/// <paramref name="hideTopLevelNode" />
|
||||
/// is <c>null</c> then the settings value is used.
|
||||
/// </para>
|
||||
/// <para>Considers published or unpublished content depending on defaults.</para>
|
||||
|
||||
@@ -47,7 +47,6 @@ public class DefaultUrlProvider : IUrlProvider
|
||||
/// <summary>
|
||||
/// Gets the other URLs of a published content.
|
||||
/// </summary>
|
||||
/// <param name="umbracoContextAccessor">The Umbraco context.</param>
|
||||
/// <param name="id">The published content id.</param>
|
||||
/// <param name="current">The current absolute URL.</param>
|
||||
/// <returns>The other URLs for the published content.</returns>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using Umbraco.Cms.Core.Models;
|
||||
using Umbraco.Cms.Core.Models.PublishedContent;
|
||||
using Umbraco.Extensions;
|
||||
|
||||
namespace Umbraco.Cms.Core.Routing;
|
||||
|
||||
@@ -101,7 +102,7 @@ public interface IPublishedRequest
|
||||
/// This flag is based on previous Umbraco versions but it is not clear how this flag can be set by developers
|
||||
/// since
|
||||
/// collission checking only occurs in the back office which is launched by
|
||||
/// <see cref="IPublishedRouter.TryRouteRequestAsync(IPublishedRequestBuilder)" />
|
||||
/// <see cref="PublishedRouter.TryRouteRequest(IPublishedRequestBuilder)" />
|
||||
/// for which events do not execute.
|
||||
/// </para>
|
||||
/// <para>
|
||||
|
||||
@@ -2,6 +2,7 @@ using System.Globalization;
|
||||
using System.Net;
|
||||
using Umbraco.Cms.Core.Models;
|
||||
using Umbraco.Cms.Core.Models.PublishedContent;
|
||||
using Umbraco.Extensions;
|
||||
|
||||
namespace Umbraco.Cms.Core.Routing;
|
||||
|
||||
@@ -162,7 +163,7 @@ public interface IPublishedRequestBuilder
|
||||
/// This flag is based on previous Umbraco versions but it is not clear how this flag can be set by developers
|
||||
/// since
|
||||
/// collission checking only occurs in the back office which is launched by
|
||||
/// <see cref="IPublishedRouter.TryRouteRequestAsync(IPublishedRequestBuilder)" />
|
||||
/// <see cref="PublishedRouter.TryRouteRequest(IPublishedRequestBuilder)" />
|
||||
/// for which events do not execute.
|
||||
/// </para>
|
||||
/// <para>
|
||||
|
||||
@@ -26,6 +26,7 @@ public interface IPublishedRouter
|
||||
/// Updates the request to use the specified <see cref="IPublishedContent" /> item, or NULL
|
||||
/// </summary>
|
||||
/// <param name="request">The request.</param>
|
||||
/// <param name="publishedContent">The published content.</param>
|
||||
/// <remarks>
|
||||
/// <returns>
|
||||
/// A new <see cref="IPublishedRequest" /> based on values from the original <see cref="IPublishedRequest" />
|
||||
|
||||
@@ -21,7 +21,6 @@ namespace Umbraco.Cms.Core.Routing
|
||||
/// <param name="urlProviders">The list of URL providers.</param>
|
||||
/// <param name="mediaUrlProviders">The list of media URL providers.</param>
|
||||
/// <param name="variationContextAccessor">The current variation accessor.</param>
|
||||
/// <param name="propertyEditorCollection"></param>
|
||||
public UrlProvider(IUmbracoContextAccessor umbracoContextAccessor, IOptions<WebRoutingSettings> routingSettings, UrlProviderCollection urlProviders, MediaUrlProviderCollection mediaUrlProviders, IVariationContextAccessor variationContextAccessor)
|
||||
{
|
||||
_umbracoContextAccessor = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor));
|
||||
|
||||
@@ -6,6 +6,7 @@ public interface ILockingMechanism : IDisposable
|
||||
/// Read-locks some lock objects lazily.
|
||||
/// </summary>
|
||||
/// <param name="instanceId">Instance id of the scope who is requesting the lock</param>
|
||||
/// <param name="timeout">Timeout for the lock</param>
|
||||
/// <param name="lockIds">Array of lock object identifiers.</param>
|
||||
void ReadLock(Guid instanceId, TimeSpan? timeout = null, params int[] lockIds);
|
||||
|
||||
@@ -15,6 +16,7 @@ public interface ILockingMechanism : IDisposable
|
||||
/// Write-locks some lock objects lazily.
|
||||
/// </summary>
|
||||
/// <param name="instanceId">Instance id of the scope who is requesting the lock</param>
|
||||
/// <param name="timeout">Timeout for the lock</param>
|
||||
/// <param name="lockIds">Array of object identifiers.</param>
|
||||
void WriteLock(Guid instanceId, TimeSpan? timeout = null, params int[] lockIds);
|
||||
|
||||
@@ -24,6 +26,7 @@ public interface ILockingMechanism : IDisposable
|
||||
/// Eagerly acquires a read-lock
|
||||
/// </summary>
|
||||
/// <param name="instanceId"></param>
|
||||
/// <param name="timeout">Timeout for the lock</param>
|
||||
/// <param name="lockIds"></param>
|
||||
void EagerReadLock(Guid instanceId, TimeSpan? timeout = null, params int[] lockIds);
|
||||
|
||||
@@ -33,6 +36,7 @@ public interface ILockingMechanism : IDisposable
|
||||
/// Eagerly acquires a write-lock
|
||||
/// </summary>
|
||||
/// <param name="instanceId"></param>
|
||||
/// <param name="timeout">Timeout for the lock</param>
|
||||
/// <param name="lockIds"></param>
|
||||
void EagerWriteLock(Guid instanceId, TimeSpan? timeout = null, params int[] lockIds);
|
||||
|
||||
|
||||
@@ -151,8 +151,6 @@ public class ContentPermissions
|
||||
/// </summary>
|
||||
/// <param name="nodeId"></param>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="userService"></param>
|
||||
/// <param name="entityService"></param>
|
||||
/// <param name="entity">The <see cref="IUmbracoEntity" /> item resolved if one was found for the id</param>
|
||||
/// <param name="permissionsToCheck"></param>
|
||||
/// <returns></returns>
|
||||
@@ -218,9 +216,6 @@ public class ContentPermissions
|
||||
/// </summary>
|
||||
/// <param name="nodeId"></param>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="userService"></param>
|
||||
/// <param name="contentService"></param>
|
||||
/// <param name="entityService"></param>
|
||||
/// <param name="contentItem">The <see cref="IContent" /> item resolved if one was found for the id</param>
|
||||
/// <param name="permissionsToCheck"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -5,7 +5,6 @@ namespace Umbraco.Cms.Core.Security;
|
||||
/// <summary>
|
||||
/// An external login provider linked to a user
|
||||
/// </summary>
|
||||
/// <typeparam name="TKey">The PK type for the user</typeparam>
|
||||
public interface IIdentityUserLogin : IEntity, IRememberBeingDirty
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -218,10 +218,9 @@ public class LegacyPasswordSecurity
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return the hash algorithm to use based on the <see cref="IPasswordConfiguration" />
|
||||
/// Return the hash algorithm to use based on the provided <paramref name="algorithm"/>.
|
||||
/// </summary>
|
||||
/// <param name="algorithm">The hashing algorithm name.</param>
|
||||
/// <param name="password"></param>
|
||||
/// <returns></returns>
|
||||
private HashAlgorithm GetHashAlgorithm(string algorithm)
|
||||
{
|
||||
|
||||
@@ -207,7 +207,7 @@ public class ContentService : RepositoryService, IContentService
|
||||
|
||||
/// <summary>
|
||||
/// Used to bulk update the permissions set for a content item. This will replace all permissions
|
||||
/// assigned to an entity with a list of user id & permission pairs.
|
||||
/// assigned to an entity with a list of user id & permission pairs.
|
||||
/// </summary>
|
||||
/// <param name="permissionSet"></param>
|
||||
public void SetPermissions(EntityPermissionSet permissionSet)
|
||||
|
||||
@@ -36,7 +36,9 @@ public interface ICacheInstructionService
|
||||
/// <summary>
|
||||
/// Processes and then prunes pending database cache instructions.
|
||||
/// </summary>
|
||||
/// <param name="released">Flag indicating if process is shutting now and operations should exit.</param>
|
||||
/// <param name="cacheRefreshers">Cache refreshers.</param>
|
||||
/// <param name="serverRole">Server role.</param>
|
||||
/// <param name="cancellationToken">Cancellation token.</param>
|
||||
/// <param name="localIdentity">Local identity of the executing AppDomain.</param>
|
||||
/// <param name="lastPruned">Date of last prune operation.</param>
|
||||
/// <param name="lastId">Id of the latest processed instruction</param>
|
||||
|
||||
@@ -76,12 +76,10 @@ public interface IContentService : IContentServiceBase<IContent>
|
||||
/// </summary>
|
||||
IContent? GetById(int id);
|
||||
|
||||
new
|
||||
|
||||
/// <summary>
|
||||
/// Gets a document.
|
||||
/// </summary>
|
||||
IContent? GetById(Guid key);
|
||||
new IContent? GetById(Guid key);
|
||||
|
||||
/// <summary>
|
||||
/// Gets publish/unpublish schedule for a content node.
|
||||
@@ -167,9 +165,8 @@ public interface IContentService : IContentServiceBase<IContent>
|
||||
/// </summary>
|
||||
/// <returns>An Enumerable list of <see cref="IContent" /> objects</returns>
|
||||
/// <remarks>
|
||||
/// The content returned from this method may be culture variant, in which case the resulting
|
||||
/// <see cref="IContent.ContentSchedule" /> should be queried
|
||||
/// for which culture(s) have been scheduled.
|
||||
/// The content returned from this method may be culture variant, in which case you can use
|
||||
/// <see cref="Umbraco.Extensions.ContentExtensions.GetStatus(IContent, ContentScheduleCollection, string?)" /> to get the status for a specific culture.
|
||||
/// </remarks>
|
||||
IEnumerable<IContent> GetContentForExpiration(DateTime date);
|
||||
|
||||
@@ -178,9 +175,8 @@ public interface IContentService : IContentServiceBase<IContent>
|
||||
/// </summary>
|
||||
/// <returns>An Enumerable list of <see cref="IContent" /> objects</returns>
|
||||
/// <remarks>
|
||||
/// The content returned from this method may be culture variant, in which case the resulting
|
||||
/// <see cref="IContent.ContentSchedule" /> should be queried
|
||||
/// for which culture(s) have been scheduled.
|
||||
/// The content returned from this method may be culture variant, in which case you can use
|
||||
/// <see cref="Umbraco.Extensions.ContentExtensions.GetStatus(IContent, ContentScheduleCollection, string?)" /> to get the status for a specific culture.
|
||||
/// </remarks>
|
||||
IEnumerable<IContent> GetContentForRelease(DateTime date);
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ public interface IExternalLoginWithKeyService : IService
|
||||
/// <summary>
|
||||
/// Saves the external login tokens associated with the user
|
||||
/// </summary>
|
||||
/// <param name="userId">
|
||||
/// <param name="userOrMemberKey">
|
||||
/// The user or member key associated with the logins
|
||||
/// </param>
|
||||
/// <param name="tokens"></param>
|
||||
|
||||
@@ -90,9 +90,6 @@ public interface IMediaService : IContentServiceBase<IMedia>
|
||||
/// <param name="pageIndex">Page number</param>
|
||||
/// <param name="pageSize">Page size</param>
|
||||
/// <param name="totalRecords">Total records query would return without paging</param>
|
||||
/// <param name="orderBy">Field to order by</param>
|
||||
/// <param name="orderDirection">Direction to order by</param>
|
||||
/// <param name="orderBySystemField">Flag to indicate when ordering by system field</param>
|
||||
/// <param name="filter"></param>
|
||||
/// <param name="ordering"></param>
|
||||
/// <returns>An Enumerable list of <see cref="IContent" /> objects</returns>
|
||||
|
||||
@@ -178,7 +178,7 @@ public interface IMemberService : IMembershipMemberService
|
||||
/// </summary>
|
||||
/// <remarks>If no alias is supplied then the count for all Member will be returned</remarks>
|
||||
/// <param name="memberTypeAlias">Optional alias for the MemberType when counting number of Members</param>
|
||||
/// <returns><see cref="System.int" /> with number of Members</returns>
|
||||
/// <returns><see cref="int" /> with number of Members</returns>
|
||||
int Count(string? memberTypeAlias = null);
|
||||
|
||||
/// <summary>
|
||||
@@ -204,7 +204,7 @@ public interface IMemberService : IMembershipMemberService
|
||||
/// <summary>
|
||||
/// Gets a Member by its integer id
|
||||
/// </summary>
|
||||
/// <param name="id"><see cref="System.int" /> Id</param>
|
||||
/// <param name="id"><see cref="int" /> Id</param>
|
||||
/// <returns>
|
||||
/// <see cref="IMember" />
|
||||
/// </returns>
|
||||
@@ -278,7 +278,7 @@ public interface IMemberService : IMembershipMemberService
|
||||
/// Gets a list of Members based on a property search
|
||||
/// </summary>
|
||||
/// <param name="propertyTypeAlias">Alias of the PropertyType to search for</param>
|
||||
/// <param name="value"><see cref="System.string" /> Value to match</param>
|
||||
/// <param name="value"><see cref="string" /> Value to match</param>
|
||||
/// <param name="matchType">
|
||||
/// The type of match to make as <see cref="StringPropertyMatchType" />. Default is
|
||||
/// <see cref="StringPropertyMatchType.Exact" />
|
||||
@@ -295,7 +295,7 @@ public interface IMemberService : IMembershipMemberService
|
||||
/// Gets a list of Members based on a property search
|
||||
/// </summary>
|
||||
/// <param name="propertyTypeAlias">Alias of the PropertyType to search for</param>
|
||||
/// <param name="value"><see cref="System.int" /> Value to match</param>
|
||||
/// <param name="value"><see cref="int" /> Value to match</param>
|
||||
/// <param name="matchType">
|
||||
/// The type of match to make as <see cref="StringPropertyMatchType" />. Default is
|
||||
/// <see cref="StringPropertyMatchType.Exact" />
|
||||
@@ -309,7 +309,7 @@ public interface IMemberService : IMembershipMemberService
|
||||
/// Gets a list of Members based on a property search
|
||||
/// </summary>
|
||||
/// <param name="propertyTypeAlias">Alias of the PropertyType to search for</param>
|
||||
/// <param name="value"><see cref="System.bool" /> Value to match</param>
|
||||
/// <param name="value"><see cref="bool" /> Value to match</param>
|
||||
/// <returns>
|
||||
/// <see cref="IEnumerable{IMember}" />
|
||||
/// </returns>
|
||||
|
||||
@@ -48,7 +48,7 @@ public interface IMembershipMemberService<T> : IService
|
||||
/// but that is how MS have made theirs so we'll follow that principal.
|
||||
/// </remarks>
|
||||
/// <param name="countType"><see cref="MemberCountType" /> to count by</param>
|
||||
/// <returns><see cref="System.int" /> with number of Members or Users for passed in type</returns>
|
||||
/// <returns><see cref="int" /> with number of Members or Users for passed in type</returns>
|
||||
int GetCount(MemberCountType countType);
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -9,14 +9,14 @@ public interface IPackagingService : IService
|
||||
/// <summary>
|
||||
/// Returns a <see cref="CompiledPackage" /> result from an umbraco package file (zip)
|
||||
/// </summary>
|
||||
/// <param name="packageFile"></param>
|
||||
/// <param name="packageXml"></param>
|
||||
/// <returns></returns>
|
||||
CompiledPackage GetCompiledPackageInfo(XDocument packageXml);
|
||||
|
||||
/// <summary>
|
||||
/// Installs the data, entities, objects contained in an umbraco package file (zip)
|
||||
/// </summary>
|
||||
/// <param name="packageFile"></param>
|
||||
/// <param name="packageXmlFile"></param>
|
||||
/// <param name="userId"></param>
|
||||
InstallationSummary InstallCompiledPackageData(FileInfo packageXmlFile, int userId = Constants.Security.SuperUserId);
|
||||
|
||||
|
||||
@@ -167,7 +167,8 @@ public interface IRelationService : IService
|
||||
/// <param name="relationTypeId"></param>
|
||||
/// <param name="pageIndex"></param>
|
||||
/// <param name="pageSize"></param>
|
||||
/// <param name="totalChildren"></param>
|
||||
/// <param name="totalRecords"></param>
|
||||
/// <param name="ordering"></param>
|
||||
/// <returns></returns>
|
||||
IEnumerable<IRelation> GetPagedByRelationTypeId(int relationTypeId, long pageIndex, int pageSize, out long totalRecords, Ordering? ordering = null);
|
||||
|
||||
@@ -213,6 +214,7 @@ public interface IRelationService : IService
|
||||
/// <param name="pageIndex"></param>
|
||||
/// <param name="pageSize"></param>
|
||||
/// <param name="totalChildren"></param>
|
||||
/// <param name="entityTypes"></param>
|
||||
/// <returns>An enumerable list of <see cref="IUmbracoEntity" /></returns>
|
||||
IEnumerable<IUmbracoEntity> GetPagedParentEntitiesByChildId(int id, long pageIndex, int pageSize, out long totalChildren, params UmbracoObjectTypes[] entityTypes);
|
||||
|
||||
@@ -223,6 +225,7 @@ public interface IRelationService : IService
|
||||
/// <param name="pageIndex"></param>
|
||||
/// <param name="pageSize"></param>
|
||||
/// <param name="totalChildren"></param>
|
||||
/// <param name="entityTypes"></param>
|
||||
/// <returns>An enumerable list of <see cref="IUmbracoEntity" /></returns>
|
||||
IEnumerable<IUmbracoEntity> GetPagedChildEntitiesByParentId(int id, long pageIndex, int pageSize, out long totalChildren, params UmbracoObjectTypes[] entityTypes);
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
using Umbraco.Cms.Core.Models;
|
||||
using Umbraco.Cms.Core.Models;
|
||||
|
||||
namespace Umbraco.Cms.Core.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Tag service to query for tags in the tags db table. The tags returned are only relevant for published content &
|
||||
/// Tag service to query for tags in the tags db table. The tags returned are only relevant for published content &
|
||||
/// saved media or members
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
|
||||
@@ -55,7 +55,6 @@ public interface ITrackedReferencesService
|
||||
/// A boolean indicating whether to filter only the RelationTypes which are
|
||||
/// dependencies (isDependency field is set to true).
|
||||
/// </param>
|
||||
/// <param name="totalItems">The total amount of items.</param>
|
||||
/// <returns>A paged result of <see cref="RelationItemModel" /> objects.</returns>
|
||||
PagedModel<RelationItemModel> GetPagedRelationsForItem(int id, long skip, long take, bool filterMustBeIsDependency) => throw new NotImplementedException();
|
||||
|
||||
@@ -69,7 +68,6 @@ public interface ITrackedReferencesService
|
||||
/// A boolean indicating whether to filter only the RelationTypes which are
|
||||
/// dependencies (isDependency field is set to true).
|
||||
/// </param>
|
||||
/// <param name="totalItems">The total amount of items.</param>
|
||||
/// <returns>A paged result of <see cref="RelationItemModel" /> objects.</returns>
|
||||
PagedModel<RelationItemModel> GetPagedDescendantsInReferences(int parentId, long skip, long take, bool filterMustBeIsDependency) => throw new NotImplementedException();
|
||||
|
||||
@@ -83,7 +81,6 @@ public interface ITrackedReferencesService
|
||||
/// A boolean indicating whether to filter only the RelationTypes which are
|
||||
/// dependencies (isDependency field is set to true).
|
||||
/// </param>
|
||||
/// <param name="totalItems">The total amount of items.</param>
|
||||
/// <returns>A paged result of <see cref="RelationItemModel" /> objects.</returns>
|
||||
PagedModel<RelationItemModel> GetPagedItemsWithRelations(int[] ids, long skip, long take, bool filterMustBeIsDependency) => throw new NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// but that is how MS have made theirs so we'll follow that principal.
|
||||
/// </remarks>
|
||||
/// <param name="countType"><see cref="MemberCountType"/> to count by</param>
|
||||
/// <returns><see cref="System.int"/> with number of Members for passed in type</returns>
|
||||
/// <returns><see cref="int"/> with number of Members for passed in type</returns>
|
||||
public int GetCount(MemberCountType countType)
|
||||
{
|
||||
using ICoreScope scope = ScopeProvider.CreateCoreScope(autoComplete: true);
|
||||
@@ -87,7 +87,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// </summary>
|
||||
/// <remarks>If no alias is supplied then the count for all Member will be returned</remarks>
|
||||
/// <param name="memberTypeAlias">Optional alias for the MemberType when counting number of Members</param>
|
||||
/// <returns><see cref="System.int"/> with number of Members</returns>
|
||||
/// <returns><see cref="int"/> with number of Members</returns>
|
||||
public int Count(string? memberTypeAlias = null)
|
||||
{
|
||||
using ICoreScope scope = ScopeProvider.CreateCoreScope(autoComplete: true);
|
||||
@@ -155,7 +155,6 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// <param name="email">Email of the <see cref="IMembershipUser"/> to create</param>
|
||||
/// <param name="passwordValue">This value should be the encoded/encrypted/hashed value for the password that will be stored in the database</param>
|
||||
/// <param name="memberTypeAlias">Alias of the Type</param>
|
||||
/// <param name="isApproved">Is the member approved</param>
|
||||
/// <returns><see cref="IMember"/></returns>
|
||||
IMember IMembershipMemberService<IMember>.CreateWithIdentity(string username, string email, string passwordValue, string memberTypeAlias)
|
||||
=> CreateMemberWithIdentity(username, email, username, passwordValue, memberTypeAlias);
|
||||
@@ -186,15 +185,16 @@ namespace Umbraco.Cms.Core.Services
|
||||
=> CreateMemberWithIdentity(username, email, name, string.Empty, memberTypeAlias, isApproved);
|
||||
|
||||
/// <summary>
|
||||
/// Creates and persists a Member
|
||||
/// Creates and persists a Member.
|
||||
/// </summary>
|
||||
/// <remarks>Using this method will persist the Member object before its returned
|
||||
/// meaning that it will have an Id available (unlike the CreateMember method)</remarks>
|
||||
/// <param name="username">Username of the Member to create</param>
|
||||
/// <param name="email">Email of the Member to create</param>
|
||||
/// <param name="name">Name of the Member to create</param>
|
||||
/// <param name="memberTypeAlias">Alias of the MemberType the Member should be based on</param>
|
||||
/// <param name="isApproved">Optional IsApproved of the Member to create</param>
|
||||
/// meaning that it will have an Id available (unlike the <see cref="CreateMember(string, string, string, string)"/> method).</remarks>
|
||||
/// <param name="username">Username of the Member to create.</param>
|
||||
/// <param name="email">Email of the Member to create.</param>
|
||||
/// <param name="name">Name of the Member to create.</param>
|
||||
/// <param name="passwordValue">Password value of the Member to create.</param>
|
||||
/// <param name="memberTypeAlias">Alias of the MemberType the Member should be based on.</param>
|
||||
/// <param name="isApproved">Optional IsApproved of the Member to create.</param>
|
||||
/// <returns><see cref="IMember"/></returns>
|
||||
public IMember CreateMemberWithIdentity(string username, string email, string name, string passwordValue, string memberTypeAlias, bool isApproved = true)
|
||||
{
|
||||
@@ -230,6 +230,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// <param name="username">Username of the Member to create</param>
|
||||
/// <param name="email">Email of the Member to create</param>
|
||||
/// <param name="memberType">MemberType the Member should be based on</param>
|
||||
/// <param name="isApproved">Is the member approved.</param>
|
||||
/// <returns><see cref="IMember"/></returns>
|
||||
public IMember CreateMemberWithIdentity(string username, string email, IMemberType memberType, bool isApproved)
|
||||
=> CreateMemberWithIdentity(username, email, username, string.Empty, memberType, isApproved);
|
||||
@@ -246,6 +247,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// <param name="email">Email of the Member to create</param>
|
||||
/// <param name="name">Name of the Member to create</param>
|
||||
/// <param name="memberType">MemberType the Member should be based on</param>
|
||||
/// <param name="isApproved">Is the member approved</param>
|
||||
/// <returns><see cref="IMember"/></returns>
|
||||
public IMember CreateMemberWithIdentity(string username, string email, string name, IMemberType memberType, bool isApproved)
|
||||
=> CreateMemberWithIdentity(username, email, name, string.Empty, memberType, isApproved);
|
||||
@@ -260,6 +262,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// <param name="name">Name of the Member to create</param>
|
||||
/// <param name="passwordValue">This value should be the encoded/encrypted/hashed value for the password that will be stored in the database</param>
|
||||
/// <param name="memberType">MemberType the Member should be based on</param>
|
||||
/// <param name="isApproved">Is the member approved</param>
|
||||
/// <returns><see cref="IMember"/></returns>
|
||||
private IMember CreateMemberWithIdentity(string username, string email, string name, string passwordValue, IMemberType memberType, bool isApproved = true)
|
||||
{
|
||||
@@ -296,7 +299,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// <summary>
|
||||
/// Gets a Member by its integer id
|
||||
/// </summary>
|
||||
/// <param name="id"><see cref="System.int"/> Id</param>
|
||||
/// <param name="id"><see cref="int"/> Id</param>
|
||||
/// <returns><see cref="IMember"/></returns>
|
||||
public IMember? GetById(int id)
|
||||
{
|
||||
@@ -580,7 +583,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// Gets a list of Members based on a property search
|
||||
/// </summary>
|
||||
/// <param name="propertyTypeAlias">Alias of the PropertyType to search for</param>
|
||||
/// <param name="value"><see cref="System.string"/> Value to match</param>
|
||||
/// <param name="value"><see cref="string"/> Value to match</param>
|
||||
/// <param name="matchType">The type of match to make as <see cref="StringPropertyMatchType"/>. Default is <see cref="StringPropertyMatchType.Exact"/></param>
|
||||
/// <returns><see cref="IEnumerable{IMember}"/></returns>
|
||||
public IEnumerable<IMember>? GetMembersByPropertyValue(string propertyTypeAlias, string value, StringPropertyMatchType matchType = StringPropertyMatchType.Exact)
|
||||
@@ -614,7 +617,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// Gets a list of Members based on a property search
|
||||
/// </summary>
|
||||
/// <param name="propertyTypeAlias">Alias of the PropertyType to search for</param>
|
||||
/// <param name="value"><see cref="System.int"/> Value to match</param>
|
||||
/// <param name="value"><see cref="int"/> Value to match</param>
|
||||
/// <param name="matchType">The type of match to make as <see cref="StringPropertyMatchType"/>. Default is <see cref="StringPropertyMatchType.Exact"/></param>
|
||||
/// <returns><see cref="IEnumerable{IMember}"/></returns>
|
||||
public IEnumerable<IMember>? GetMembersByPropertyValue(string propertyTypeAlias, int value, ValuePropertyMatchType matchType = ValuePropertyMatchType.Exact)
|
||||
@@ -651,7 +654,7 @@ namespace Umbraco.Cms.Core.Services
|
||||
/// Gets a list of Members based on a property search
|
||||
/// </summary>
|
||||
/// <param name="propertyTypeAlias">Alias of the PropertyType to search for</param>
|
||||
/// <param name="value"><see cref="System.bool"/> Value to match</param>
|
||||
/// <param name="value"><see cref="bool"/> Value to match</param>
|
||||
/// <returns><see cref="IEnumerable{IMember}"/></returns>
|
||||
public IEnumerable<IMember>? GetMembersByPropertyValue(string propertyTypeAlias, bool value)
|
||||
{
|
||||
|
||||
@@ -7,7 +7,7 @@ using Umbraco.Cms.Core.Scoping;
|
||||
namespace Umbraco.Cms.Core.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Tag service to query for tags in the tags db table. The tags returned are only relevant for published content &
|
||||
/// Tag service to query for tags in the tags db table. The tags returned are only relevant for published content &
|
||||
/// saved media or members
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
|
||||
@@ -140,7 +140,7 @@ internal class UserService : RepositoryService, IUserService
|
||||
/// <summary>
|
||||
/// Gets a User by its integer id
|
||||
/// </summary>
|
||||
/// <param name="id"><see cref="System.int" /> Id</param>
|
||||
/// <param name="id"><see cref="int" /> Id</param>
|
||||
/// <returns>
|
||||
/// <see cref="IUser" />
|
||||
/// </returns>
|
||||
@@ -535,7 +535,7 @@ internal class UserService : RepositoryService, IUserService
|
||||
/// but that is how MS have made theirs so we'll follow that principal.
|
||||
/// </remarks>
|
||||
/// <param name="countType"><see cref="MemberCountType" /> to count by</param>
|
||||
/// <returns><see cref="System.int" /> with number of Users for passed in type</returns>
|
||||
/// <returns><see cref="int" /> with number of Users for passed in type</returns>
|
||||
public int GetCount(MemberCountType countType)
|
||||
{
|
||||
using (ICoreScope scope = ScopeProvider.CreateCoreScope(autoComplete: true))
|
||||
@@ -945,19 +945,12 @@ internal class UserService : RepositoryService, IUserService
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Saves a UserGroup
|
||||
/// Saves a UserGroup.
|
||||
/// </summary>
|
||||
/// <param name="userGroup">UserGroup to save</param>
|
||||
/// <param name="userGroup">UserGroup to save.</param>
|
||||
/// <param name="userIds">
|
||||
/// If null than no changes are made to the users who are assigned to this group, however if a value is passed in
|
||||
/// than all users will be removed from this group and only these users will be added
|
||||
/// </param>
|
||||
/// Default is
|
||||
/// <c>True</c>
|
||||
/// otherwise set to
|
||||
/// <c>False</c>
|
||||
/// to not raise events
|
||||
/// </param>
|
||||
/// than all users will be removed from this group and only these users will be added.</param>
|
||||
public void Save(IUserGroup userGroup, int[]? userIds = null)
|
||||
{
|
||||
EventMessages evtMsgs = EventMessagesFactory.Get();
|
||||
|
||||
@@ -19,7 +19,6 @@ public sealed class ElectedServerRoleAccessor : IServerRoleAccessor
|
||||
/// Initializes a new instance of the <see cref="ElectedServerRoleAccessor" /> class.
|
||||
/// </summary>
|
||||
/// <param name="registrationService">The registration service.</param>
|
||||
/// <param name="options">Some options.</param>
|
||||
public ElectedServerRoleAccessor(IServerRegistrationService registrationService) => _registrationService =
|
||||
registrationService ?? throw new ArgumentNullException(nameof(registrationService));
|
||||
|
||||
|
||||
@@ -62,6 +62,9 @@ public class RefreshInstruction
|
||||
/// <summary>
|
||||
/// A private constructor to create a new instance
|
||||
/// </summary>
|
||||
/// <param name="refresher"></param>
|
||||
/// <param name="refreshType"></param>
|
||||
/// <param name="json"></param>
|
||||
/// <param name="idCount">
|
||||
/// When the refresh method is <see cref="RefreshMethodType.RefreshByIds" /> we know how many Ids are being refreshed
|
||||
/// so we know the instruction
|
||||
|
||||
@@ -65,7 +65,6 @@ public sealed class HtmlLocalLinkParser
|
||||
/// Parses the string looking for the {localLink} syntax and updates them to their correct links.
|
||||
/// </summary>
|
||||
/// <param name="text"></param>
|
||||
/// <param name="urlProvider"></param>
|
||||
/// <returns></returns>
|
||||
public string EnsureInternalLinks(string text)
|
||||
{
|
||||
|
||||
@@ -16,7 +16,6 @@ public interface ISearchableTree : IDiscoverable
|
||||
/// <param name="query"></param>
|
||||
/// <param name="pageSize"></param>
|
||||
/// <param name="pageIndex"></param>
|
||||
/// <param name="totalFound"></param>
|
||||
/// <param name="searchFrom">
|
||||
/// A starting point for the search, generally a node id, but for members this is a member type alias
|
||||
/// </param>
|
||||
|
||||
@@ -17,7 +17,7 @@ public class HybridUmbracoContextAccessor : HybridAccessorBase<IUmbracoContext>,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Tries to get the <see cref="UmbracoContext" /> object.
|
||||
/// Tries to get the <see cref="IUmbracoContext" /> object.
|
||||
/// </summary>
|
||||
public bool TryGetUmbracoContext([MaybeNullWhen(false)] out IUmbracoContext umbracoContext)
|
||||
{
|
||||
@@ -27,12 +27,12 @@ public class HybridUmbracoContextAccessor : HybridAccessorBase<IUmbracoContext>,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Clears the current <see cref="UmbracoContext" /> object.
|
||||
/// Clears the current <see cref="IUmbracoContext" /> object.
|
||||
/// </summary>
|
||||
public void Clear() => Value = null;
|
||||
|
||||
/// <summary>
|
||||
/// Sets the <see cref="UmbracoContext" /> object.
|
||||
/// Sets the <see cref="IUmbracoContext" /> object.
|
||||
/// </summary>
|
||||
/// <param name="umbracoContext"></param>
|
||||
public void Set(IUmbracoContext umbracoContext) => Value = umbracoContext;
|
||||
|
||||
@@ -14,6 +14,7 @@ public interface IRuntimeMinifier
|
||||
/// Creates a css bundle
|
||||
/// </summary>
|
||||
/// <param name="bundleName"></param>
|
||||
/// <param name="bundleOptions"></param>
|
||||
/// <param name="filePaths"></param>
|
||||
/// <remarks>
|
||||
/// All files must be absolute paths, relative paths will throw <see cref="InvalidOperationException" />
|
||||
@@ -36,7 +37,7 @@ public interface IRuntimeMinifier
|
||||
/// Creates a JS bundle
|
||||
/// </summary>
|
||||
/// <param name="bundleName"></param>
|
||||
/// <param name="optimizeOutput"></param>
|
||||
/// <param name="bundleOptions"></param>
|
||||
/// <param name="filePaths"></param>
|
||||
/// <remarks>
|
||||
/// All files must be absolute paths, relative paths will throw <see cref="InvalidOperationException" />
|
||||
|
||||
@@ -3,13 +3,13 @@ using Examine;
|
||||
namespace Umbraco.Cms.Infrastructure.Examine;
|
||||
|
||||
/// <summary>
|
||||
/// Creates a collection of <see cref="ValueSet" /> to be indexed based on a collection of <see cref="T" />
|
||||
/// Creates a collection of <see cref="ValueSet" /> to be indexed based on a collection of <typeparamref name="T"/>.
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
public interface IValueSetBuilder<in T>
|
||||
{
|
||||
/// <summary>
|
||||
/// Creates a collection of <see cref="ValueSet" /> to be indexed based on a collection of <see cref="T" />
|
||||
/// Creates a collection of <see cref="ValueSet" /> to be indexed based on a collection of <typeparamref name="T"/>.
|
||||
/// </summary>
|
||||
/// <param name="content"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -4,7 +4,7 @@ using Umbraco.Cms.Core.Collections;
|
||||
namespace Umbraco.Cms.Infrastructure.Examine;
|
||||
|
||||
/// <summary>
|
||||
/// An <see cref="IIndexPopulator" /> that is automatically associated to any index of type <see cref="TIndex" />
|
||||
/// An <see cref="IIndexPopulator" /> that is automatically associated to any index of type <typeparamref name="TIndex"/>
|
||||
/// </summary>
|
||||
/// <typeparam name="TIndex"></typeparam>
|
||||
public abstract class IndexPopulator<TIndex> : IndexPopulator
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace Umbraco.Cms.Infrastructure.HostedServices;
|
||||
/// Provides a base class for recurring background tasks implemented as hosted services.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// See: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-3.1&tabs=visual-studio#timed-background-tasks
|
||||
/// See: <see href="https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-3.1&tabs=visual-studio#timed-background-tasks"/>.
|
||||
/// </remarks>
|
||||
public abstract class RecurringHostedServiceBase : IHostedService, IDisposable
|
||||
{
|
||||
|
||||
@@ -124,9 +124,9 @@ namespace Umbraco.Extensions
|
||||
/// Outputs a .txt format log at /App_Data/Logs/
|
||||
/// </summary>
|
||||
/// <param name="logConfig">A Serilog LoggerConfiguration</param>
|
||||
/// <param name="loggingConfiguration"></param>
|
||||
/// <param name="hostingEnvironment"></param>
|
||||
/// <param name="minimumLevel">The log level you wish the JSON file to collect - default is Verbose (highest)</param>
|
||||
/// <param name="retainedFileCount">The number of days to keep log files. Default is set to null which means all logs are kept</param>
|
||||
///
|
||||
[Obsolete("Will be removed in Umbraco 13.")]
|
||||
public static LoggerConfiguration OutputDefaultTextFile(
|
||||
this LoggerConfiguration logConfig,
|
||||
|
||||
@@ -520,19 +520,8 @@ public class DatabaseSchemaCreator
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Drops the table for the specified <typeparamref name="T" />.
|
||||
/// Drops the table for the specified <paramref name="tableName"/>
|
||||
/// </summary>
|
||||
/// <typeparam name="T">The type representing the DTO/table.</typeparam>
|
||||
/// <example>
|
||||
/// <code>
|
||||
/// schemaHelper.DropTable<MyDto>);
|
||||
/// </code>
|
||||
/// </example>
|
||||
/// <remarks>
|
||||
/// If <typeparamref name="T" /> has been decorated with an <see cref="TableNameAttribute" />, the name from that
|
||||
/// attribute will be used for the table name. If the attribute is not present, the name
|
||||
/// <typeparamref name="T" /> will be used instead.
|
||||
/// </remarks>
|
||||
public void DropTable(string? tableName)
|
||||
{
|
||||
var sql = new Sql(string.Format(SqlSyntax.DropTable, SqlSyntax.GetQuotedTableName(tableName)));
|
||||
|
||||
@@ -33,7 +33,7 @@ public abstract class MigrationExpressionBase : IMigrationExpression
|
||||
public List<IMigrationExpression> Expressions => _expressions ??= new List<IMigrationExpression>();
|
||||
|
||||
/// <summary>
|
||||
/// This might be useful in the future if we add it to the interface, but for now it's used to hack the DeleteAppTables & DeleteForeignKeyExpression
|
||||
/// This might be useful in the future if we add it to the interface, but for now it's used to hack the DeleteAppTables & DeleteForeignKeyExpression
|
||||
/// to ensure they are not executed twice.
|
||||
/// </summary>
|
||||
internal string? Name { get; set; }
|
||||
|
||||
@@ -5,11 +5,11 @@ using Umbraco.Extensions;
|
||||
|
||||
namespace Umbraco.Cms.Infrastructure.Migrations.Upgrade.V_8_0_0;
|
||||
|
||||
[Obsolete("This is not used anymore and will be removed in Umbraco 13")]
|
||||
/// <summary>
|
||||
/// Adds a new, self-joined field to umbracoLanguages to hold the fall-back language for
|
||||
/// a given language.
|
||||
/// </summary>
|
||||
[Obsolete("This is not used anymore and will be removed in Umbraco 13")]
|
||||
public class FallbackLanguage : MigrationBase
|
||||
{
|
||||
public FallbackLanguage(IMigrationContext context)
|
||||
|
||||
@@ -3,10 +3,10 @@ using Umbraco.Cms.Infrastructure.Persistence.Dtos;
|
||||
|
||||
namespace Umbraco.Cms.Infrastructure.Migrations.Upgrade.V_8_0_0;
|
||||
|
||||
[Obsolete("This is not used anymore and will be removed in Umbraco 13")]
|
||||
/// <summary>
|
||||
/// Creates/Updates non mandatory FK columns to the user table
|
||||
/// </summary>
|
||||
[Obsolete("This is not used anymore and will be removed in Umbraco 13")]
|
||||
public class UserForeignKeys : MigrationBase
|
||||
{
|
||||
public UserForeignKeys(IMigrationContext context)
|
||||
|
||||
@@ -63,7 +63,7 @@ public class MediaWithCrops<T> : MediaWithCrops
|
||||
public new T Content { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Performs an implicit conversion from <see cref="MediaWithCrops{T}" /> to <see cref="T" />.
|
||||
/// Performs an implicit conversion from <see cref="MediaWithCrops{T}" /> to <typeparamref name="T"/>.
|
||||
/// </summary>
|
||||
/// <param name="mediaWithCrops">The media with crops.</param>
|
||||
/// <returns>
|
||||
|
||||
@@ -35,6 +35,7 @@ public class TextBuilder : Builder
|
||||
/// Initializes a new instance of the <see cref="TextBuilder" /> class with a list of models to generate
|
||||
/// and the result of code parsing.
|
||||
/// </summary>
|
||||
/// <param name="config">The models builder configuration.</param>
|
||||
/// <param name="typeModels">The list of models to generate.</param>
|
||||
public TextBuilder(ModelsBuilderSettings config, IList<TypeModel> typeModels)
|
||||
: base(config, typeModels)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using Umbraco.Cms.Core.Configuration.Models;
|
||||
using Umbraco.Cms.Core.Install.Models;
|
||||
using Umbraco.Cms.Infrastructure.Persistence.SqlSyntax;
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ public abstract class EntityRepositoryBase<TId, TEntity> : RepositoryBase, IRead
|
||||
protected ILogger<EntityRepositoryBase<TId, TEntity>> Logger { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the isolated cache for the <see cref="TEntity" />
|
||||
/// Gets the isolated cache for the <typeparamref name="TEntity"/>
|
||||
/// </summary>
|
||||
protected IAppPolicyCache GlobalIsolatedCache => AppCaches.IsolatedCaches.GetOrCreate<TEntity>();
|
||||
|
||||
@@ -185,7 +185,7 @@ public abstract class EntityRepositoryBase<TId, TEntity> : RepositoryBase, IRead
|
||||
=> PerformCount(query);
|
||||
|
||||
/// <summary>
|
||||
/// Get the entity id for the <see cref="TEntity" />
|
||||
/// Get the entity id for the <typeparamref name="TEntity"/>.
|
||||
/// </summary>
|
||||
protected virtual TId GetEntityId(TEntity entity)
|
||||
=> (TId)(object)entity.Id;
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement;
|
||||
/// </summary>
|
||||
/// <typeparam name="TEntity"></typeparam>
|
||||
/// <remarks>
|
||||
/// This repo implements the base <see cref="NPocoRepositoryBase{TId,TEntity}" /> class so that permissions can be
|
||||
/// This repo implements the base <see cref="EntityRepositoryBase{TId, TEntity}" /> class so that permissions can be
|
||||
/// queued to be persisted
|
||||
/// like the normal repository pattern but the standard repository Get commands don't apply and will throw
|
||||
/// <see cref="NotImplementedException" />
|
||||
|
||||
@@ -145,7 +145,7 @@ internal class UserRepository : EntityRepositoryBase<int, IUser>, IUserRepositor
|
||||
/// </summary>
|
||||
/// <param name="username"></param>
|
||||
/// <param name="includeSecurityData">
|
||||
/// Can be used for slightly faster user lookups if the result doesn't require security data (i.e. groups, apps & start nodes).
|
||||
/// Can be used for slightly faster user lookups if the result doesn't require security data (i.e. groups, apps & start nodes).
|
||||
/// This is really only used for a shim in order to upgrade to 7.6.
|
||||
/// </param>
|
||||
/// <returns>
|
||||
@@ -160,7 +160,7 @@ internal class UserRepository : EntityRepositoryBase<int, IUser>, IUserRepositor
|
||||
/// <param name="id"></param>
|
||||
/// <param name="includeSecurityData">
|
||||
/// This is really only used for a shim in order to upgrade to 7.6 but could be used
|
||||
/// for slightly faster user lookups if the result doesn't require security data (i.e. groups, apps & start nodes)
|
||||
/// for slightly faster user lookups if the result doesn't require security data (i.e. groups, apps & start nodes)
|
||||
/// </param>
|
||||
/// <returns>
|
||||
/// A non cached <see cref="IUser"/> instance
|
||||
|
||||
@@ -390,7 +390,7 @@ public class UmbracoDatabase : Database, IUmbracoDatabase
|
||||
public new T ExecuteScalar<T>(string sql, params object[] args)
|
||||
=> ExecuteScalar<T>(new Sql(sql, args));
|
||||
|
||||
/// <inheritdoc cref="Database.ExecuteScalar{T}(sql)" />
|
||||
/// <inheritdoc cref="Database.ExecuteScalar{T}(Sql)" />
|
||||
public new T ExecuteScalar<T>(Sql sql)
|
||||
=> ExecuteScalar<T>(sql.SQL, CommandType.Text, sql.Arguments);
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ using NPoco;
|
||||
using Umbraco.Cms.Core.Persistence;
|
||||
using Umbraco.Cms.Infrastructure.Persistence.Dtos;
|
||||
using Umbraco.Cms.Infrastructure.Persistence.SqlSyntax;
|
||||
using Umbraco.Cms.Infrastructure.Runtime;
|
||||
using Umbraco.Extensions;
|
||||
|
||||
namespace Umbraco.Cms.Infrastructure.Persistence;
|
||||
@@ -21,7 +22,7 @@ internal static class UmbracoDatabaseExtensions
|
||||
/// <summary>
|
||||
/// Gets a dictionary of key/values directly from the database, no scope, nothing.
|
||||
/// </summary>
|
||||
/// <remarks>Used by <see cref="CoreRuntimeBootstrapper" /> to determine the runtime state.</remarks>
|
||||
/// <remarks>Used by <see cref="RuntimeState" /> to determine the runtime state.</remarks>
|
||||
public static IReadOnlyDictionary<string, string?>? GetFromKeyValueTable(
|
||||
this IUmbracoDatabase? database,
|
||||
string keyPrefix)
|
||||
|
||||
@@ -119,7 +119,6 @@ internal abstract class BlockEditorPropertyValueEditor : DataValueEditor, IDataV
|
||||
/// Ensure that sub-editor values are translated through their ToEditor methods
|
||||
/// </summary>
|
||||
/// <param name="property"></param>
|
||||
/// <param name="dataTypeService"></param>
|
||||
/// <param name="culture"></param>
|
||||
/// <param name="segment"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
@@ -33,6 +33,7 @@ internal static class ImageCropperConfigurationExtensions
|
||||
/// <summary>
|
||||
/// Applies the configuration to ensure only valid crops are kept and have the correct width/height.
|
||||
/// </summary>
|
||||
/// <param name="imageCropperValue"></param>
|
||||
/// <param name="configuration">The configuration.</param>
|
||||
public static void ApplyConfiguration(this ImageCropperValue imageCropperValue, ImageCropperConfiguration? configuration)
|
||||
{
|
||||
|
||||
@@ -108,7 +108,11 @@ public class BackOfficeIdentityUser : UmbracoIdentityUser
|
||||
/// <summary>
|
||||
/// Used to construct a new instance without an identity
|
||||
/// </summary>
|
||||
/// <param name="globalSettings"></param>
|
||||
/// <param name="username"></param>
|
||||
/// <param name="email">This is allowed to be null (but would need to be filled in if trying to persist this instance)</param>
|
||||
/// <param name="culture"></param>
|
||||
/// <param name="name"></param>
|
||||
public static BackOfficeIdentityUser CreateNew(GlobalSettings globalSettings, string? username, string email, string culture, string? name = null)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(username))
|
||||
|
||||
@@ -14,7 +14,7 @@ public class DeleteExternalLoginsOnMemberDeletedHandler : INotificationHandler<M
|
||||
private readonly IExternalLoginWithKeyService _externalLoginWithKeyService;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="DeleteExternalLoginsOnMemberDeletingHandler" /> class.
|
||||
/// Initializes a new instance of the <see cref="DeleteExternalLoginsOnMemberDeletedHandler"/> class.
|
||||
/// </summary>
|
||||
public DeleteExternalLoginsOnMemberDeletedHandler(IExternalLoginWithKeyService externalLoginWithKeyService)
|
||||
=> _externalLoginWithKeyService = externalLoginWithKeyService;
|
||||
|
||||
@@ -18,7 +18,7 @@ public interface IUmbracoUserManager<TUser> : IDisposable
|
||||
Task<string> GetUserIdAsync(TUser user);
|
||||
|
||||
/// <summary>
|
||||
/// Get the <see cref="TUser" /> from a <see cref="ClaimsPrincipal" />
|
||||
/// Get the <typeparamref name="TUser"/> from a <see cref="ClaimsPrincipal" />
|
||||
/// </summary>
|
||||
/// <param name="principal">The <see cref="ClaimsPrincipal" /></param>
|
||||
/// <returns>A <see cref="Task{TResult}" /> representing the result of the asynchronous operation.</returns>
|
||||
|
||||
@@ -338,9 +338,14 @@ namespace Umbraco.Cms
|
||||
/// <summary>
|
||||
/// Processes the instruction batch and checks for errors.
|
||||
/// </summary>
|
||||
/// <param name="cacheRefreshers"></param>
|
||||
/// <param name="instructionBatch"></param>
|
||||
/// <param name="instruction"></param>
|
||||
/// <param name="processed">
|
||||
/// Tracks which instructions have already been processed to avoid duplicates
|
||||
/// </param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <param name="lastId"></param>
|
||||
/// <returns>
|
||||
/// Returns true if all instructions in the batch were processed, otherwise false if they could not be due to the app being shut down
|
||||
/// </returns>
|
||||
|
||||
@@ -36,6 +36,7 @@ public class UserGroupHandler : MustSatisfyRequirementAuthorizationHandler<UserG
|
||||
/// <param name="mediaService">Service for media related operations.</param>
|
||||
/// <param name="entityService">Service for entity related operations.</param>
|
||||
/// <param name="backOfficeSecurityAccessor">Accessor for back-office security.</param>
|
||||
/// <param name="appCaches">App caches.</param>
|
||||
public UserGroupHandler(
|
||||
IHttpContextAccessor httpContextAccessor,
|
||||
IUserService userService,
|
||||
|
||||
@@ -650,7 +650,6 @@ public class AuthenticationController : UmbracoApiControllerBase
|
||||
/// Return the <see cref="UserDetail" /> for the given <see cref="IUser" />
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="principal"></param>
|
||||
/// <returns></returns>
|
||||
private UserDetail? GetUserDetail(IUser? user)
|
||||
{
|
||||
|
||||
@@ -633,7 +633,7 @@ public class CodeFileController : BackOfficeNotificationsController
|
||||
/// <param name="data">The style sheet data</param>
|
||||
/// <returns>The style sheet combined from the CSS and the rules</returns>
|
||||
/// <remarks>
|
||||
/// Any "umbraco style rules" in the CSS will be removed and replaced with the rules passed in <see cref="data" />
|
||||
/// Any "umbraco style rules" in the CSS will be removed and replaced with the rules passed in <paramref name="data"/>
|
||||
/// </remarks>
|
||||
public string? PostInterpolateStylesheetRules(StylesheetData data)
|
||||
{
|
||||
|
||||
@@ -1962,7 +1962,7 @@ public class ContentController : ContentControllerBase
|
||||
/// <param name="localizationArea"></param>
|
||||
/// <param name="localizationAlias"></param>
|
||||
/// <param name="cultureToken">
|
||||
/// The culture used in the localization message, null by default which means <see cref="culture" /> will be used.
|
||||
/// The culture used in the localization message, null by default which means <paramref name="culture"/> will be used.
|
||||
/// </param>
|
||||
private void AddVariantValidationError(string? culture, string? segment, string localizationArea, string localizationAlias, string? cultureToken = null)
|
||||
{
|
||||
|
||||
@@ -72,7 +72,6 @@ public abstract class ContentControllerBase : BackOfficeNotificationsController
|
||||
/// Handles if the content for the specified ID isn't found
|
||||
/// </summary>
|
||||
/// <param name="id">The content ID to find</param>
|
||||
/// <param name="throwException">Whether to throw an exception</param>
|
||||
/// <returns>The error response</returns>
|
||||
protected NotFoundObjectResult HandleContentNotFound(object id)
|
||||
{
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user