diff --git a/src/JsonSchema/AppSettings.cs b/src/JsonSchema/AppSettings.cs new file mode 100644 index 0000000000..729d0a3b03 --- /dev/null +++ b/src/JsonSchema/AppSettings.cs @@ -0,0 +1,67 @@ +using Umbraco.Cms.Core.Configuration.Models; + +namespace JsonSchema +{ + public class AppSettings + { + public UmbracoDefinition Umbraco { get; set; } + + /// + /// Configuration of Umbraco CMS and packages + /// + public class UmbracoDefinition + { + public CmsDefinition CMS { get; set; } + public FormsDefinition Forms { get; set; } + public DeployDefinition Deploy { get; set; } + + /// + /// Configurations for the Umbraco CMS + /// + public class CmsDefinition + { + public ActiveDirectorySettings ActiveDirectory { get; set; } + public ContentSettings Content { get; set; } + public CoreDebugSettings CoreDebug { get; set; } + public ExceptionFilterSettings ExceptionFilter { get; set; } + public ModelsBuilderSettings ModelsBuilder { get; set; } + public GlobalSettings Global { get; set; } + public HealthChecksSettings HealthChecks { get; set; } + public HostingSettings Hosting { get; set; } + public ImagingSettings Imaging { get; set; } + public IndexCreatorSettings Examine { get; set; } + public KeepAliveSettings KeepAlive { get; set; } + public LoggingSettings Logging { get; set; } + public MemberPasswordConfigurationSettings MemberPassword { get; set; } + public NuCacheSettings NuCache { get; set; } + public RequestHandlerSettings RequestHandler { get; set; } + public RuntimeSettings Runtime { get; set; } + public SecuritySettings Security { get; set; } + public TourSettings Tours { get; set; } + public TypeFinderSettings TypeFinder { get; set; } + public UserPasswordConfigurationSettings UserPassword { get; set; } + public WebRoutingSettings WebRouting { get; set; } + public UmbracoPluginSettings Plugins { get; set; } + public UnattendedSettings Unattended { get; set; } + public RichTextEditorSettings RichTextEditor { get; set; } + public RuntimeMinificationSettings RuntimeMinification { get; set; } + } + + /// + /// Configurations for the Umbraco Forms package to Umbraco CMS + /// + public class FormsDefinition + { + + } + + /// + /// Configurations for the Umbraco Deploy package to Umbraco CMS + /// + public class DeployDefinition + { + + } + } + } +} diff --git a/src/JsonSchema/Program.cs b/src/JsonSchema/Program.cs index e8cc1548e5..610bf2257a 100644 --- a/src/JsonSchema/Program.cs +++ b/src/JsonSchema/Program.cs @@ -49,7 +49,7 @@ namespace JsonSchema var generator = new JsonSchemaGenerator(settings); - var schema = generator.Generate(typeof(UmbracoCmsConfigRoot)); + var schema = generator.Generate(typeof(AppSettings)); return schema.ToJson(Formatting.Indented); } diff --git a/src/JsonSchema/UmbracoCmsConfigRoot.cs b/src/JsonSchema/UmbracoCmsConfigRoot.cs deleted file mode 100644 index 3f4f2d4ab3..0000000000 --- a/src/JsonSchema/UmbracoCmsConfigRoot.cs +++ /dev/null @@ -1,53 +0,0 @@ -using Umbraco.Cms.Core.Configuration.Models; - -namespace JsonSchema -{ - /// - /// Configuration of Open Source .NET CMS - Umbraco - /// - public class UmbracoCmsConfigRoot - { - public Cms CMS { get; set; } - - - /// - /// Configurations for the Umbraco CMS - /// - public class Cms - { - public ActiveDirectorySettings ActiveDirectory { get; set; } - public ContentSettings Content { get; set; } - public CoreDebugSettings CoreDebug { get; set; } - public ExceptionFilterSettings ExceptionFilter { get; set; } - public ModelsBuilderSettings ModelsBuilder { get; set; } - public GlobalSettings Global { get; set; } - public HealthChecksSettings HealthChecks { get; set; } - public HostingSettings Hosting { get; set; } - public ImagingSettings Imaging { get; set; } - public IndexCreatorSettings Examine { get; set; } - public KeepAliveSettings KeepAlive { get; set; } - public LoggingSettings Logging { get; set; } - public MemberPasswordConfigurationSettings MemberPassword { get; set; } - public NuCacheSettings NuCache { get; set; } - public RequestHandlerSettings RequestHandler { get; set; } - public RuntimeSettings Runtime { get; set; } - public SecuritySettings Security { get; set; } - public TourSettings Tours { get; set; } - public TypeFinderSettings TypeFinder { get; set; } - public UserPasswordConfigurationSettings UserPassword { get; set; } - public WebRoutingSettings WebRouting { get; set; } - public UmbracoPluginSettings Plugins { get; set; } - public UnattendedSettings Unattended { get; set; } - public RichTextEditorSettings RichTextEditor { get; set; } - public RuntimeMinificationSettings RuntimeMinification { get; set; } - } - - /// - /// Configurations for the Umbraco Forms package to Umbraco CMS - /// - public class Forms - { - - } - } -}