using Newtonsoft.Json; using System; using System.Collections.Generic; namespace Amazon.JSII.JsonModel.Api.Response { [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public sealed class NamingResponse : IKernelResponse { public NamingResponse(NamingData naming) { Naming = naming ?? throw new ArgumentNullException(nameof(naming)); } [JsonProperty("naming")] public NamingData Naming { get; } [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public class NamingData { public NamingData(DotNetNaming dotnet) { DotNet = dotnet ?? throw new ArgumentNullException(nameof(dotnet)); } [JsonProperty("dotnet", NullValueHandling = NullValueHandling.Ignore)] public DotNetNaming DotNet { get; } [JsonObject(MemberSerialization = MemberSerialization.OptIn)] public class DotNetNaming { public DotNetNaming(string @namespace) { Namespace = @namespace; } public static implicit operator DotNetNaming(string @namespace) { return new DotNetNaming(@namespace); } public static implicit operator string(DotNetNaming naming) { return naming.Namespace; } [JsonProperty("namespace")] public string Namespace { get; } } } } }