@@ -44,6 +44,7 @@ public void Walk(OpenApiDocument doc)
4444 Walk ( OpenApiConstants . Servers , ( ) => Walk ( doc . Servers ) ) ;
4545 Walk ( OpenApiConstants . Paths , ( ) => Walk ( doc . Paths ) ) ;
4646 Walk ( OpenApiConstants . Components , ( ) => Walk ( doc . Components ) ) ;
47+ Walk ( OpenApiConstants . Security , ( ) => Walk ( doc . SecurityRequirements ) ) ;
4748 Walk ( OpenApiConstants . ExternalDocs , ( ) => Walk ( doc . ExternalDocs ) ) ;
4849 Walk ( OpenApiConstants . Tags , ( ) => Walk ( doc . Tags ) ) ;
4950 Walk ( doc as IOpenApiExtensible ) ;
@@ -425,6 +426,7 @@ internal void Walk(OpenApiPathItem pathItem)
425426
426427 if ( pathItem != null )
427428 {
429+ Walk ( OpenApiConstants . Parameters , ( ) => Walk ( pathItem . Parameters ) ) ;
428430 Walk ( pathItem . Operations ) ;
429431 }
430432 _visitor . Visit ( pathItem as IOpenApiExtensible ) ;
@@ -470,10 +472,32 @@ internal void Walk(OpenApiOperation operation)
470472 Walk ( OpenApiConstants . Responses , ( ) => Walk ( operation . Responses ) ) ;
471473 Walk ( OpenApiConstants . Callbacks , ( ) => Walk ( operation . Callbacks ) ) ;
472474 Walk ( OpenApiConstants . Tags , ( ) => Walk ( operation . Tags ) ) ;
473-
475+ Walk ( OpenApiConstants . Security , ( ) => Walk ( operation . Security ) ) ;
474476 Walk ( operation as IOpenApiExtensible ) ;
475477 }
476478
479+ /// <summary>
480+ /// Visits list of <see cref="OpenApiSecurityRequirement"/>
481+ /// </summary>
482+ internal void Walk ( IList < OpenApiSecurityRequirement > securityRequirements )
483+ {
484+ if ( securityRequirements == null )
485+ {
486+ return ;
487+ }
488+
489+ _visitor . Visit ( securityRequirements ) ;
490+
491+ if ( securityRequirements != null )
492+ {
493+ for ( int i = 0 ; i < securityRequirements . Count ; i ++ )
494+ {
495+ Walk ( i . ToString ( ) , ( ) => Walk ( securityRequirements [ i ] ) ) ;
496+ }
497+ }
498+ }
499+
500+
477501 /// <summary>
478502 /// Visits list of <see cref="OpenApiParameter"/>
479503 /// </summary>
@@ -508,6 +532,8 @@ internal void Walk(OpenApiParameter parameter)
508532 _visitor . Visit ( parameter ) ;
509533 Walk ( OpenApiConstants . Schema , ( ) => Walk ( parameter . Schema ) ) ;
510534 Walk ( OpenApiConstants . Content , ( ) => Walk ( parameter . Content ) ) ;
535+ Walk ( OpenApiConstants . Examples , ( ) => Walk ( parameter . Examples ) ) ;
536+
511537 Walk ( parameter as IOpenApiExtensible ) ;
512538 }
513539
0 commit comments