in openapi-diff/src/modeler/AutoRest.Swagger/Model/Operation.cs [427:451]
private SwaggerParameter FindParameterEx(
SwaggerParameter parameter,
IList<SwaggerParameter> operationParameters,
IDictionary<string, SwaggerParameter> clientParameters)
{
if (Parameters != null)
{
// first try to find the param has same 'name' and 'in'
foreach (SwaggerParameter param in operationParameters)
{
if (parameter.Name.Equals(param.Name) && parameter.In.Equals(param.In))
return param;
var pRef = FindReferencedParameter(param.Reference, clientParameters);
if (pRef != null && parameter.Name.Equals(pRef.Name) && parameter.In.Equals(pRef.In))
{
return pRef;
}
}
}
// then try to find the parameter has same 'name'
return FindParameter(parameter.Name, operationParameters, clientParameters);
}