private long extractRetryDelay(MessageSendingResult result) { long defaultBackoff = subscription.getSerialSubscriptionPolicy().getMessageBackoff(); long ttl = TimeUnit.SECONDS.toMillis(subscription.getSerialSubscriptionPolicy().getMessageTtl()); return result.getRetryAfterMillis().map(delay -> Math.min(delay, ttl)).orElse(defaultBackoff); }
private long extractRetryDelay(MessageSendingResult result) { long defaultBackoff = subscription.getSerialSubscriptionPolicy().getMessageBackoff(); long ttl = TimeUnit.SECONDS.toMillis(subscription.getSerialSubscriptionPolicy().getMessageTtl()); return result.getRetryAfterMillis().map(delay -> Math.min(delay, ttl)).orElse(defaultBackoff); }
@Test public void shouldDeserializeSubscriptionWithoutBackoff() throws Exception { // given String json = "{\"name\": \"test\", \"endpoint\": \"http://localhost:8888\", \"subscriptionPolicy\": {\"messageTtl\": 100}}"; // when Subscription subscription = mapper.readValue(json, Subscription.class); // then assertThat(subscription.getSerialSubscriptionPolicy().getMessageBackoff()).isEqualTo(100); }
public SubscriptionBuilder withRequestTimeout(int timeout) { SubscriptionPolicy policy = this.serialSubscriptionPolicy; this.serialSubscriptionPolicy = SubscriptionPolicy.Builder.subscriptionPolicy().withRate(policy.getRate()) .withMessageTtl(policy.getMessageTtl()).withMessageBackoff(policy.getMessageBackoff()) .withRequestTimeout(timeout).build(); return this; }
public SubscriptionBuilder withRequestTimeout(int timeout) { SubscriptionPolicy policy = this.serialSubscriptionPolicy; this.serialSubscriptionPolicy = SubscriptionPolicy.Builder.subscriptionPolicy().withRate(policy.getRate()) .withMessageTtl(policy.getMessageTtl()).withMessageBackoff(policy.getMessageBackoff()) .withRequestTimeout(timeout).build(); return this; }