WIP - new IEntityXmlSerializer, IPackageCreation, PackageActionRunner, large refactor of entity serialization, no more IPackagingService.Export methods, ports legacy package creation code to new IPackageCreation, more more ExportEventArgs (makes no sense)
This commit is contained in:
9
src/Umbraco.Core/Models/Packaging/ActionRunAt.cs
Normal file
9
src/Umbraco.Core/Models/Packaging/ActionRunAt.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
namespace Umbraco.Core.Models.Packaging
|
||||
{
|
||||
public enum ActionRunAt
|
||||
{
|
||||
Undefined = 0,
|
||||
Install,
|
||||
Uninstall
|
||||
}
|
||||
}
|
||||
@@ -21,23 +21,4 @@ namespace Umbraco.Core.Models.Packaging
|
||||
public IEnumerable<PackageAction> Actions { get; set; }
|
||||
public bool PackageInstalled { get; set; }
|
||||
}
|
||||
|
||||
internal static class InstallationSummaryExtentions
|
||||
{
|
||||
public static InstallationSummary InitEmpty(this InstallationSummary summary)
|
||||
{
|
||||
summary.Actions = new List<PackageAction>();
|
||||
summary.ContentInstalled = new List<IContent>();
|
||||
summary.ContentTypesInstalled = new List<IContentType>();
|
||||
summary.DataTypesInstalled = new List<IDataType>();
|
||||
summary.DictionaryItemsInstalled = new List<IDictionaryItem>();
|
||||
summary.FilesInstalled = new List<string>();
|
||||
summary.LanguagesInstalled = new List<ILanguage>();
|
||||
summary.MacrosInstalled = new List<IMacro>();
|
||||
summary.MetaData = new MetaData();
|
||||
summary.TemplatesInstalled = new List<ITemplate>();
|
||||
summary.PackageInstalled = false;
|
||||
return summary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Umbraco.Core.Models.Packaging
|
||||
{
|
||||
internal static class InstallationSummaryExtentions
|
||||
{
|
||||
public static InstallationSummary InitEmpty(this InstallationSummary summary)
|
||||
{
|
||||
summary.Actions = new List<PackageAction>();
|
||||
summary.ContentInstalled = new List<IContent>();
|
||||
summary.ContentTypesInstalled = new List<IContentType>();
|
||||
summary.DataTypesInstalled = new List<IDataType>();
|
||||
summary.DictionaryItemsInstalled = new List<IDictionaryItem>();
|
||||
summary.FilesInstalled = new List<string>();
|
||||
summary.LanguagesInstalled = new List<ILanguage>();
|
||||
summary.MacrosInstalled = new List<IMacro>();
|
||||
summary.MetaData = new MetaData();
|
||||
summary.TemplatesInstalled = new List<ITemplate>();
|
||||
summary.PackageInstalled = false;
|
||||
return summary;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,13 +4,9 @@ using System.Xml.Linq;
|
||||
|
||||
namespace Umbraco.Core.Models.Packaging
|
||||
{
|
||||
public enum ActionRunAt
|
||||
{
|
||||
Undefined = 0,
|
||||
Install,
|
||||
Uninstall
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Defines a package action declared within a package manifest
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
[DataContract(IsReference = true)]
|
||||
public class PackageAction
|
||||
|
||||
108
src/Umbraco.Core/Models/Packaging/PackageDefinition.cs
Normal file
108
src/Umbraco.Core/Models/Packaging/PackageDefinition.cs
Normal file
@@ -0,0 +1,108 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Runtime.Serialization;
|
||||
|
||||
namespace Umbraco.Core.Models.Packaging
|
||||
{
|
||||
[DataContract(Name = "packageInstance")]
|
||||
public class PackageDefinition
|
||||
{
|
||||
[DataMember(Name = "id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
//TODO: I don't see why this is necessary
|
||||
[DataMember(Name = "repositoryGuid")]
|
||||
public string RepositoryGuid { get; set; }
|
||||
|
||||
[DataMember(Name = "packageGuid")]
|
||||
public string PackageGuid { get; set; }
|
||||
|
||||
[DataMember(Name = "hasUpdate")]
|
||||
public bool HasUpdate { get; set; }
|
||||
|
||||
[DataMember(Name = "name")]
|
||||
[Required]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "url")]
|
||||
[Required]
|
||||
[Url]
|
||||
public string Url { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "folder")]
|
||||
public string Folder { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "packagePath")]
|
||||
public string PackagePath { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "version")]
|
||||
[Required]
|
||||
public string Version { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The minimum umbraco version that this package requires
|
||||
/// </summary>
|
||||
[DataMember(Name = "umbracoVersion")]
|
||||
public Version UmbracoVersion { get; set; }
|
||||
|
||||
[DataMember(Name = "author")]
|
||||
[Required]
|
||||
public string Author { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "authorUrl")]
|
||||
[Required]
|
||||
[Url]
|
||||
public string AuthorUrl { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "license")]
|
||||
public string License { get; set; } = "MIT License";
|
||||
|
||||
[DataMember(Name = "licenseUrl")]
|
||||
public string LicenseUrl { get; set; } = "http://opensource.org/licenses/MIT";
|
||||
|
||||
[DataMember(Name = "readme")]
|
||||
public string Readme { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "contentLoadChildNodes")]
|
||||
public bool ContentLoadChildNodes { get; set; } = false;
|
||||
|
||||
[DataMember(Name = "contentNodeId")]
|
||||
public string ContentNodeId { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "macros")]
|
||||
public List<string> Macros { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "languages")]
|
||||
public List<string> Languages { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "dictionaryItems")]
|
||||
public List<string> DictionaryItems { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "templates")]
|
||||
public List<string> Templates { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "documentTypes")]
|
||||
public List<string> DocumentTypes { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "stylesheets")]
|
||||
public List<string> Stylesheets { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "files")]
|
||||
public List<string> Files { get; set; } = new List<string>();
|
||||
|
||||
//TODO: Change this to angular view
|
||||
[DataMember(Name = "loadControl")]
|
||||
public string LoadControl { get; set; } = string.Empty;
|
||||
|
||||
[DataMember(Name = "actions")]
|
||||
public string Actions { get; set; }
|
||||
|
||||
[DataMember(Name = "dataTypes")]
|
||||
public List<string> DataTypes { get; set; } = new List<string>();
|
||||
|
||||
[DataMember(Name = "iconUrl")]
|
||||
public string IconUrl { get; set; } = string.Empty;
|
||||
|
||||
}
|
||||
}
|
||||
23
src/Umbraco.Core/Models/Packaging/UninstallationSummary.cs
Normal file
23
src/Umbraco.Core/Models/Packaging/UninstallationSummary.cs
Normal file
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.Serialization;
|
||||
|
||||
namespace Umbraco.Core.Models.Packaging
|
||||
{
|
||||
[Serializable]
|
||||
[DataContract(IsReference = true)]
|
||||
public class UninstallationSummary
|
||||
{
|
||||
public MetaData MetaData { get; set; }
|
||||
public IEnumerable<IDataType> DataTypesUninstalled { get; set; }
|
||||
public IEnumerable<ILanguage> LanguagesUninstalled { get; set; }
|
||||
public IEnumerable<IDictionaryItem> DictionaryItemsUninstalled { get; set; }
|
||||
public IEnumerable<IMacro> MacrosUninstalled { get; set; }
|
||||
public IEnumerable<string> FilesUninstalled { get; set; }
|
||||
public IEnumerable<ITemplate> TemplatesUninstalled { get; set; }
|
||||
public IEnumerable<IContentType> ContentTypesUninstalled { get; set; }
|
||||
public IEnumerable<IFile> StylesheetsUninstalled { get; set; }
|
||||
public IEnumerable<IContent> ContentUninstalled { get; set; }
|
||||
public bool PackageUninstalled { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Umbraco.Core.Models.Packaging
|
||||
{
|
||||
internal static class UninstallationSummaryExtentions
|
||||
{
|
||||
public static UninstallationSummary InitEmpty(this UninstallationSummary summary)
|
||||
{
|
||||
summary.ContentUninstalled = new List<IContent>();
|
||||
summary.ContentTypesUninstalled = new List<IContentType>();
|
||||
summary.DataTypesUninstalled = new List<IDataType>();
|
||||
summary.DictionaryItemsUninstalled = new List<IDictionaryItem>();
|
||||
summary.FilesUninstalled = new List<string>();
|
||||
summary.LanguagesUninstalled = new List<ILanguage>();
|
||||
summary.MacrosUninstalled = new List<IMacro>();
|
||||
summary.MetaData = new MetaData();
|
||||
summary.TemplatesUninstalled = new List<ITemplate>();
|
||||
summary.PackageUninstalled = false;
|
||||
return summary;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user