Skip to content

Commit 12ee205

Browse files
committed
refactor to use backing fields
1 parent 70c7d43 commit 12ee205

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

src/Microsoft.OpenApi/Models/References/OpenApiSchemaReference.cs

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ public class OpenApiSchemaReference : OpenApiSchema
1717
internal OpenApiSchema _target;
1818
private readonly OpenApiReference _reference;
1919
private string _description;
20+
private JsonNode _default;
21+
private JsonNode _example;
22+
private IList<JsonNode> _examples;
2023

2124
private OpenApiSchema Target
2225
{
@@ -116,7 +119,11 @@ public override string Description
116119
/// <inheritdoc/>
117120
public override decimal? MultipleOf { get => Target.MultipleOf; set => Target.MultipleOf = value; }
118121
/// <inheritdoc/>
119-
public override JsonNode Default { get => Target.Default; set => Target.Default = value; }
122+
public override JsonNode Default
123+
{
124+
get => _default ??= Target.Default;
125+
set => _default = value;
126+
}
120127
/// <inheritdoc/>
121128
public override bool ReadOnly { get => Target.ReadOnly; set => Target.ReadOnly = value; }
122129
/// <inheritdoc/>
@@ -154,9 +161,17 @@ public override string Description
154161
/// <inheritdoc/>
155162
public override OpenApiDiscriminator Discriminator { get => Target.Discriminator; set => Target.Discriminator = value; }
156163
/// <inheritdoc/>
157-
public override JsonNode Example { get => Target.Example; set => Target.Example = value; }
164+
public override JsonNode Example
165+
{
166+
get => _example ??= Target.Example;
167+
set => _example = value;
168+
}
158169
/// <inheritdoc/>
159-
public override IList<JsonNode> Examples { get => Target.Examples; set => Target.Examples = value; }
170+
public override IList<JsonNode> Examples
171+
{
172+
get => _examples ??= Target.Examples;
173+
set => Target.Examples = value;
174+
}
160175
/// <inheritdoc/>
161176
public override IList<JsonNode> Enum { get => Target.Enum; set => Target.Enum = value; }
162177
/// <inheritdoc/>

0 commit comments

Comments
 (0)