diff --git a/spring-restdocs-core/src/main/java/org/springframework/restdocs/config/SnippetConfigurer.java b/spring-restdocs-core/src/main/java/org/springframework/restdocs/config/SnippetConfigurer.java
index b82ee82c..0827c519 100644
--- a/spring-restdocs-core/src/main/java/org/springframework/restdocs/config/SnippetConfigurer.java
+++ b/spring-restdocs-core/src/main/java/org/springframework/restdocs/config/SnippetConfigurer.java
@@ -22,6 +22,7 @@ import java.util.Map;
import org.springframework.restdocs.RestDocumentationContext;
import org.springframework.restdocs.curl.CurlDocumentation;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.http.HttpDocumentation;
import org.springframework.restdocs.snippet.Snippet;
import org.springframework.restdocs.templates.TemplateFormat;
@@ -36,11 +37,6 @@ import org.springframework.restdocs.templates.TemplateFormats;
*/
public abstract class SnippetConfigurer
extends AbstractNestedConfigurer
{
- /**
- * The name of the attribute that is used to hold the default snippets.
- */
- public static final String ATTRIBUTE_DEFAULT_SNIPPETS = "org.springframework.restdocs.defaultSnippets";
-
private List defaultSnippets = Arrays.asList(
CurlDocumentation.curlRequest(), HttpDocumentation.httpRequest(),
HttpDocumentation.httpResponse());
@@ -77,7 +73,8 @@ public abstract class SnippetConfigurer extends AbstractNestedConfigurer
configuration, RestDocumentationContext context) {
configuration.put(SnippetConfiguration.class.getName(), new SnippetConfiguration(
this.snippetEncoding, this.templateFormat));
- configuration.put(ATTRIBUTE_DEFAULT_SNIPPETS, this.defaultSnippets);
+ configuration.put(RestDocumentationGenerator.ATTRIBUTE_NAME_DEFAULT_SNIPPETS,
+ this.defaultSnippets);
}
/**
diff --git a/spring-restdocs-core/src/main/java/org/springframework/restdocs/generate/RestDocumentationGenerator.java b/spring-restdocs-core/src/main/java/org/springframework/restdocs/generate/RestDocumentationGenerator.java
index b60f5d9f..2a46d7e1 100644
--- a/spring-restdocs-core/src/main/java/org/springframework/restdocs/generate/RestDocumentationGenerator.java
+++ b/spring-restdocs-core/src/main/java/org/springframework/restdocs/generate/RestDocumentationGenerator.java
@@ -23,7 +23,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.springframework.restdocs.config.SnippetConfigurer;
import org.springframework.restdocs.operation.Operation;
import org.springframework.restdocs.operation.OperationRequest;
import org.springframework.restdocs.operation.OperationResponse;
@@ -45,6 +44,16 @@ import org.springframework.util.Assert;
*/
public final class RestDocumentationGenerator {
+ /**
+ * Name of the operation attribute used to hold the request's URL template.
+ */
+ public static final String ATTRIBUTE_NAME_URL_TEMPLATE = "org.springframework.restdocs.urlTemplate";
+
+ /**
+ * Name of the operation attribute used to hold the {@link List} of default snippets.
+ */
+ public static final String ATTRIBUTE_NAME_DEFAULT_SNIPPETS = "org.springframework.restdocs.defaultSnippets";
+
private final String identifier;
private final OperationRequestPreprocessor requestPreprocessor;
@@ -58,8 +67,8 @@ public final class RestDocumentationGenerator {
private final ResponseConverter responseConverter;
/**
- * Creates a new {@code RestDocumentationGenerator} for the operation identified by the
- * given {@code identifier}. The given {@code requestConverter} and
+ * Creates a new {@code RestDocumentationGenerator} for the operation identified by
+ * the given {@code identifier}. The given {@code requestConverter} and
* {@code responseConverter} are used to convert the operation's request and response
* into generic {@code OperationRequest} and {@code OperationResponse} instances that
* can then be documented. The given documentation {@code snippets} will be produced.
@@ -78,8 +87,8 @@ public final class RestDocumentationGenerator {
}
/**
- * Creates a new {@code RestDocumentationGenerator} for the operation identified by the
- * given {@code identifier}. The given {@code requestConverter} and
+ * Creates a new {@code RestDocumentationGenerator} for the operation identified by
+ * the given {@code identifier}. The given {@code requestConverter} and
* {@code responseConverter} are used to convert the operation's request and response
* into generic {@code OperationRequest} and {@code OperationResponse} instances that
* can then be documented. The given {@code requestPreprocessor} is applied to the
@@ -101,8 +110,8 @@ public final class RestDocumentationGenerator {
}
/**
- * Creates a new {@code RestDocumentationGenerator} for the operation identified by the
- * given {@code identifier}. The given {@code requestConverter} and
+ * Creates a new {@code RestDocumentationGenerator} for the operation identified by
+ * the given {@code identifier}. The given {@code requestConverter} and
* {@code responseConverter} are used to convert the operation's request and response
* into generic {@code OperationRequest} and {@code OperationResponse} instances that
* can then be documented. The given {@code responsePreprocessor} is applied to the
@@ -125,8 +134,8 @@ public final class RestDocumentationGenerator {
}
/**
- * Creates a new {@code RestDocumentationGenerator} for the operation identified by the
- * given {@code identifier}. The given {@code requestConverter} and
+ * Creates a new {@code RestDocumentationGenerator} for the operation identified by
+ * the given {@code identifier}. The given {@code requestConverter} and
* {@code responseConverter} are used to convert the operation's request and response
* into generic {@code OperationRequest} and {@code OperationResponse} instances that
* can then be documented. The given {@code requestPreprocessor} and
@@ -202,7 +211,7 @@ public final class RestDocumentationGenerator {
private List getSnippets(Map configuration) {
List combinedSnippets = new ArrayList<>(this.snippets);
List defaultSnippets = (List) configuration
- .get(SnippetConfigurer.ATTRIBUTE_DEFAULT_SNIPPETS);
+ .get(ATTRIBUTE_NAME_DEFAULT_SNIPPETS);
if (defaultSnippets != null) {
combinedSnippets.addAll(defaultSnippets);
}
diff --git a/spring-restdocs-core/src/main/java/org/springframework/restdocs/request/PathParametersSnippet.java b/spring-restdocs-core/src/main/java/org/springframework/restdocs/request/PathParametersSnippet.java
index 0670be1d..b09b59fa 100644
--- a/spring-restdocs-core/src/main/java/org/springframework/restdocs/request/PathParametersSnippet.java
+++ b/spring-restdocs-core/src/main/java/org/springframework/restdocs/request/PathParametersSnippet.java
@@ -23,6 +23,7 @@ import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.operation.Operation;
import org.springframework.restdocs.snippet.Snippet;
import org.springframework.restdocs.snippet.SnippetException;
@@ -91,7 +92,7 @@ public class PathParametersSnippet extends AbstractParametersSnippet {
private String extractUrlTemplate(Operation operation) {
String urlTemplate = (String) operation.getAttributes().get(
- "org.springframework.restdocs.urlTemplate");
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE);
Assert.notNull(
urlTemplate,
"urlTemplate not found. If you are using MockMvc, did you use RestDocumentationRequestBuilders to "
diff --git a/spring-restdocs-core/src/test/java/org/springframework/restdocs/RestDocumentationGeneratorTests.java b/spring-restdocs-core/src/test/java/org/springframework/restdocs/RestDocumentationGeneratorTests.java
index d03aa6da..a202eb35 100644
--- a/spring-restdocs-core/src/test/java/org/springframework/restdocs/RestDocumentationGeneratorTests.java
+++ b/spring-restdocs-core/src/test/java/org/springframework/restdocs/RestDocumentationGeneratorTests.java
@@ -25,7 +25,6 @@ import java.util.Map;
import org.junit.Test;
import org.mockito.ArgumentCaptor;
import org.springframework.http.HttpHeaders;
-import org.springframework.restdocs.config.SnippetConfigurer;
import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.operation.Operation;
import org.springframework.restdocs.operation.OperationRequest;
@@ -91,7 +90,7 @@ public class RestDocumentationGeneratorTests {
HashMap configuration = new HashMap<>();
Snippet defaultSnippet1 = mock(Snippet.class);
Snippet defaultSnippet2 = mock(Snippet.class);
- configuration.put(SnippetConfigurer.ATTRIBUTE_DEFAULT_SNIPPETS,
+ configuration.put(RestDocumentationGenerator.ATTRIBUTE_NAME_DEFAULT_SNIPPETS,
Arrays.asList(defaultSnippet1, defaultSnippet2));
new RestDocumentationGenerator<>("id", this.requestConverter,
this.responseConverter, this.snippet).handle(this.request, this.response,
diff --git a/spring-restdocs-core/src/test/java/org/springframework/restdocs/config/RestDocumentationConfigurerTests.java b/spring-restdocs-core/src/test/java/org/springframework/restdocs/config/RestDocumentationConfigurerTests.java
index 9819d8c5..a18eebc7 100644
--- a/spring-restdocs-core/src/test/java/org/springframework/restdocs/config/RestDocumentationConfigurerTests.java
+++ b/spring-restdocs-core/src/test/java/org/springframework/restdocs/config/RestDocumentationConfigurerTests.java
@@ -25,6 +25,7 @@ import org.junit.Test;
import org.springframework.restdocs.RestDocumentationContext;
import org.springframework.restdocs.curl.CurlDocumentation;
import org.springframework.restdocs.curl.CurlRequestSnippet;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.http.HttpRequestSnippet;
import org.springframework.restdocs.http.HttpResponseSnippet;
import org.springframework.restdocs.snippet.Snippet;
@@ -67,10 +68,11 @@ public class RestDocumentationConfigurerTests {
instanceOf(StandardWriterResolver.class)));
assertThat(
configuration,
- hasEntry(equalTo("org.springframework.restdocs.defaultSnippets"),
+ hasEntry(
+ equalTo(RestDocumentationGenerator.ATTRIBUTE_NAME_DEFAULT_SNIPPETS),
instanceOf(List.class)));
List defaultSnippets = (List) configuration
- .get("org.springframework.restdocs.defaultSnippets");
+ .get(RestDocumentationGenerator.ATTRIBUTE_NAME_DEFAULT_SNIPPETS);
assertThat(
defaultSnippets,
contains(instanceOf(CurlRequestSnippet.class),
@@ -115,11 +117,12 @@ public class RestDocumentationConfigurerTests {
.apply(configuration, context);
assertThat(
configuration,
- hasEntry(equalTo("org.springframework.restdocs.defaultSnippets"),
+ hasEntry(
+ equalTo(RestDocumentationGenerator.ATTRIBUTE_NAME_DEFAULT_SNIPPETS),
instanceOf(List.class)));
@SuppressWarnings("unchecked")
List defaultSnippets = (List) configuration
- .get("org.springframework.restdocs.defaultSnippets");
+ .get(RestDocumentationGenerator.ATTRIBUTE_NAME_DEFAULT_SNIPPETS);
assertThat(defaultSnippets, contains(instanceOf(CurlRequestSnippet.class)));
}
diff --git a/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetFailureTests.java b/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetFailureTests.java
index 06310faf..c389c280 100644
--- a/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetFailureTests.java
+++ b/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetFailureTests.java
@@ -23,6 +23,7 @@ import java.util.Collections;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.snippet.SnippetException;
import org.springframework.restdocs.templates.TemplateFormats;
import org.springframework.restdocs.test.ExpectedSnippet;
@@ -53,7 +54,8 @@ public class PathParametersSnippetFailureTests {
new PathParametersSnippet(Collections.emptyList())
.document(new OperationBuilder("undocumented-path-parameter",
this.snippet.getOutputDirectory()).attribute(
- "org.springframework.restdocs.urlTemplate", "/{a}/").build());
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, "/{a}/")
+ .build());
}
@Test
@@ -65,7 +67,8 @@ public class PathParametersSnippetFailureTests {
Arrays.asList(parameterWithName("a").description("one")))
.document(new OperationBuilder("missing-path-parameter", this.snippet
.getOutputDirectory()).attribute(
- "org.springframework.restdocs.urlTemplate", "/").build());
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, "/")
+ .build());
}
@Test
@@ -79,7 +82,8 @@ public class PathParametersSnippetFailureTests {
.document(new OperationBuilder(
"undocumented-and-missing-path-parameters", this.snippet
.getOutputDirectory()).attribute(
- "org.springframework.restdocs.urlTemplate", "/{b}").build());
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, "/{b}")
+ .build());
}
}
diff --git a/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetTests.java b/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetTests.java
index 7f989a82..bb17db10 100644
--- a/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetTests.java
+++ b/spring-restdocs-core/src/test/java/org/springframework/restdocs/request/PathParametersSnippetTests.java
@@ -21,6 +21,7 @@ import java.util.Arrays;
import org.junit.Test;
import org.springframework.restdocs.AbstractSnippetTests;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.templates.TemplateEngine;
import org.springframework.restdocs.templates.TemplateFormat;
import org.springframework.restdocs.templates.TemplateResourceResolver;
@@ -51,9 +52,10 @@ public class PathParametersSnippetTests extends AbstractSnippetTests {
"one").row("b", "two"));
new PathParametersSnippet(Arrays.asList(
parameterWithName("a").description("one"), parameterWithName("b")
- .description("two"))).document(operationBuilder("path-parameters")
- .attribute("org.springframework.restdocs.urlTemplate", "/{a}/{b}")
- .build());
+ .description("two")))
+ .document(operationBuilder("path-parameters").attribute(
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ "/{a}/{b}").build());
}
@Test
@@ -64,7 +66,8 @@ public class PathParametersSnippetTests extends AbstractSnippetTests {
new PathParametersSnippet(Arrays.asList(parameterWithName("a").ignored(),
parameterWithName("b").description("two"))).document(operationBuilder(
"ignored-path-parameter").attribute(
- "org.springframework.restdocs.urlTemplate", "/{a}/{b}").build());
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, "/{a}/{b}")
+ .build());
}
@Test
@@ -77,7 +80,8 @@ public class PathParametersSnippetTests extends AbstractSnippetTests {
parameterWithName("a").description("one"), parameterWithName("b")
.description("two"))).document(operationBuilder(
"path-parameters-with-query-string").attribute(
- "org.springframework.restdocs.urlTemplate", "/{a}/{b}?foo=bar").build());
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ "/{a}/{b}?foo=bar").build());
}
@Test
@@ -93,7 +97,8 @@ public class PathParametersSnippetTests extends AbstractSnippetTests {
.description("two").attributes(key("foo").value("bravo"))),
attributes(key("title").value("The title"))).document(operationBuilder(
"path-parameters-with-custom-attributes")
- .attribute("org.springframework.restdocs.urlTemplate", "/{a}/{b}")
+ .attribute(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ "/{a}/{b}")
.attribute(TemplateEngine.class.getName(),
new MustacheTemplateEngine(resolver)).build());
@@ -112,8 +117,11 @@ public class PathParametersSnippetTests extends AbstractSnippetTests {
new PathParametersSnippet(Arrays.asList(parameterWithName("a").description("one")
.attributes(key("foo").value("alpha")), parameterWithName("b")
.description("two").attributes(key("foo").value("bravo"))))
- .document(operationBuilder("path-parameters-with-custom-descriptor-attributes")
- .attribute("org.springframework.restdocs.urlTemplate", "/{a}/{b}")
+ .document(operationBuilder(
+ "path-parameters-with-custom-descriptor-attributes")
+ .attribute(
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ "/{a}/{b}")
.attribute(TemplateEngine.class.getName(),
new MustacheTemplateEngine(resolver)).build());
}
diff --git a/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/MockMvcRestDocumentationConfigurer.java b/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/MockMvcRestDocumentationConfigurer.java
index 7921cab8..e20ecd01 100644
--- a/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/MockMvcRestDocumentationConfigurer.java
+++ b/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/MockMvcRestDocumentationConfigurer.java
@@ -23,6 +23,7 @@ import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.restdocs.RestDocumentation;
import org.springframework.restdocs.RestDocumentationContext;
import org.springframework.restdocs.config.RestDocumentationConfigurer;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.test.web.servlet.request.RequestPostProcessor;
import org.springframework.test.web.servlet.setup.ConfigurableMockMvcBuilder;
import org.springframework.test.web.servlet.setup.MockMvcConfigurer;
@@ -90,11 +91,12 @@ public class MockMvcRestDocumentationConfigurer
RestDocumentationContext context = this.restDocumentation.beforeOperation();
Map configuration = new HashMap<>();
configuration.put(MockHttpServletRequest.class.getName(), request);
- String urlTemplateAttribute = "org.springframework.restdocs.urlTemplate";
- configuration.put(urlTemplateAttribute,
- request.getAttribute(urlTemplateAttribute));
+ configuration
+ .put(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ request.getAttribute(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE));
configuration.put(RestDocumentationContext.class.getName(), context);
- request.setAttribute("org.springframework.restdocs.configuration",
+ request.setAttribute(
+ RestDocumentationResultHandler.ATTRIBUTE_NAME_CONFIGURATION,
configuration);
MockMvcRestDocumentationConfigurer.this.apply(configuration, context);
MockMvcRestDocumentationConfigurer.this.uriConfigurer.apply(configuration,
diff --git a/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuilders.java b/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuilders.java
index 2c9dc452..ffe7220d 100644
--- a/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuilders.java
+++ b/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuilders.java
@@ -19,6 +19,7 @@ package org.springframework.restdocs.mockmvc;
import java.net.URI;
import org.springframework.http.HttpMethod;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.restdocs.request.RequestDocumentation;
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
import org.springframework.test.web.servlet.request.MockMultipartHttpServletRequestBuilder;
@@ -38,8 +39,6 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
*/
public abstract class RestDocumentationRequestBuilders {
- private static final String ATTRIBUTE_NAME_URL_TEMPLATE = "org.springframework.restdocs.urlTemplate";
-
private RestDocumentationRequestBuilders() {
}
@@ -55,7 +54,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder get(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.get(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -79,7 +78,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder post(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.post(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -103,7 +102,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder put(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.put(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -127,7 +126,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder patch(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.patch(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -151,7 +150,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder delete(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.delete(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -175,7 +174,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder options(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.options(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -199,7 +198,7 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder head(String urlTemplate,
Object... urlVariables) {
return MockMvcRequestBuilders.head(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
}
/**
@@ -224,7 +223,8 @@ public abstract class RestDocumentationRequestBuilders {
public static MockHttpServletRequestBuilder request(HttpMethod httpMethod,
String urlTemplate, Object... urlVariables) {
return MockMvcRequestBuilders.request(httpMethod, urlTemplate, urlVariables)
- .requestAttr(ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ .requestAttr(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ urlTemplate);
}
/**
@@ -250,7 +250,8 @@ public abstract class RestDocumentationRequestBuilders {
Object... urlVariables) {
return (MockMultipartHttpServletRequestBuilder) MockMvcRequestBuilders
.fileUpload(urlTemplate, urlVariables).requestAttr(
- ATTRIBUTE_NAME_URL_TEMPLATE, urlTemplate);
+ RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE,
+ urlTemplate);
}
/**
diff --git a/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationResultHandler.java b/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationResultHandler.java
index d536da13..ac43bdd6 100644
--- a/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationResultHandler.java
+++ b/spring-restdocs-mockmvc/src/main/java/org/springframework/restdocs/mockmvc/RestDocumentationResultHandler.java
@@ -35,6 +35,8 @@ import org.springframework.util.Assert;
*/
public class RestDocumentationResultHandler implements ResultHandler {
+ static final String ATTRIBUTE_NAME_CONFIGURATION = "org.springframework.restdocs.configuration";
+
private final RestDocumentationGenerator delegate;
RestDocumentationResultHandler(
@@ -47,7 +49,7 @@ public class RestDocumentationResultHandler implements ResultHandler {
public void handle(MvcResult result) throws Exception {
@SuppressWarnings("unchecked")
Map configuration = (Map) result.getRequest()
- .getAttribute("org.springframework.restdocs.configuration");
+ .getAttribute(ATTRIBUTE_NAME_CONFIGURATION);
this.delegate.handle(result.getRequest(), result.getResponse(), configuration);
}
diff --git a/spring-restdocs-mockmvc/src/test/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuildersTests.java b/spring-restdocs-mockmvc/src/test/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuildersTests.java
index a5bd3159..06968789 100644
--- a/spring-restdocs-mockmvc/src/test/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuildersTests.java
+++ b/spring-restdocs-mockmvc/src/test/java/org/springframework/restdocs/mockmvc/RestDocumentationRequestBuildersTests.java
@@ -24,6 +24,7 @@ import org.junit.Test;
import org.springframework.http.HttpMethod;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockServletContext;
+import org.springframework.restdocs.generate.RestDocumentationGenerator;
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
import static org.hamcrest.CoreMatchers.equalTo;
@@ -143,7 +144,8 @@ public class RestDocumentationRequestBuildersTests {
HttpMethod httpMethod) {
MockHttpServletRequest request = builder.buildRequest(this.servletContext);
assertThat(
- (String) request.getAttribute("org.springframework.restdocs.urlTemplate"),
+ (String) request
+ .getAttribute(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE),
is(equalTo("{template}")));
assertThat(request.getRequestURI(), is(equalTo("t")));
assertThat(request.getMethod(), is(equalTo(httpMethod.name())));
diff --git a/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestAssuredRestDocumentationConfigurer.java b/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestAssuredRestDocumentationConfigurer.java
index 25afe0ec..4702a752 100644
--- a/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestAssuredRestDocumentationConfigurer.java
+++ b/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestAssuredRestDocumentationConfigurer.java
@@ -59,7 +59,7 @@ public final class RestAssuredRestDocumentationConfigurer
RestDocumentationContext context = this.restDocumentation.beforeOperation();
filterContext.setValue(RestDocumentationContext.class.getName(), context);
Map configuration = new HashMap<>();
- filterContext.setValue("org.springframework.restdocs.configuration",
+ filterContext.setValue(RestDocumentationFilter.CONTEXT_KEY_CONFIGURATION,
configuration);
apply(configuration, context);
return filterContext.next(requestSpec, responseSpec);
diff --git a/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestDocumentationFilter.java b/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestDocumentationFilter.java
index 29a0b257..fdb3b068 100644
--- a/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestDocumentationFilter.java
+++ b/spring-restdocs-restassured/src/main/java/org/springframework/restdocs/restassured/RestDocumentationFilter.java
@@ -37,6 +37,8 @@ import com.jayway.restassured.specification.FilterableResponseSpecification;
*/
public final class RestDocumentationFilter implements Filter {
+ static final String CONTEXT_KEY_CONFIGURATION = "org.springframework.restdocs.configuration";
+
private final RestDocumentationGenerator delegate;
RestDocumentationFilter(
@@ -51,11 +53,11 @@ public final class RestDocumentationFilter implements Filter {
Response response = context.next(requestSpec, responseSpec);
Map configuration = new HashMap<>(
- context.