Files
Umbraco-CMS/src/Umbraco.Core/Deploy/IDeployContext.cs
Ronald Barendse 4c3c3cd158 v14: Align Deploy interfaces, remove obsolete methods and default interface implementations (#15965)
* Align FromArtifact return type with IDataType.ConfigurationData

* Align Alias nullability with interface

* Lazily initialize ArtifactDependency collection when not set

* Remove ShouldSerializeChecksum (not used by STJ)

* Remove obsolete methods and default interface implementations

* Order dependencies once when setting collection

* Update test to include artifact Checksum property
2024-04-10 10:12:38 +02:00

57 lines
1.3 KiB
C#

namespace Umbraco.Cms.Core.Deploy;
/// <summary>
/// Represents a deployment context.
/// </summary>
public interface IDeployContext
{
/// <summary>
/// Gets the unique identifier of the deployment.
/// </summary>
/// <value>
/// The session identifier.
/// </value>
Guid SessionId { get; }
/// <summary>
/// Gets the file source.
/// </summary>
/// <value>
/// The file source.
/// </value>
/// <remarks>
/// The file source is used to obtain files from the source environment.
/// </remarks>
IFileSource FileSource { get; }
/// <summary>
/// Gets items.
/// </summary>
/// <value>
/// The items.
/// </value>
IDictionary<string, object> Items { get; }
/// <summary>
/// Gets the next number in a numerical sequence.
/// </summary>
/// <returns>
/// The next sequence number.
/// </returns>
/// <remarks>
/// Can be used to uniquely number things during a deployment.
/// </remarks>
int NextSeq();
/// <summary>
/// Gets item.
/// </summary>
/// <typeparam name="T">The type of the item.</typeparam>
/// <param name="key">The key of the item.</param>
/// <returns>
/// The item with the specified key and type, if any, else null.
/// </returns>
T? Item<T>(string key)
where T : class;
}