tools/Elastic.CommonSchema.Generator/Views/LogTemplateProperties.Generated.cshtml (70 lines of code) (raw):
@* ReSharper disable once RedundantUsingDirective *@
@using System
@inherits Elastic.CommonSchema.Generator.Views.CodeTemplatePage<Elastic.CommonSchema.Generator.Projection.CommonSchemaTypesProjection>
// Licensed to Elasticsearch B.V under one or more agreements.
// Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
// See the LICENSE file in the project root for more information
/*
IMPORTANT NOTE
==============
This file has been generated.
If you wish to submit a PR please modify the original csharp file and submit the PR with that change. Thanks!
*/
// ReSharper disable RedundantUsingDirective
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using System.Linq;
using System.Net;
using System.Runtime.Serialization;
using System.Text.Json.Serialization;
using Elastic.CommonSchema.Serialization;
using static Elastic.CommonSchema.PropDispatch;
namespace Elastic.CommonSchema
{
///<summary>All properties that <see cref="EcsDocument.AssignField" /> supports </summary>
public static class LogTemplateProperties
{
@foreach (var prop in Model.Base.SettableProperties)
{
<text> ///<summary>
/// <para><c>@prop.FullPath</c></para>
/// <para>@Raw(prop.Description)</para>
/// <example>@Raw(prop.Example)</example>
///</summary>
public static string @prop.LogTemplateAlternative = nameof(@prop.LogTemplateAlternative);
</text>
}
@foreach (var entity in Model.EntityClasses)
{
@foreach (var prop in entity.SettableProperties)
{
<text> ///<summary>
/// <para><c>@prop.FullPath</c></para>
/// <para>@Raw(prop.Description)</para>
/// <example>@Raw(prop.Example)</example>
///</summary>
public static string @prop.LogTemplateAlternative = nameof(@prop.LogTemplateAlternative);
</text>
}
}
///<summary>All properties that <see cref="EcsDocument.AssignField" /> supports </summary>
public static readonly HashSet@(Raw("<string>")) All = new()
{
@foreach (var prop in Model.Base.SettableProperties)
{
<text> "@prop.FullPath", @prop.LogTemplateAlternative,
</text>
}
@foreach (var entity in Model.EntityClasses)
{
@foreach (var prop in entity.SettableProperties)
{
<text> "@prop.FullPath", @prop.LogTemplateAlternative,
</text>
}
}
};
}
}