Skip to content

Commit f86efe8

Browse files
Improves ApiCenterOnboardingPlugin (#653)
Co-authored-by: Garry Trinder <[email protected]>
1 parent 43df5e1 commit f86efe8

File tree

1 file changed

+11
-13
lines changed

1 file changed

+11
-13
lines changed

dev-proxy-plugins/RequestLogs/ApiCenterOnboardingPlugin.cs

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -114,21 +114,19 @@ private async Task AfterRecordingStop(object sender, RecordingArgs e)
114114
var apiDefinitions = await LoadApiDefinitions(apis.Value);
115115

116116
var newApis = new List<Tuple<string, string>>();
117-
foreach (var request in e.RequestLogs)
117+
var interceptedRequests = e.RequestLogs
118+
.Where(l => l.MessageType == MessageType.InterceptedRequest)
119+
.Select(request => {
120+
var methodAndUrl = request.MessageLines.First().Split(' ');
121+
return new Tuple<string, string>(methodAndUrl[0], methodAndUrl[1]);
122+
})
123+
.Distinct();
124+
foreach (var request in interceptedRequests)
118125
{
119-
if (request.MessageType != MessageType.InterceptedResponse ||
120-
request.Context is null ||
121-
request.Context.Session is null)
122-
{
123-
continue;
124-
}
125-
126-
var methodAndUrlString = request.MessageLines.First();
127-
_logger?.LogDebug("Processing request {methodAndUrl}...", methodAndUrlString);
126+
_logger?.LogDebug("Processing request {method} {url}...", request.Item1, request.Item2);
128127

129-
var methodAndUrl = methodAndUrlString.Split(' ');
130-
var requestMethod = methodAndUrl[0];
131-
var requestUrl = methodAndUrl[1];
128+
var requestMethod = request.Item1;
129+
var requestUrl = request.Item2;
132130

133131
var apiDefinition = apiDefinitions.FirstOrDefault(x => requestUrl.Contains(x.Key)).Value;
134132
if (apiDefinition.Id is null)

0 commit comments

Comments
 (0)