Skip to content

Commit 8ff6622

Browse files
committed
csharp samples
1 parent 19ea2ee commit 8ff6622

3 files changed

Lines changed: 499 additions & 0 deletions

File tree

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
// <auto-generated>
2+
/*
3+
* OpenAPI Petstore
4+
*
5+
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
6+
*
7+
* The version of the OpenAPI document: 1.0.0
8+
* Generated by: https://github.com/openapitools/openapi-generator.git
9+
*/
10+
11+
using System;
12+
using System.Collections;
13+
using System.Collections.Generic;
14+
using System.Collections.ObjectModel;
15+
using System.Linq;
16+
using System.IO;
17+
using System.Text;
18+
using System.Text.RegularExpressions;
19+
using System.Text.Json;
20+
using System.Text.Json.Serialization;
21+
using System.ComponentModel.DataAnnotations;
22+
using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils;
23+
using Org.OpenAPITools.Client;
24+
25+
namespace Org.OpenAPITools.Model
26+
{
27+
/// <summary>
28+
/// QuadrilateralInterface
29+
/// </summary>
30+
public partial class QuadrilateralInterface : IValidatableObject
31+
{
32+
/// <summary>
33+
/// Initializes a new instance of the <see cref="QuadrilateralInterface" /> class.
34+
/// </summary>
35+
/// <param name="quadrilateralType">quadrilateralType</param>
36+
[JsonConstructor]
37+
public QuadrilateralInterface(string quadrilateralType)
38+
{
39+
QuadrilateralType = quadrilateralType;
40+
OnCreated();
41+
}
42+
43+
partial void OnCreated();
44+
45+
/// <summary>
46+
/// Gets or Sets QuadrilateralType
47+
/// </summary>
48+
[JsonPropertyName("quadrilateralType")]
49+
public string QuadrilateralType { get; set; }
50+
51+
/// <summary>
52+
/// Gets or Sets additional properties
53+
/// </summary>
54+
[JsonExtensionData]
55+
public Dictionary<string, JsonElement> AdditionalProperties { get; } = new Dictionary<string, JsonElement>();
56+
57+
/// <summary>
58+
/// Returns the string presentation of the object
59+
/// </summary>
60+
/// <returns>String presentation of the object</returns>
61+
public override string ToString()
62+
{
63+
StringBuilder sb = new StringBuilder();
64+
sb.Append("class QuadrilateralInterface {\n");
65+
sb.Append(" QuadrilateralType: ").Append(QuadrilateralType).Append("\n");
66+
sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n");
67+
sb.Append("}\n");
68+
return sb.ToString();
69+
}
70+
71+
/// <summary>
72+
/// To validate all properties of the instance
73+
/// </summary>
74+
/// <param name="validationContext">Validation context</param>
75+
/// <returns>Validation Result</returns>
76+
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
77+
{
78+
yield break;
79+
}
80+
}
81+
82+
/// <summary>
83+
/// A Json converter for type <see cref="QuadrilateralInterface" />
84+
/// </summary>
85+
public class QuadrilateralInterfaceJsonConverter : JsonConverter<QuadrilateralInterface>
86+
{
87+
/// <summary>
88+
/// Deserializes json to <see cref="QuadrilateralInterface" />
89+
/// </summary>
90+
/// <param name="utf8JsonReader"></param>
91+
/// <param name="typeToConvert"></param>
92+
/// <param name="jsonSerializerOptions"></param>
93+
/// <returns></returns>
94+
/// <exception cref="JsonException"></exception>
95+
public override QuadrilateralInterface Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions)
96+
{
97+
int currentDepth = utf8JsonReader.CurrentDepth;
98+
99+
if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray)
100+
throw new JsonException();
101+
102+
JsonTokenType startingTokenType = utf8JsonReader.TokenType;
103+
104+
Option<string> quadrilateralType = default;
105+
106+
while (utf8JsonReader.Read())
107+
{
108+
if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth)
109+
break;
110+
111+
if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth)
112+
break;
113+
114+
if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1)
115+
{
116+
string localVarJsonPropertyName = utf8JsonReader.GetString();
117+
utf8JsonReader.Read();
118+
119+
switch (localVarJsonPropertyName)
120+
{
121+
case "quadrilateralType":
122+
quadrilateralType = new Option<string>(utf8JsonReader.GetString());
123+
break;
124+
default:
125+
break;
126+
}
127+
}
128+
}
129+
130+
if (!quadrilateralType.IsSet)
131+
throw new ArgumentException("Property is required for class QuadrilateralInterface.", nameof(quadrilateralType));
132+
133+
if (quadrilateralType.IsSet && quadrilateralType.Value == null)
134+
throw new ArgumentNullException(nameof(quadrilateralType), "Property is not nullable for class QuadrilateralInterface.");
135+
136+
return new QuadrilateralInterface(quadrilateralType.Value);
137+
}
138+
139+
/// <summary>
140+
/// Serializes a <see cref="QuadrilateralInterface" />
141+
/// </summary>
142+
/// <param name="writer"></param>
143+
/// <param name="quadrilateralInterface"></param>
144+
/// <param name="jsonSerializerOptions"></param>
145+
/// <exception cref="NotImplementedException"></exception>
146+
public override void Write(Utf8JsonWriter writer, QuadrilateralInterface quadrilateralInterface, JsonSerializerOptions jsonSerializerOptions)
147+
{
148+
writer.WriteStartObject();
149+
150+
WriteProperties(writer, quadrilateralInterface, jsonSerializerOptions);
151+
writer.WriteEndObject();
152+
}
153+
154+
/// <summary>
155+
/// Serializes the properties of <see cref="QuadrilateralInterface" />
156+
/// </summary>
157+
/// <param name="writer"></param>
158+
/// <param name="quadrilateralInterface"></param>
159+
/// <param name="jsonSerializerOptions"></param>
160+
/// <exception cref="NotImplementedException"></exception>
161+
public void WriteProperties(Utf8JsonWriter writer, QuadrilateralInterface quadrilateralInterface, JsonSerializerOptions jsonSerializerOptions)
162+
{
163+
if (quadrilateralInterface.QuadrilateralType == null)
164+
throw new ArgumentNullException(nameof(quadrilateralInterface.QuadrilateralType), "Property is required for class QuadrilateralInterface.");
165+
166+
writer.WriteString("quadrilateralType", quadrilateralInterface.QuadrilateralType);
167+
}
168+
}
169+
}
Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
// <auto-generated>
2+
/*
3+
* OpenAPI Petstore
4+
*
5+
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
6+
*
7+
* The version of the OpenAPI document: 1.0.0
8+
* Generated by: https://github.com/openapitools/openapi-generator.git
9+
*/
10+
11+
#nullable enable
12+
13+
using System;
14+
using System.Collections;
15+
using System.Collections.Generic;
16+
using System.Collections.ObjectModel;
17+
using System.Linq;
18+
using System.IO;
19+
using System.Text;
20+
using System.Text.RegularExpressions;
21+
using System.Text.Json;
22+
using System.Text.Json.Serialization;
23+
using System.ComponentModel.DataAnnotations;
24+
using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils;
25+
using System.Text.Json.Serialization.Metadata;
26+
using Org.OpenAPITools.Client;
27+
28+
namespace Org.OpenAPITools.Model
29+
{
30+
/// <summary>
31+
/// Defines OuterEnumInteger
32+
/// </summary>
33+
public enum OuterEnumInteger
34+
{
35+
/// <summary>
36+
/// Enum NUMBER_0 for value: 0
37+
/// </summary>
38+
NUMBER_0 = 0,
39+
40+
/// <summary>
41+
/// Enum NUMBER_1 for value: 1
42+
/// </summary>
43+
NUMBER_1 = 1,
44+
45+
/// <summary>
46+
/// Enum NUMBER_2 for value: 2
47+
/// </summary>
48+
NUMBER_2 = 2
49+
}
50+
51+
/// <summary>
52+
/// Converts <see cref="OuterEnumInteger"/> to and from the JSON value
53+
/// </summary>
54+
public static class OuterEnumIntegerValueConverter
55+
{
56+
/// <summary>
57+
/// Parses a given value to <see cref="OuterEnumInteger"/>
58+
/// </summary>
59+
/// <param name="value"></param>
60+
/// <returns></returns>
61+
public static OuterEnumInteger FromString(string value)
62+
{
63+
if (value.Equals((0).ToString()))
64+
return OuterEnumInteger.NUMBER_0;
65+
66+
if (value.Equals((1).ToString()))
67+
return OuterEnumInteger.NUMBER_1;
68+
69+
if (value.Equals((2).ToString()))
70+
return OuterEnumInteger.NUMBER_2;
71+
72+
throw new NotImplementedException($"Could not convert value to type OuterEnumInteger: '{value}'");
73+
}
74+
75+
/// <summary>
76+
/// Parses a given value to <see cref="OuterEnumInteger"/>
77+
/// </summary>
78+
/// <param name="value"></param>
79+
/// <returns></returns>
80+
public static OuterEnumInteger? FromStringOrDefault(string value)
81+
{
82+
if (value.Equals((0).ToString()))
83+
return OuterEnumInteger.NUMBER_0;
84+
85+
if (value.Equals((1).ToString()))
86+
return OuterEnumInteger.NUMBER_1;
87+
88+
if (value.Equals((2).ToString()))
89+
return OuterEnumInteger.NUMBER_2;
90+
91+
return null;
92+
}
93+
94+
/// <summary>
95+
/// Converts the <see cref="OuterEnumInteger"/> to the json value
96+
/// </summary>
97+
/// <param name="value"></param>
98+
/// <returns></returns>
99+
/// <exception cref="NotImplementedException"></exception>
100+
public static int ToJsonValue(OuterEnumInteger value)
101+
{
102+
return (int) value;
103+
}
104+
}
105+
106+
/// <summary>
107+
/// A Json converter for type <see cref="OuterEnumInteger"/>
108+
/// </summary>
109+
/// <exception cref="NotImplementedException"></exception>
110+
public class OuterEnumIntegerJsonConverter : JsonConverter<OuterEnumInteger>
111+
{
112+
/// <summary>
113+
/// Returns a from the Json object
114+
/// </summary>
115+
/// <param name="reader"></param>
116+
/// <param name="typeToConvert"></param>
117+
/// <param name="options"></param>
118+
/// <returns></returns>
119+
public override OuterEnumInteger Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
120+
{
121+
string? rawValue = reader.GetString();
122+
123+
OuterEnumInteger? result = rawValue == null
124+
? null
125+
: OuterEnumIntegerValueConverter.FromStringOrDefault(rawValue);
126+
127+
if (result != null)
128+
return result.Value;
129+
130+
throw new JsonException();
131+
}
132+
133+
/// <summary>
134+
/// Writes the OuterEnumInteger to the json writer
135+
/// </summary>
136+
/// <param name="writer"></param>
137+
/// <param name="outerEnumInteger"></param>
138+
/// <param name="options"></param>
139+
public override void Write(Utf8JsonWriter writer, OuterEnumInteger outerEnumInteger, JsonSerializerOptions options)
140+
{
141+
writer.WriteStringValue(OuterEnumIntegerValueConverter.ToJsonValue(outerEnumInteger).ToString());
142+
}
143+
}
144+
145+
/// <summary>
146+
/// A Json converter for type <see cref="OuterEnumInteger"/>
147+
/// </summary>
148+
public class OuterEnumIntegerNullableJsonConverter : JsonConverter<OuterEnumInteger?>
149+
{
150+
/// <summary>
151+
/// Returns a OuterEnumInteger from the Json object
152+
/// </summary>
153+
/// <param name="reader"></param>
154+
/// <param name="typeToConvert"></param>
155+
/// <param name="options"></param>
156+
/// <returns></returns>
157+
public override OuterEnumInteger? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
158+
{
159+
string? rawValue = reader.GetString();
160+
161+
OuterEnumInteger? result = rawValue == null
162+
? null
163+
: OuterEnumIntegerValueConverter.FromStringOrDefault(rawValue);
164+
165+
if (result != null)
166+
return result.Value;
167+
168+
throw new JsonException();
169+
}
170+
171+
/// <summary>
172+
/// Writes the OuterEnumInteger to the json writer
173+
/// </summary>
174+
/// <param name="writer"></param>
175+
/// <param name="outerEnumInteger"></param>
176+
/// <param name="options"></param>
177+
public override void Write(Utf8JsonWriter writer, OuterEnumInteger? outerEnumInteger, JsonSerializerOptions options)
178+
{
179+
writer.WriteStringValue(outerEnumInteger.HasValue ? OuterEnumIntegerValueConverter.ToJsonValue(outerEnumInteger.Value).ToString() : "null");
180+
}
181+
}
182+
183+
184+
/// <summary>
185+
/// The OuterEnumIntegerSerializationContext
186+
/// </summary>
187+
[JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)]
188+
[JsonSerializable(typeof(OuterEnumInteger))]
189+
public partial class OuterEnumIntegerSerializationContext : JsonSerializerContext { }
190+
}

0 commit comments

Comments
 (0)