2021-10-14 06:55:19 -07:00
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Runtime.CompilerServices;
|
|
|
|
|
using NSwag;
|
|
|
|
|
using Nustache.Core;
|
|
|
|
|
|
|
|
|
|
namespace KubernetesGenerator
|
|
|
|
|
{
|
2021-10-24 08:14:22 -07:00
|
|
|
internal class UtilHelper : INustacheHelper
|
2021-10-14 06:55:19 -07:00
|
|
|
{
|
|
|
|
|
public void RegisterHelper()
|
|
|
|
|
{
|
|
|
|
|
Helpers.Register(nameof(IfKindIs), IfKindIs);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static void IfKindIs(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
|
|
|
|
|
RenderBlock fn, RenderBlock inverse)
|
|
|
|
|
{
|
2021-10-20 06:53:59 -07:00
|
|
|
var parameter = arguments?.FirstOrDefault() as OpenApiParameter;
|
2021-10-14 06:55:19 -07:00
|
|
|
if (parameter != null)
|
|
|
|
|
{
|
|
|
|
|
string kind = null;
|
|
|
|
|
if (arguments.Count > 1)
|
|
|
|
|
{
|
|
|
|
|
kind = arguments[1] as string;
|
|
|
|
|
}
|
|
|
|
|
|
2021-10-20 06:53:59 -07:00
|
|
|
if (kind == "query" && parameter.Kind == OpenApiParameterKind.Query)
|
2021-10-14 06:55:19 -07:00
|
|
|
{
|
|
|
|
|
fn(null);
|
|
|
|
|
}
|
2021-10-20 06:53:59 -07:00
|
|
|
else if (kind == "path" && parameter.Kind == OpenApiParameterKind.Path)
|
2021-10-14 06:55:19 -07:00
|
|
|
{
|
|
|
|
|
fn(null);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|