envoyproxy / envoyproxy/envoy

Clarify StreamInfo::route API

Open
#10,972 1 comment 0 reactions 0 assignees View on GitHub
area/http help wanted tech debt
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

Currently `StreamInfo::route` overloads two concepts: looking up the route and re-resolving the route. We should consider splitting this into

```
RouteConstSharedPtr route() const;
RouteConstSharedPtr resolveRoute();
```

to distinguish between a lookup and an intentional re-resolution of the route. `route()` would still have to resolve the route in case it hasn't been resolved, but at the very least this simplifies

```
callbacks_.clearRouteCache();
auto route = callbacks_.route();
// Act on route.
```

into
```
auto route = callbacks_.resolveRoute();
// Act on route.
```

and the semantics of the two functions are more obvious at a glance.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.