Is your feature request related to a problem? Please describe.
In the current implementation, it's necessary to change a bunch of method signatures when we introduce new HTTP parameters and pass them to downstream methods.
Let's say you introduce the new parameter forceRefresh like #2402.
In this case, you need to change the signature of EnvironmentRepository and SearchPathLocator and modify a lot of classes that implement those interfaces.
Describe the solution you'd like
Introduce RequestContext and change the interface of EnvironmentRepository and SearchPathLocator like below.
public interface EnvironmentRepository {
Environment findOne(RequestContext ctx);
}
public interface SearchPathLocator {
Locations getLocations(RequestContext ctx);
}
When you introduce new HTTP parameters, you can just change RequestContext and don't need to change a bunch of method signatures like the current implementation.
Is your feature request related to a problem? Please describe. In the current implementation, it's necessary to change a bunch of method signatures when we introduce new HTTP parameters and pass them to downstream methods.
Let's say you introduce the new parameter
forceRefresh
like #2402. In this case, you need to change the signature ofEnvironmentRepository
andSearchPathLocator
and modify a lot of classes that implement those interfaces.Before introducing
forceRefresh
After introducing
forceRefresh
Describe the solution you'd like Introduce
RequestContext
and change the interface ofEnvironmentRepository
andSearchPathLocator
like below.When you introduce new HTTP parameters, you can just change
RequestContext
and don't need to change a bunch of method signatures like the current implementation.