@@ -20,7 +20,7 @@ public class OpenApiValidator : OpenApiVisitorBase, IValidationContext
2020 private readonly IList < OpenApiValidatorWarning > _warnings = new List < OpenApiValidatorWarning > ( ) ;
2121
2222 /// <summary>
23- /// Create a vistor that will validate an OpenAPIDocument
23+ /// Create a visitor that will validate an OpenAPIDocument
2424 /// </summary>
2525 /// <param name="ruleSet"></param>
2626 public OpenApiValidator ( ValidationRuleSet ruleSet )
@@ -198,6 +198,100 @@ public void AddWarning(OpenApiValidatorWarning warning)
198198 /// <param name="items">The object to be validated</param>
199199 public override void Visit ( IList < OpenApiExample > items ) => Validate ( items , items . GetType ( ) ) ;
200200
201+ /// <summary>
202+ /// Execute validation rules against a <see cref="OpenApiPathItem"/>
203+ /// </summary>
204+ /// <param name="item">The object to be validated</param>
205+ public override void Visit ( OpenApiPathItem item ) => Validate ( item ) ;
206+
207+ /// <summary>
208+ /// Execute validation rules against a <see cref="OpenApiServerVariable"/>
209+ /// </summary>
210+ /// <param name="item">The object to be validated</param>
211+ public override void Visit ( OpenApiServerVariable item ) => Validate ( item ) ;
212+
213+ /// <summary>
214+ /// Execute validation rules against a <see cref="OpenApiSecurityScheme"/>
215+ /// </summary>
216+ /// <param name="item">The object to be validated</param>
217+ public override void Visit ( OpenApiSecurityScheme item ) => Validate ( item ) ;
218+
219+ /// <summary>
220+ /// Execute validation rules against a <see cref="OpenApiSecurityRequirement"/>
221+ /// </summary>
222+ /// <param name="item">The object to be validated</param>
223+ public override void Visit ( OpenApiSecurityRequirement item ) => Validate ( item ) ;
224+
225+ /// <summary>
226+ /// Execute validation rules against a <see cref="OpenApiRequestBody"/>
227+ /// </summary>
228+ /// <param name="item">The object to be validated</param>
229+ public override void Visit ( OpenApiRequestBody item ) => Validate ( item ) ;
230+
231+ /// <summary>
232+ /// Execute validation rules against a <see cref="OpenApiPaths"/>
233+ /// </summary>
234+ /// <param name="item">The object to be validated</param>
235+ public override void Visit ( OpenApiPaths item ) => Validate ( item ) ;
236+
237+ /// <summary>
238+ /// Execute validation rules against a <see cref="OpenApiLink"/>
239+ /// </summary>
240+ /// <param name="item">The object to be validated</param>
241+ public override void Visit ( OpenApiLink item ) => Validate ( item ) ;
242+
243+ /// <summary>
244+ /// Execute validation rules against a <see cref="OpenApiExample"/>
245+ /// </summary>
246+ /// <param name="item">The object to be validated</param>
247+ public override void Visit ( OpenApiExample item ) => Validate ( item ) ;
248+
249+ /// <summary>
250+ /// Execute validation rules against a <see cref="OpenApiOperation"/>
251+ /// </summary>
252+ /// <param name="item">The object to be validated</param>
253+ public override void Visit ( OpenApiOperation item ) => Validate ( item ) ;
254+ /// <summary>
255+ /// Execute validation rules against a <see cref="IDictionary{OperationType, OpenApiOperation}"/>
256+ /// </summary>
257+ /// <param name="item">The object to be validated</param>
258+ public override void Visit ( IDictionary < OperationType , OpenApiOperation > item ) => Validate ( item , item . GetType ( ) ) ;
259+ /// <summary>
260+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiHeader}"/>
261+ /// </summary>
262+ /// <param name="item">The object to be validated</param>
263+ public override void Visit ( IDictionary < string , OpenApiHeader > item ) => Validate ( item , item . GetType ( ) ) ;
264+ /// <summary>
265+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiCallback}"/>
266+ /// </summary>
267+ /// <param name="item">The object to be validated</param>
268+ public override void Visit ( IDictionary < string , OpenApiCallback > item ) => Validate ( item , item . GetType ( ) ) ;
269+ /// <summary>
270+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiMediaType}"/>
271+ /// </summary>
272+ /// <param name="item">The object to be validated</param>
273+ public override void Visit ( IDictionary < string , OpenApiMediaType > item ) => Validate ( item , item . GetType ( ) ) ;
274+ /// <summary>
275+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiExample}"/>
276+ /// </summary>
277+ /// <param name="item">The object to be validated</param>
278+ public override void Visit ( IDictionary < string , OpenApiExample > item ) => Validate ( item , item . GetType ( ) ) ;
279+ /// <summary>
280+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiLink}"/>
281+ /// </summary>
282+ /// <param name="item">The object to be validated</param>
283+ public override void Visit ( IDictionary < string , OpenApiLink > item ) => Validate ( item , item . GetType ( ) ) ;
284+ /// <summary>
285+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiServerVariable}"/>
286+ /// </summary>
287+ /// <param name="item">The object to be validated</param>
288+ public override void Visit ( IDictionary < string , OpenApiServerVariable > item ) => Validate ( item , item . GetType ( ) ) ;
289+ /// <summary>
290+ /// Execute validation rules against a <see cref="IDictionary{String, OpenApiEncoding}"/>
291+ /// </summary>
292+ /// <param name="item">The object to be validated</param>
293+ public override void Visit ( IDictionary < string , OpenApiEncoding > item ) => Validate ( item , item . GetType ( ) ) ;
294+
201295 private void Validate < T > ( T item )
202296 {
203297 var type = typeof ( T ) ;
0 commit comments