
org.zalando.logbook.BodyReplacers Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of logbook-core Show documentation
Show all versions of logbook-core Show documentation
HTTP request and response logging
package org.zalando.logbook;
import java.util.function.Predicate;
import static org.zalando.logbook.Conditions.contentType;
public final class BodyReplacers {
BodyReplacers() {
// package private so we can trick code coverage
}
public static BodyReplacer defaultValue() {
return BodyReplacer.compound(binary(), multipart(), stream());
}
public static BodyReplacer binary() {
final Predicate contentTypes = contentType(
"application/octet-stream", "application/pdf", "audio/*", "image/*", "video/*");
return replaceBody(contentTypes, "");
}
public static BodyReplacer multipart() {
return replaceBody(contentType("multipart/*"), "");
}
public static BodyReplacer stream() {
final Predicate contentTypes = contentType("application/json-seq", "application/x-json-stream");
return replaceBody(contentTypes, "");
}
public static BodyReplacer replaceBody(final Predicate predicate,
final String replacement) {
return message -> predicate.test(message) ? replacement : null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy