|
31 | 31 | import io.micronaut.http.MediaType;
|
32 | 32 | import io.micronaut.http.codec.MediaTypeCodec;
|
33 | 33 | import io.micronaut.http.codec.MediaTypeCodecRegistry;
|
| 34 | +import io.micronaut.http.cookie.Cookie; |
| 35 | +import io.micronaut.http.cookie.Cookies; |
34 | 36 | import io.micronaut.http.netty.NettyHttpHeaders;
|
35 | 37 | import io.micronaut.http.netty.NettyHttpResponseBuilder;
|
| 38 | +import io.micronaut.http.netty.cookies.NettyCookies; |
36 | 39 | import io.netty.buffer.ByteBuf;
|
37 | 40 | import io.netty.buffer.ByteBufAllocator;
|
38 | 41 | import io.netty.buffer.ByteBufUtil;
|
@@ -60,6 +63,7 @@ public class FullNettyClientHttpResponse<B> implements HttpResponse<B>, Completa
|
60 | 63 |
|
61 | 64 | private final HttpStatus status;
|
62 | 65 | private final NettyHttpHeaders headers;
|
| 66 | + private final NettyCookies nettyCookies; |
63 | 67 | private final MutableConvertibleValues<Object> attributes;
|
64 | 68 | private final FullHttpResponse nettyHttpResponse;
|
65 | 69 | private final Map<Argument, Optional> convertedBodies = new HashMap<>();
|
@@ -91,6 +95,7 @@ public class FullNettyClientHttpResponse<B> implements HttpResponse<B>, Completa
|
91 | 95 | this.nettyHttpResponse = fullHttpResponse;
|
92 | 96 | this.mediaTypeCodecRegistry = mediaTypeCodecRegistry;
|
93 | 97 | this.byteBufferFactory = byteBufferFactory;
|
| 98 | + this.nettyCookies = new NettyCookies(fullHttpResponse.headers(), ConversionService.SHARED); |
94 | 99 | Class<?> rawBodyType = bodyType != null ? bodyType.getType() : null;
|
95 | 100 | if (rawBodyType != null && !HttpStatus.class.isAssignableFrom(rawBodyType)) {
|
96 | 101 | if (HttpResponse.class.isAssignableFrom(bodyType.getType())) {
|
@@ -124,6 +129,16 @@ public HttpHeaders getHeaders() {
|
124 | 129 | return headers;
|
125 | 130 | }
|
126 | 131 |
|
| 132 | + @Override |
| 133 | + public Cookies getCookies() { |
| 134 | + return nettyCookies; |
| 135 | + } |
| 136 | + |
| 137 | + @Override |
| 138 | + public Optional<Cookie> getCookie(String name) { |
| 139 | + return nettyCookies.findCookie(name); |
| 140 | + } |
| 141 | + |
127 | 142 | @Override
|
128 | 143 | public MutableConvertibleValues<Object> getAttributes() {
|
129 | 144 | return attributes;
|
|
0 commit comments