Remove java.util.Optional from View contract

This commit is contained in:
Rossen Stoyanchev
2016-05-26 16:00:08 -04:00
parent 4d04bd5690
commit bc782902d7
5 changed files with 8 additions and 10 deletions

View File

@@ -114,15 +114,15 @@ public abstract class AbstractView implements View, ApplicationContextAware {
* @return
*/
@Override
public Flux<DataBuffer> render(HandlerResult result, Optional<MediaType> contentType,
public Flux<DataBuffer> render(HandlerResult result, MediaType contentType,
ServerWebExchange exchange) {
if (logger.isTraceEnabled()) {
logger.trace("Rendering view with model " + result.getModel());
}
if (contentType.isPresent()) {
exchange.getResponse().getHeaders().setContentType(contentType.get());
if (contentType != null) {
exchange.getResponse().getHeaders().setContentType(contentType);
}
Map<String, Object> mergedModel = getModelAttributes(result, exchange);

View File

@@ -55,6 +55,6 @@ public interface View {
* @param exchange the current exchange
* @return the output stream
*/
Flux<DataBuffer> render(HandlerResult result, Optional<MediaType> contentType, ServerWebExchange exchange);
Flux<DataBuffer> render(HandlerResult result, MediaType contentType, ServerWebExchange exchange);
}

View File

@@ -121,7 +121,7 @@ public class ViewResolverResultHandler implements HandlerResultHandler, Ordered
return returnValueMono.then(returnValue -> {
if (returnValue instanceof View) {
Flux<DataBuffer> body = ((View) returnValue).render(result, Optional.empty(), exchange);
Flux<DataBuffer> body = ((View) returnValue).render(result, null, exchange);
return exchange.getResponse().setBody(body);
}
else if (returnValue instanceof CharSequence) {
@@ -131,7 +131,7 @@ public class ViewResolverResultHandler implements HandlerResultHandler, Ordered
.concatMap(resolver -> resolver.resolveViewName(viewName, locale))
.next()
.then(view -> {
Flux<DataBuffer> body = view.render(result, Optional.empty(), exchange);
Flux<DataBuffer> body = view.render(result, null, exchange);
return exchange.getResponse().setBody(body);
});
}

View File

@@ -277,9 +277,7 @@ public class ViewResolverResultHandlerTests {
}
@Override
public Flux<DataBuffer> render(HandlerResult result, Optional<MediaType> contentType,
ServerWebExchange exchange) {
public Flux<DataBuffer> render(HandlerResult result, MediaType mediaType, ServerWebExchange exchange) {
String value = this.name + ": " + result.getModel().toString();
assertNotNull(value);
return Flux.just(asDataBuffer(value));

View File

@@ -127,7 +127,7 @@ public class FreeMarkerViewTests {
ModelMap model = new ExtendedModelMap();
model.addAttribute("hello", "hi FreeMarker");
HandlerResult result = new HandlerResult(new Object(), "", ResolvableType.NONE, model);
Flux<DataBuffer> flux = view.render(result, Optional.empty(), this.exchange);
Flux<DataBuffer> flux = view.render(result, null, this.exchange);
TestSubscriber<DataBuffer> subscriber = new TestSubscriber<>();
subscriber.bindTo(flux).assertValuesWith(dataBuffer ->