From bea26413b4a237cc6fff1bae24ffdba7d10200f9 Mon Sep 17 00:00:00 2001 From: Sam Brannen Date: Mon, 7 Mar 2016 18:10:21 +0100 Subject: [PATCH] Support 'produces' attribute in @[Post|Put|Patch]Mapping Issue: SPR-13992 --- .../web/bind/annotation/PatchMapping.java | 9 ++++++--- .../springframework/web/bind/annotation/PostMapping.java | 9 ++++++--- .../springframework/web/bind/annotation/PutMapping.java | 9 ++++++--- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/web/bind/annotation/PatchMapping.java b/spring-web/src/main/java/org/springframework/web/bind/annotation/PatchMapping.java index 7f371340de..d067ddf8e0 100644 --- a/spring-web/src/main/java/org/springframework/web/bind/annotation/PatchMapping.java +++ b/spring-web/src/main/java/org/springframework/web/bind/annotation/PatchMapping.java @@ -32,9 +32,6 @@ import static org.springframework.web.bind.annotation.RequestMethod.PATCH; * *

Specifically, {@code @PatchMapping} is a composed annotation that * acts as a shortcut for {@code @RequestMapping(method = RequestMethod.PATCH)}. - * Furthermore, this annotation does not support the - * {@link RequestMapping#method method} and {@link RequestMapping#produces produces} - * attributes of {@code @RequestMapping}. * * @author Sam Brannen * @since 4.3 @@ -86,4 +83,10 @@ public @interface PatchMapping { @AliasFor(annotation = RequestMapping.class) String[] consumes() default {}; + /** + * Alias for {@link RequestMapping#produces}. + */ + @AliasFor(annotation = RequestMapping.class) + String[] produces() default {}; + } diff --git a/spring-web/src/main/java/org/springframework/web/bind/annotation/PostMapping.java b/spring-web/src/main/java/org/springframework/web/bind/annotation/PostMapping.java index c15fdf2ff4..a1ca1c3932 100644 --- a/spring-web/src/main/java/org/springframework/web/bind/annotation/PostMapping.java +++ b/spring-web/src/main/java/org/springframework/web/bind/annotation/PostMapping.java @@ -32,9 +32,6 @@ import static org.springframework.web.bind.annotation.RequestMethod.POST; * *

Specifically, {@code @PostMapping} is a composed annotation that * acts as a shortcut for {@code @RequestMapping(method = RequestMethod.POST)}. - * Furthermore, this annotation does not support the - * {@link RequestMapping#method method} and {@link RequestMapping#produces produces} - * attributes of {@code @RequestMapping}. * * @author Sam Brannen * @since 4.3 @@ -86,4 +83,10 @@ public @interface PostMapping { @AliasFor(annotation = RequestMapping.class) String[] consumes() default {}; + /** + * Alias for {@link RequestMapping#produces}. + */ + @AliasFor(annotation = RequestMapping.class) + String[] produces() default {}; + } diff --git a/spring-web/src/main/java/org/springframework/web/bind/annotation/PutMapping.java b/spring-web/src/main/java/org/springframework/web/bind/annotation/PutMapping.java index eaec190a53..ce5241ff13 100644 --- a/spring-web/src/main/java/org/springframework/web/bind/annotation/PutMapping.java +++ b/spring-web/src/main/java/org/springframework/web/bind/annotation/PutMapping.java @@ -32,9 +32,6 @@ import static org.springframework.web.bind.annotation.RequestMethod.PUT; * *

Specifically, {@code @PutMapping} is a composed annotation that * acts as a shortcut for {@code @RequestMapping(method = RequestMethod.PUT)}. - * Furthermore, this annotation does not support the - * {@link RequestMapping#method method} and {@link RequestMapping#produces produces} - * attributes of {@code @RequestMapping}. * * @author Sam Brannen * @since 4.3 @@ -86,4 +83,10 @@ public @interface PutMapping { @AliasFor(annotation = RequestMapping.class) String[] consumes() default {}; + /** + * Alias for {@link RequestMapping#produces}. + */ + @AliasFor(annotation = RequestMapping.class) + String[] produces() default {}; + } -- GitLab