Class RequestConcurrencyControllers
- java.lang.Object
-
- io.servicetalk.client.api.internal.RequestConcurrencyControllers
-
public final class RequestConcurrencyControllers extends java.lang.ObjectFactory for commonRequestConcurrencyControllers.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static RequestConcurrencyControllernewController(Publisher<? extends ConsumableEvent<java.lang.Integer>> maxConcurrency, Completable onClosing, int initialMaxConcurrency)Create a new instance ofRequestConcurrencyController.static RequestConcurrencyControllernewSingleController(Publisher<? extends ConsumableEvent<java.lang.Integer>> maxConcurrency, Completable onClosing)Create aRequestConcurrencyControllerthat only allows a single outstanding request.
-
-
-
Method Detail
-
newController
public static RequestConcurrencyController newController(Publisher<? extends ConsumableEvent<java.lang.Integer>> maxConcurrency, Completable onClosing, int initialMaxConcurrency)
Create a new instance ofRequestConcurrencyController.- Parameters:
maxConcurrency- APublisherthat provides the maximum allowed concurrency updates.onClosing- ACompletablethat when terminated no more calls toRequestConcurrencyController.tryRequest()are expected to succeed.initialMaxConcurrency- The initial maximum value for concurrency, untilmaxConcurrencySettingprovides data.- Returns:
- a new instance of
RequestConcurrencyController.
-
newSingleController
public static RequestConcurrencyController newSingleController(Publisher<? extends ConsumableEvent<java.lang.Integer>> maxConcurrency, Completable onClosing)
Create aRequestConcurrencyControllerthat only allows a single outstanding request. Even ifmaxConcurrencySettingincreases beyond1only a singleRequestConcurrencyController.tryRequest()will succeed at any given time. The initial value is assumed to be1and only lesser values frommaxConcurrencySettingwill impact behavior.- Parameters:
maxConcurrency- APublisherthat provides the maximum allowed concurrency updates. Only values of<1will impact behavior.onClosing- ACompletablethat when terminated no more calls toRequestConcurrencyController.tryRequest()are expected to succeed.- Returns:
- a
RequestConcurrencyControllerthat only allows a single outstanding request.
-
-