From ebab967e439165d614948d3ce7a132a50cf4713c Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Sun, 13 Sep 2015 16:02:19 +0100 Subject: [PATCH] Make ContentModifier part of the public API Previously, ContentModifier and ContentModifyingOperationPreprocessor were package-private. This meant that anyone wishing to perform content modification during preprocessing had to reimplement much of the existing content modifying preprocessor, that than just having to implement ContentModifier. This commits make both ContentModifier and ContentModifyingOperationPreprocessor public so that all custom content modification is now a matter of implementing a custom ContentModifier and creating an instance of ContentModifyingOperationPreprocessor. Closes gh-121 --- .../restdocs/operation/preprocess/ContentModifier.java | 2 +- .../ContentModifyingOperationPreprocessor.java | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifier.java b/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifier.java index 52e1075d..54fb8279 100644 --- a/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifier.java +++ b/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifier.java @@ -27,7 +27,7 @@ import org.springframework.restdocs.operation.OperationResponse; * @author Andy Wilkinson * @see ContentModifyingOperationPreprocessor */ -interface ContentModifier { +public interface ContentModifier { /** * Returns modified content based on the given {@code originalContent} diff --git a/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifyingOperationPreprocessor.java b/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifyingOperationPreprocessor.java index 1ff1e819..0531c46d 100644 --- a/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifyingOperationPreprocessor.java +++ b/spring-restdocs-core/src/main/java/org/springframework/restdocs/operation/preprocess/ContentModifyingOperationPreprocessor.java @@ -28,11 +28,17 @@ import org.springframework.restdocs.operation.StandardOperationResponse; * * @author Andy Wilkinson */ -class ContentModifyingOperationPreprocessor implements OperationPreprocessor { +public class ContentModifyingOperationPreprocessor implements OperationPreprocessor { private final ContentModifier contentModifier; - ContentModifyingOperationPreprocessor(ContentModifier contentModifier) { + /** + * Create a new {@code ContentModifyingOperationPreprocessor} that will apply the + * given {@code contentModifier} to the operation's request or response. + * + * @param contentModifier the contentModifier + */ + public ContentModifyingOperationPreprocessor(ContentModifier contentModifier) { this.contentModifier = contentModifier; }