-
Notifications
You must be signed in to change notification settings - Fork 256
/
StatusAtLeastStrategy.java
36 lines (27 loc) · 1.03 KB
/
StatusAtLeastStrategy.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package org.zalando.logbook.core;
import lombok.AllArgsConstructor;
import org.apiguardian.api.API;
import org.zalando.logbook.Correlation;
import org.zalando.logbook.HttpRequest;
import org.zalando.logbook.HttpResponse;
import org.zalando.logbook.Precorrelation;
import org.zalando.logbook.Sink;
import org.zalando.logbook.Strategy;
import java.io.IOException;
import static org.apiguardian.api.API.Status.EXPERIMENTAL;
@API(status = EXPERIMENTAL)
@AllArgsConstructor
public final class StatusAtLeastStrategy implements Strategy {
private final int status;
@Override
public void write(final Precorrelation precorrelation, final HttpRequest request, final Sink sink) {
// defer decision until response is available
}
@Override
public void write(final Correlation correlation, final HttpRequest request, final HttpResponse response,
final Sink sink) throws IOException {
if (response.getStatus() >= status) {
sink.writeBoth(correlation, request, response);
}
}
}